gwnavruntime/world/visualdebugregistry.h Source File
Go to the documentation of this file.
8 #ifndef Navigation_VisualDebugRegistry_H
9 #define Navigation_VisualDebugRegistry_H
22 class VisualDebugServer;
24 typedef Hash<KyUInt32, WorldElement*, FixedSizeHash<KyUInt32>, AllocatorGH<KyUInt32, MemStat_VisualDebugRegistry> > WorldElementHash;
28 class VisualDebugRegistry
34 VisualDebugRegistry(World* world) : m_world(world), m_nextVisualDebugId(0) {}
36 ~VisualDebugRegistry();
38 void Register(WorldElement* worldElement);
40 void UnRegister(WorldElement* worldElement);
44 WorldElement* Get(
KyUInt32 visualDebugId);
54 void SendVisualDebug(VisualDebugServer& visualDebugServer);
61 WorldElementHash m_hash;
65 #ifndef KY_BUILD_SHIPPING
68 KY_INLINE T* VisualDebugRegistry::GetAs(
KyUInt32 visualDebugId) {
return (T*)GetAs(visualDebugId, T::GetStaticType()); }
70 #else // VisualDebug disabled in shipping
72 KY_INLINE VisualDebugRegistry::~VisualDebugRegistry() {}
73 KY_INLINE
void VisualDebugRegistry::Register(WorldElement*) {}
74 KY_INLINE
void VisualDebugRegistry::UnRegister(WorldElement*) {}
76 KY_INLINE WorldElement* VisualDebugRegistry::Get(
KyUInt32) {
return KY_NULL; }
80 KY_INLINE
void VisualDebugRegistry::SendVisualDebug(VisualDebugServer&) {}
81 KY_INLINE
void VisualDebugRegistry::OnConnection() {}
#define KY_NULL
Null value.
Definition: types.h:247
#define KY_CLASS_WITHOUT_COPY(ClassName)
Define to forbid copy constructor and copy assignment.
Definition: types.h:387
WorldElementType
Enumerates the WorldElement types.
Definition: worldelementtype.h:15
Definition: gamekitcrowddispersion.h:20
#define KY_DEFINE_NEW_DELETE_OPERATORS(MemStat)
This macro defines new and delete operators.
Definition: memory.h:137
unsigned int KyUInt32
Type used internally to represent an unsigned 32-bit integer.
Definition: types.h:36
#define KyUInt32MAXVAL
The maximum value that can be stored in the KyUInt32 variable type.
Definition: types.h:226