![]() |
AzerothCore 3.3.5a
OpenSource WoW Emulator
|
#include "MapGrid.h"
Public Types | |
typedef GridCell< WORLD_OBJECT_TYPES, GRID_OBJECT_TYPES > | GridCellType |
Public Member Functions | |
MapGrid (uint16 const x, uint16 const y) | |
uint32 | GetId () const |
uint16 | GetX () const |
uint16 | GetY () const |
bool | IsObjectDataLoaded () const |
void | SetObjectDataLoaded () |
template<class SPECIFIC_OBJECT > | |
void | AddWorldObject (uint16 const x, uint16 const y, SPECIFIC_OBJECT *obj) |
template<class SPECIFIC_OBJECT > | |
void | RemoveWorldObject (uint16 const x, uint16 const y, SPECIFIC_OBJECT *obj) |
template<class SPECIFIC_OBJECT > | |
void | AddGridObject (uint16 const x, uint16 const y, SPECIFIC_OBJECT *obj) |
template<class SPECIFIC_OBJECT > | |
void | RemoveGridObject (uint16 const x, uint16 const y, SPECIFIC_OBJECT *obj) |
template<class T , class TT > | |
void | VisitAllCells (TypeContainerVisitor< T, TypeMapContainer< TT > > &visitor) |
template<class T , class TT > | |
void | VisitCell (uint16 const x, uint16 const y, TypeContainerVisitor< T, TypeMapContainer< TT > > &visitor) |
void | link (GridRefMgr< MapGrid< WORLD_OBJECT_TYPES, GRID_OBJECT_TYPES > > *pTo) |
GridTerrainData * | GetTerrainData () const |
std::shared_ptr< GridTerrainData > | GetTerrainDataSharedPtr () |
void | SetTerrainData (std::shared_ptr< GridTerrainData > terrainData) |
uint32 | GetCreatedCellsCount () |
Private Member Functions | |
GridCellType & | GetOrCreateCell (uint16 const x, uint16 const y) |
GridCellType * | GetCell (uint16 const x, uint16 const y) |
GridCellType const * | GetCell (uint16 const x, uint16 const y) const |
Private Attributes | |
uint16 | _x |
uint16 | _y |
bool | _objectDataLoaded |
std::array< std::array< std::unique_ptr< GridCellType >, MAX_NUMBER_OF_CELLS >, MAX_NUMBER_OF_CELLS > | _cells |
GridReference< MapGrid< WORLD_OBJECT_TYPES, GRID_OBJECT_TYPES > > | _gridReference |
std::shared_ptr< GridTerrainData > | _terrainData |
typedef GridCell<WORLD_OBJECT_TYPES, GRID_OBJECT_TYPES> MapGrid< WORLD_OBJECT_TYPES, GRID_OBJECT_TYPES >::GridCellType |
|
inline |
|
inline |
References GridCell< WORLD_OBJECT_TYPES, GRID_OBJECT_TYPES >::AddGridObject(), and MapGrid< WORLD_OBJECT_TYPES, GRID_OBJECT_TYPES >::GetOrCreateCell().
Referenced by Map::AddToGrid(), Map::AddToGrid(), Map::AddToGrid(), Map::AddToGrid(), Map::AddToGrid(), GridObjectLoader::LoadAllCellsInGrid(), Map::SwitchGridContainers(), and Map::SwitchGridContainers().
|
inline |
References GridCell< WORLD_OBJECT_TYPES, GRID_OBJECT_TYPES >::AddWorldObject(), and MapGrid< WORLD_OBJECT_TYPES, GRID_OBJECT_TYPES >::GetOrCreateCell().
Referenced by Map::AddToGrid(), Map::AddToGrid(), Map::AddToGrid(), Map::AddToGrid(), GridObjectLoader::LoadAllCellsInGrid(), Map::SwitchGridContainers(), and Map::SwitchGridContainers().
|
inlineprivate |
References MapGrid< WORLD_OBJECT_TYPES, GRID_OBJECT_TYPES >::_cells, ASSERT, and MAX_NUMBER_OF_CELLS.
Referenced by MapGrid< WORLD_OBJECT_TYPES, GRID_OBJECT_TYPES >::GetOrCreateCell(), and MapGrid< WORLD_OBJECT_TYPES, GRID_OBJECT_TYPES >::VisitCell().
|
inlineprivate |
References MapGrid< WORLD_OBJECT_TYPES, GRID_OBJECT_TYPES >::_cells, ASSERT, and MAX_NUMBER_OF_CELLS.
|
inline |
References MapGrid< WORLD_OBJECT_TYPES, GRID_OBJECT_TYPES >::_cells.
Referenced by MapGridManager::GetCreatedCellsInGridCount().
|
inline |
|
inlineprivate |
References MapGrid< WORLD_OBJECT_TYPES, GRID_OBJECT_TYPES >::_cells, and MapGrid< WORLD_OBJECT_TYPES, GRID_OBJECT_TYPES >::GetCell().
Referenced by MapGrid< WORLD_OBJECT_TYPES, GRID_OBJECT_TYPES >::AddGridObject(), MapGrid< WORLD_OBJECT_TYPES, GRID_OBJECT_TYPES >::AddWorldObject(), MapGrid< WORLD_OBJECT_TYPES, GRID_OBJECT_TYPES >::RemoveGridObject(), and MapGrid< WORLD_OBJECT_TYPES, GRID_OBJECT_TYPES >::RemoveWorldObject().
|
inline |
References MapGrid< WORLD_OBJECT_TYPES, GRID_OBJECT_TYPES >::_terrainData.
Referenced by Map::GetGridTerrainData(), and GridTerrainLoader::LoadMap().
|
inline |
References MapGrid< WORLD_OBJECT_TYPES, GRID_OBJECT_TYPES >::_terrainData.
Referenced by Map::GetGridTerrainDataSharedPtr().
|
inline |
|
inline |
|
inline |
References MapGrid< WORLD_OBJECT_TYPES, GRID_OBJECT_TYPES >::_objectDataLoaded.
Referenced by Map::AddToGrid(), and MapGridManager::LoadGrid().
|
inline |
References MapGrid< WORLD_OBJECT_TYPES, GRID_OBJECT_TYPES >::_gridReference, and Reference< TO, FROM >::link().
|
inline |
|
inline |
|
inline |
References MapGrid< WORLD_OBJECT_TYPES, GRID_OBJECT_TYPES >::_objectDataLoaded.
Referenced by MapGridManager::LoadGrid().
|
inline |
References MapGrid< WORLD_OBJECT_TYPES, GRID_OBJECT_TYPES >::_terrainData.
Referenced by GridTerrainLoader::LoadMap().
|
inline |
References MapGrid< WORLD_OBJECT_TYPES, GRID_OBJECT_TYPES >::_cells.
Referenced by MapGridManager::UnloadGrid().
|
inline |
References MapGrid< WORLD_OBJECT_TYPES, GRID_OBJECT_TYPES >::GetCell(), and GridCell< WORLD_OBJECT_TYPES, GRID_OBJECT_TYPES >::Visit().
Referenced by Map::Visit().
|
private |
Referenced by MapGrid< WORLD_OBJECT_TYPES, GRID_OBJECT_TYPES >::GetCell(), MapGrid< WORLD_OBJECT_TYPES, GRID_OBJECT_TYPES >::GetCell(), MapGrid< WORLD_OBJECT_TYPES, GRID_OBJECT_TYPES >::GetCreatedCellsCount(), MapGrid< WORLD_OBJECT_TYPES, GRID_OBJECT_TYPES >::GetOrCreateCell(), and MapGrid< WORLD_OBJECT_TYPES, GRID_OBJECT_TYPES >::VisitAllCells().
|
private |
Referenced by MapGrid< WORLD_OBJECT_TYPES, GRID_OBJECT_TYPES >::link().
|
private |
|
private |