Kaim::NavMeshElement Class Reference

Kaim::NavMeshElement Class Reference

#include <navmeshelement.h>

Class Description

This class is a runtime wrapper of a NavMeshElementBlob.

It is used to store runtime data associated to this NavMeshElementBlob and to gathers all the corresponding NavCells.

It is also used as a safe guard against the removal of the underlying NavMeshElementBlob to prevent us from accessing free memory and crashing.

Public Member Functions

const GuidCompound & GetGuidCompound () const
 
bool IsStillLoaded () const
 

Private Attributes

const NavMeshElementBlobm_navMeshElementBlob
 

For internal use only

Databasem_database
 
NavCell ** m_navCells
 
KyUInt32 m_numberOfCells
 
KyUInt32 m_indexInCollection
 
KyUInt32 m_guidCompoundSortedIdx
 
bool m_guidCompoundIsCompatible
 
void OnRemove ()
 
KyUInt32 GetIndexInCollection () const
 
void SetIndexInCollection (KyUInt32 indexInCollection)
 
static Ptr< NavMeshElementCreate (const NavMeshElementBlob &navMeshElementBlob, Database *database, MemoryHeap *pheap=0)
 

Member Function Documentation

const GuidCompound & Kaim::NavMeshElement::GetGuidCompound ( ) const
inline

Retrieves the GuidCompound that uniquely identifies this NavMeshElement.

bool Kaim::NavMeshElement::IsStillLoaded ( ) const
inline

This function returns false if the NavData containing corresponding NavMeshElementBlob has been removed from the Database.

Member Data Documentation

Database* Kaim::NavMeshElement::m_database

The Database in which the parentNavData has been added to. Do not modify.

KyUInt32 Kaim::NavMeshElement::m_indexInCollection
NavCell** Kaim::NavMeshElement::m_navCells

The array of NavCells that make up this NavMeshElement. Do not modify.

const NavMeshElementBlob* Kaim::NavMeshElement::m_navMeshElementBlob
private

The NavMeshElementBlob that contains the static data for this NavMesh. Do not modify.

KyUInt32 Kaim::NavMeshElement::m_numberOfCells

The number of NavCells in m_navCells. Do not modify.


The documentation for this class was generated from the following file: