Kaim::ActiveData Class Reference

Kaim::ActiveData Class Reference

#include <activedata.h>

Class Description

This class gathers all the navigation data that are currently active in a Database.

This is comprised of a grid of NavFloors and a set of NavGraph. You may not need to use the ActiveData directly in your code. However, if you do, you can retrieve it by calling Database::GetActiveData() at runtime

For internal use only

Databasem_database
 
ActiveCellm_bufferOfActiveCell
 
KyUInt32 m_sizeOfCellBuffer
 
KyArrayPOD< NavGraph *, MemStat_NavData > m_navGraphs
 
CellBox m_cellBox
 
 ActiveData (Database *database)
 
 ~ActiveData ()
 
void Clear ()
 

Functions

const CellBoxGetCellBox () const
 Retrieves a CellBox that encloses all the navigation data in this ActiveData. More...
 
KyUInt32 GetNavGraphCount () const
 
NavGraphGetNavGraph (NavGraphIdxInActiveData idx) const
 
CellIdxInActiveData GetCellIdxInActiveDataFromCellPos (const CellPos &cellPos) const
 Return the index in the buffer of ActiveCell of this CellPos Returns CellIdxInActiveData_Invalid if GetCellBox().IsInside(cellPos) == false. More...
 
CellIdxInActiveData GetCellIdxInActiveDataFromCellPos_Unsafe (const CellPos &cellPos) const
 Returns the index in the buffer of ActiveCell of this CellPos. More...
 
bool IsActiveNavFloorAtThisCellPos (const CellPos &cellPos) const
 Returns true if at least one NavFloor is active at the input CellPos. More...
 
ActiveCellGetActiveCellFromCellPos (const CellPos &cellPos) const
 
ActiveCellGetActiveCellFromCellPos_Unsafe (const CellPos &cellPos) const
 
ActiveCellGetActiveCellFromIndex_Unsafe (CellIdxInActiveData idxInActiveData) const
 

Member Function Documentation

const CellBox & Kaim::ActiveData::GetCellBox ( ) const
inline

Retrieves a CellBox that encloses all the navigation data in this ActiveData.

That does not mean that in all the CellPos of this CellBox there is activeData.

CellIdxInActiveData Kaim::ActiveData::GetCellIdxInActiveDataFromCellPos ( const CellPos cellPos) const
inline

Return the index in the buffer of ActiveCell of this CellPos Returns CellIdxInActiveData_Invalid if GetCellBox().IsInside(cellPos) == false.

CellIdxInActiveData Kaim::ActiveData::GetCellIdxInActiveDataFromCellPos_Unsafe ( const CellPos cellPos) const
inline

Returns the index in the buffer of ActiveCell of this CellPos.

Precondition
GetCellBox().IsInside(cellPos) == true
bool Kaim::ActiveData::IsActiveNavFloorAtThisCellPos ( const CellPos cellPos) const
inline

Returns true if at least one NavFloor is active at the input CellPos.


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