18#ifndef TRINITY_NGRID_H
19#define TRINITY_NGRID_H
29#define DEFAULT_VISIBILITY_NOTIFY_PERIOD 1000
35 GridInfo(time_t expiry,
bool unload =
true);
37 bool getUnloadLock()
const {
return i_unloadActiveLockCount || i_unloadExplicitLock; }
67class WORLD_OBJECT_CONTAINER,
68class GRID_OBJECT_CONTAINER
136 template<
class VISITOR>
139 for (
uint32 x = 0; x < N; ++x)
140 for (
uint32 y = 0; y < N; ++y)
144 template<
class VISITOR>
147 for (
uint32 x = 0; x < N; ++x)
148 for (
uint32 y = 0; y < N; ++y)
153 template<
class VISITOR>
159 template<
class VISITOR>
182 for (
uint32 x = 0; x < N; ++x)
183 for (
uint32 y = 0; y < N; ++y)
184 count +=
i_cells[x][y].
template GetWorldObjectCountInGrid<T>();
bool i_unloadExplicitLock
void decUnloadActiveLock()
TimeTracker const & getTimeTracker() const
PeriodicTimer & getRelocationTimer()
uint16 i_unloadActiveLockCount
void setTimer(TimeTracker const &pTimer)
void setUnloadExplicitLock(bool on)
bool getUnloadLock() const
void ResetTimeTracker(time_t interval)
void UpdateTimeTracker(time_t diff)
void incUnloadActiveLock()
void Visit(TypeContainerVisitor< T, GRID_OBJECT_CONTAINER > &visitor)
GridReference< NGrid > i_Reference
void decUnloadActiveLock()
GridType & GetGridType(const uint32 x, const uint32 y)
grid_state_t GetGridState(void) const
GridType const & GetGridType(const uint32 x, const uint32 y) const
void VisitGrid(uint32 x, uint32 y, TypeContainerVisitor< VISITOR, WORLD_OBJECT_CONTAINER > &visitor)
void ResetTimeTracker(time_t interval)
void VisitAllGrids(TypeContainerVisitor< VISITOR, GRID_OBJECT_CONTAINER > &visitor)
Grid< ACTIVE_OBJECT, WORLD_OBJECT_CONTAINER, GRID_OBJECT_CONTAINER > GridType
void SetGridState(grid_state_t s)
bool isGridObjectDataLoaded() const
NGrid(uint32 id, int32 x, int32 y, time_t expiry, bool unload=true)
void VisitAllGrids(TypeContainerVisitor< VISITOR, WORLD_OBJECT_CONTAINER > &visitor)
TimeTracker const & getTimeTracker() const
void setGridObjectDataLoaded(bool pLoaded)
void link(GridRefManager< NGrid > *pTo)
void setUnloadExplicitLock(bool on)
void VisitGrid(uint32 x, uint32 y, TypeContainerVisitor< VISITOR, GRID_OBJECT_CONTAINER > &visitor)
GridInfo * getGridInfoRef()
uint32 GetWorldObjectCountInNGrid() const
void incUnloadActiveLock()
bool i_GridObjectDataLoaded
uint32 GetGridId(void) const
void UpdateTimeTracker(time_t diff)
bool getUnloadLock() const
void link(TO *toObj, FROM *fromObj)