19 class DatabaseChangeIdx
39 const CellBox& GetAddRemoveNavMeshChangeCellBox()
const {
return m_addRemoveNavMeshChangeCellBox; }
40 const CellBox& GetTagVolumeNavMeshChangeCellBox()
const {
return m_tagVolumeNavMeshChangeCellBox; }
41 const CellBox& GetNavMeshChangeCellBox()
const {
return m_navMeshChangeCellBox; }
42 const CellBox& GetNavGraphChangeCellBox()
const {
return m_navGraphChangeCellBox; }
43 const CellBox& GetAbstractGraphChangeCellBox()
const {
return m_abstractGraphChangeCellBox; }
44 const CellBox& GetAnyChangeCellBox()
const {
return m_anyChangeCellBox; }
47 KyUInt32 GetNavMeshChangeIdx()
const {
return m_changeIdx.m_navMeshChangeIdx; }
48 KyUInt32 GetNavGraphChangeIdx()
const {
return m_changeIdx.m_navGraphChangeIdx; }
49 KyUInt32 GetAbstractGraphChangeIdx()
const {
return m_changeIdx.m_abstractGraphChangeIdx; }
50 KyUInt32 GetAnyChangeIdx()
const {
return m_changeIdx.m_anyChangeIdx; }
53 bool IsAddRemoveNavMeshChanged()
const {
return m_addRemoveNavMeshChanged; }
54 bool IsTagVolumeNavMeshChangeCellBox()
const {
return m_tagVolumeNavMeshChanged; }
55 bool IsNavMeshChanged()
const {
return m_navMeshChanged; }
56 bool IsNavGraphChanged()
const {
return m_navGraphChanged; }
57 bool IsAbstractGraphChanged()
const {
return m_abstractGraphChanged; }
58 bool IsAnyChanged()
const {
return m_anyChanged; }
60 const KyArray<Ptr<NavData> >& GetAddedNavDatas()
const {
return m_addedNavDatas; }
61 const KyArray<Ptr<NavData> >& GetRemovedNavDatas()
const {
return m_removedNavDatas; }
64 DatabaseChangeIdx m_changeIdx;
67 CellBox m_addRemoveNavMeshChangeCellBox;
68 CellBox m_tagVolumeNavMeshChangeCellBox;
70 CellBox m_navGraphChangeCellBox;
71 CellBox m_abstractGraphChangeCellBox;
74 bool m_addRemoveNavMeshChanged;
75 bool m_tagVolumeNavMeshChanged;
76 bool m_navMeshChanged;
77 bool m_navGraphChanged;
78 bool m_abstractGraphChanged;
81 KyArray<Ptr<NavData> > m_addedNavDatas;
82 KyArray<Ptr<NavData> > m_removedNavDatas;
84 friend class DatabaseChangeInProgress;
87 class IDatabaseChangeListener :
public RefCountBase<IDatabaseChangeListener, MemStat_WorldFwk>
90 virtual ~IDatabaseChangeListener() {}
91 virtual void OnDatabaseChange(
const DatabaseChange& change) = 0;
96 class DatabaseChangeInProgress :
public DatabaseChange
100 void AddRemoveNavMeshChange(
const CellBox& cellBox);
101 void TagVolumeNavMeshChange(
const CellBox& cellBox);
103 void NavMeshChange(
const CellBox& cellBox);
107 void NavGraphChange(
const CellBox& cellBox);
108 void NavGraphChange();
111 void AbstractGraphChange(
const CellBox& cellBox);
112 void AbstractGraphChange();
114 void PushAddedNavData(Ptr<NavData>& navData);
115 void PushRemovedNavData(Ptr<NavData>& navData);
116 void ComputeAnyChangeCellBox();
118 void CopyChangeIdxTo(DatabaseChangeIdx& changeIdx)
const { changeIdx = m_changeIdx; }
120 void AggregateTo(DatabaseChange& change)
const;
123 void AnyChange(
const CellBox& cellBox);
Box2i CellBox
A type that represents a bounding box around cells in a 2D grid.
Definition: navmeshtypes.h:31
std::uint32_t KyUInt32
uint32_t
Definition: types.h:29
The Autodesk Navigation namespace.
Definition: gamekitcrowddispersion.cpp:17