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

KyResult CheckGenerationParameters (const NavMeshGenParameters &navMeshGenParameters)
 
NavMeshElementGetNavMeshElement (KyUInt32 idx) const
 
KyUInt32 GetNavMeshElementCount () const
 
bool IsCompatibleWith (const NavMeshGenParameters &navMeshGenParameters) const
 

For internal use only

Databasem_database
 
ActiveGuids m_activatedGuids
 
GuidCompoundSorter m_guidCompoundSorter
 
 NavMeshElementManager (Database *database)
 
 ~NavMeshElementManager ()
 
void SetNavGraphManager (NavGraphManager *navGraphManager)
 
void Clear ()
 
NavMeshElementInsertNavMeshElement (const NavMeshElementBlob *navMeshElementBlob)
 
void PrepareNavMeshRemoval (NavMeshElement *navMeshElement)
 
void RemoveNavMeshElement (NavMeshElement *navMeshElement)
 
void SortNavMeshAccordingToGuidCompound (CellBox &currentUpdateCellBox, 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 file: