29 class NavCellGenerator;
30 class GeneratorSector;
31 class GeneratorNavDataElement;
36 class SectorInputData;
43 enum SectorOverlapStatus { SECTOR_IS_OVERLAPPING_ANOTHER_SECTOR = 0, SECTOR_IS_ISOLATED };
51 String GetTileDirName();
54 void ClearSectorInput();
55 void ClearNavDataElements();
61 KyResult GenerateRawNavCells(InputTileCache& inputTileCache);
68 const GeneratorNavDataElementMap& GetNavDataElements()
const {
return m_navDataElements; }
70 const KyGuid& GetGuid()
const {
return m_sector->GetGuid(); }
72 const char* GetName()
const {
return m_sector->GetName(); }
74 void ComputeSectorBBox(
Box2f& box);
76 template<
class OSTREAM>
void LogConfiguration(OSTREAM& os);
78 void ComputeStatistics();
85 void ComputeGenerationFlags();
86 KyResult SaveNavData(
const String& navDataName, BlobAggregate* navData);
87 KyResult SaveColData(
const String& colDataName, BlobAggregate* colData);
88 void ClearNavCellHandlers();
89 void ComputeSectorCellBox(
Box2i& cellBox);
93 Ptr<GeneratorSector> m_sector;
97 bool m_sectorInputWasProduced;
103 IndexedMeshBlobBuilder m_inputMeshBuilder;
105 Ptr<HeightField> m_heightfield;
106 ClientInputConsumerStatistics m_clientInputConsumerStatistics;
108 GeneratorNavDataElementMap m_navDataElements;
110 bool m_doGenerateNavData;
111 bool m_doGenerateColData;
116 template<
class OSTREAM>
117 inline void GeneratorSectorBuilder::LogConfiguration(OSTREAM& os)
119 os <<
"sectorName : " << m_sector->GetName() << Endl;
120 os <<
"sectorGuidString : " << m_sector->GetGuidString().ToCStr() << Endl;
122 switch (m_sector->GetSectorChange())
129 os <<
"doGenerateNavData : " << m_doGenerateNavData << Endl;
130 os <<
"doGenerateColData : " << m_doGenerateColData << Endl;
Read previous imprint of the Sector, the difference is included in the generated NavDataPatch.
Definition: genflags.h:30
2d axis aligned box of 32bits floating points
Definition: box2f.h:15
2d axis aligned box of 32bits integers. Very Important: CountX() returns m_max.x - m_min...
Definition: box2i.h:17
Maintains generation data for each sector.
Definition: generatorsectorbuilder.h:39
GeneratorSystem gathers everything that is global across a generation: configuration, options...
Definition: generatorsystem.h:45
General purpose array for movable objects that require explicit construction/destruction.
Definition: kyarray.h:162
The SectorStatistics class encapsulates a detailed set of statistics about a single sector treated by...
Definition: generatorsectorreport.h:19
Navigation return code class.
Definition: types.h:108
The Autodesk Navigation namespace.
Definition: gamekitcrowddispersion.cpp:17
The KyGuid class represents a globally unique ID.
Definition: kyguid.h:20
std::int32_t KyInt32
int32_t
Definition: types.h:24
This class is a wrapper around an array of KyGuid objects.
Definition: generatorguidcompound.h:20
May load the Sector inputs (if required by other CHANGED Sectors), does NOT generate any NavData or N...
Definition: genflags.h:29
Load the Sector inputs, generate the Sector NavData or impact the NavDataPatch.
Definition: genflags.h:28