Kaim::NavMeshElementManager Class Reference

Kaim::NavMeshElementManager Class Reference

#include <navmeshelementmanager.h>

Class Description

This class is a runtime container for the all NavMeshElement that are created from the NavMeshElementBlob added in this Database.

It is responsible for creating these NavMeshElement, for sorting the NavMeshElement according to their GuidCompound to speed up the NavFloor stitching performed by the NavCellGrid. You should not need to access this class except if you need to browse all theNavMeshElement within a Database.

Public Member Functions

KyUInt32 GetNavMeshElementCount () const
 Indicates the number of NavMeshes that have been added to the NavMeshElementManager. More...
 
NavMeshElementGetNavMeshElement (KyUInt32 idx) const
 Retrieves the NavMesh with the specified index from within the list of NavMeshes in the NavMeshElementManager. More...
 
KyResult CheckGenerationParameters (const NavMeshGenParameters &navMeshGenParameters)
 Called internally before adding a NavMeshElement to the NavMeshElementManager. More...
 
bool IsCompatibleWith (const NavMeshGenParameters &navMeshGenParameters) const
 Indicates whether the specified NavMeshElement was created with the same generation parameters as the NavMeshes that have already been loaded into this NavMeshElementManager. More...
 

For internal use only

Databasem_database
 
ActiveGuids m_activatedGuids
 
GuidCompoundUpdater m_guidCompoundUpdater
 
 NavMeshElementManager (Database *database)
 
 ~NavMeshElementManager ()
 
void SetNavGraphManager (NavGraphManager *navGraphManager)
 
void Clear ()
 
NavMeshElementInsertNavMeshElement (const NavMeshElementBlob *navMeshElementBlob)
 
void PrepareNavMeshRemoval (NavMeshElement *navMeshElement)
 
void RemoveNavMeshElement (NavMeshElement *navMeshElement)
 
void UpdateNavMeshAccordingToGuidCompound (CellBox &activenessChangeCellBox, bool forceActiveIfAlone=false)
 
NavMeshElementSingleInsertion (const NavMeshElementBlob *navMeshElementBlob, bool forceActiveIfAlone=false)
 
void SingleRemoval (NavMeshElement *navMeshElement)
 

Member Function Documentation

KyResult Kaim::NavMeshElementManager::CheckGenerationParameters ( const NavMeshGenParameters navMeshGenParameters)

Called internally before adding a NavMeshElement to the NavMeshElementManager.

Calls IsCompatibleWith() to validate that the generation parameters in the NavMeshElement match any existing NavMeshes already added to the NavMeshElementManager. If no NavMeshes have been added to the NavMeshElementManager, it validates that the generation parameters are not set to invalid values.

NavMeshElement * Kaim::NavMeshElementManager::GetNavMeshElement ( KyUInt32  idx) const
inline

Retrieves the NavMesh with the specified index from within the list of NavMeshes in the NavMeshElementManager.

KyUInt32 Kaim::NavMeshElementManager::GetNavMeshElementCount ( ) const
inline

Indicates the number of NavMeshes that have been added to the NavMeshElementManager.

bool Kaim::NavMeshElementManager::IsCompatibleWith ( const NavMeshGenParameters navMeshGenParameters) const

Indicates whether the specified NavMeshElement was created with the same generation parameters as the NavMeshes that have already been loaded into this NavMeshElementManager.


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