10 #ifndef Navigation_NavCell_H
11 #define Navigation_NavCell_H
20 class ActiveNavFloorCollection;
24 class DynamicNavMeshQuery;
25 class StaticToDynamicHalfEdge;
69 KyUInt32 GetIndexInCollection()
const;
70 void SetIndexInCollection(
KyUInt32 indexInCollection);
73 void RestoreStaticNavFloorAsActive(
NavFloorIdx floorIdx);
77 ActivenessStatus GetActivenessStatus()
const;
78 ActivenessStatus GetNextActivenessStatus()
const;
79 void SetActivenessStatus(ActivenessStatus status);
80 void SetNextActivenessStatus(ActivenessStatus status);
87 Ptr<NavFloor> m_staticNavFloor;
88 Ptr<NavFloor> m_activeNavFloor;
89 Ptr<BaseBlobHandler> m_blobHandlerOfDynamicNavFloor;
90 NavFloor1To1StitchData m_floor1To1StitchData;
93 const NavFloorBlob* GetFutureActiveNavFloorBlob(
KyUInt32 floorIdx);
98 MetaNavFloor* m_metaNavFloorBuffer;
100 Ptr<DynamicNavMeshQuery> m_dynamicNavMeshQuery;
109 bool m_mustLaunchRuntimStitchQuery;
118 KY_INLINE
NavFloor* NavCell::GetStaticNavFloorVersion(
NavFloorIdx floorIdx)
const {
return m_metaNavFloorBuffer[floorIdx].m_staticNavFloor; }
127 KY_INLINE NavCell::ActivenessStatus NavCell::GetNextActivenessStatus()
const {
return (ActivenessStatus)
m_nextActivenessStatus; }
133 #endif //Navigation_NavCell_H
const GuidCompound & GetGuidCompound() const
Retrieves the GuidCompound that identifies the NavMeshElement that contains this NavCell.
Definition: navcell.h:122
NavFloor * GetNavFloor(NavFloorIdx floorIdx) const
Retrieves the NavFloor with the specified index.
Definition: navcell.h:126
This class is a runtime wrapper of a NavMeshElementBlob.
Definition: navmeshelement.h:24
This class is a runtime wrapper of a NavFloorBlob, it gathers all the runtime information associated ...
Definition: navfloor.h:40
KyUInt8 m_currentActivenessStatus
Current ActivenessStatus. Do not modify.
Definition: navcell.h:115
The NavCellBlob contains the NavMesh static data of a NavMeshElement at a CellPos.
Definition: navcellblob.h:22
KyUInt8 m_nextActivenessStatus
this is a temporary ActivenessStatus value used by the NavCellGrid when updating the database...
Definition: navcell.h:116
NavMeshElement * GetParentNavMeshElement() const
Retrieves a pointer to the NavMeshElement that contains this NavCell.
Definition: navcell.h:123
The BlobHandler class is a top-level mechanism for serializing blobs between objects in memory and fi...
Definition: blobhandler.h:45
#define KY_CLASS_WITHOUT_COPY(ClassName)
Define to forbid copy constructor and copy assignment.
Definition: types.h:387
const NavCellBlob * m_navCellBlob
The NavCellBlob that contains the static data for this NavCell. Do not modify.
Definition: navcell.h:105
This class is a runtime wrapper of a NavCellBlob.
Definition: navcell.h:33
A BlobRef is a type of reference that is compatible with the blob serialization framework.
Definition: blobref.h:58
This class is a runtime container for all NavData that represents the world from the point of view of...
Definition: database.h:64
KyUInt32 NavFloorIdx
An index that uniquely identifies a single NavFloor within the set of NavFloors owned by a NavCell...
Definition: navmeshtypes.h:115
unsigned char KyUInt8
Type used internally to represent an unsigned 8-bit integer.
Definition: types.h:41
const CellPos & GetCellPos() const
Retrieves the position of this NavCell within the grid of NavData cells.
Definition: navcell.h:124
This class defines a two-dimensional vector whose coordinates are stored using 32-bit integers...
Definition: vec2i.h:26
Definition: gamekitcrowddispersion.h:20
#define KY_DEFINE_NEW_DELETE_OPERATORS(MemStat)
This macro defines new and delete operators.
Definition: memory.h:137
unsigned short KyUInt16
Type used internally to represent an unsigned 16-bit integer.
Definition: types.h:40
NavMeshElement * m_parentNavMeshElement
The NavMeshElement that contains this NavCell. Do not modify.
Definition: navcell.h:104
bool IsNavCellActive() const
Indicates whether or not this NavCell has been considered active by the NavCellGrid in term of overla...
Definition: navcell.h:130
KyUInt16 m_idxOfNavCellVersionCollection
the idx of this NavCell in the SmallPtrTrackedCollection located at this CellPos in the NavCellGrid...
Definition: navcell.h:112
const GuidCompound & GetGuidCompound() const
Retrieves the GuidCompound that uniquely identifies this NavMeshElement.
Definition: navmeshelement.h:77
bool m_navFloorsAreStitched
Indicates whether or not the NavFloors in this NavCell have been stitched into a Database. For Internal Use. Do not modify.
Definition: navcell.h:117
KyUInt16 m_numberOfFloors
The total number of NavFloors in #m_activeNavFloors. never change. Do not modify. ...
Definition: navcell.h:113
unsigned int KyUInt32
Type used internally to represent an unsigned 32-bit integer.
Definition: types.h:36
bool IsNavCellBlobEmpty() const
Returns true if the NavCellBlob contains no NavFloors and triangles.
Definition: navcell.h:129
KyUInt32 m_navCellIdxInNavMesh
The index of the NavCell within the buffer of NavCell in its NavMeshElement. Equal to the index of Na...
Definition: navcell.h:111
const CellPos & GetCellPos() const
Retrieves the position of this NavCellBlob within the partitioning scheme of its NavMeshElementBlob.
Definition: navcellblob.h:58
KyUInt32 GetNavFloorCount() const
Retrieves the number of NavFloors in this NavCell.
Definition: navcell.h:125
KyUInt16 m_numberOfActiveDynamicFloors
The number of dynamicNavFloors in the #m_activeNavFloors buffer. Do not modify.
Definition: navcell.h:114