33 class GeneratorInputOutput;
36 class GeneratorProfiling;
37 class BaseVisualDebugServer;
38 class BaseVisualDebugManager;
39 class VisualDebugServer;
41 class GeneratorReport;
42 class DisplayListManager;
61 const GeneratorAbstractGraphParameters& AbstractGraphParams()
const {
return m_genIO->m_abstractGraphParams; }
62 GeneratorAbstractGraphParameters& AbstractGraphParams() {
return m_genIO->m_abstractGraphParams; }
67 const GeneratorFileSystem& GetFileSystem()
const {
return m_fileSystem; }
68 GeneratorFileSystem& GetFileSystem() {
return m_fileSystem; }
70 const String& GetAbsoluteOutputDirectory()
const {
return GetFileSystem().GetAbsoluteOutputDirectory(); }
71 String GetAbsoluteFileName(
const String& relativeFileName)
const {
return GetFileSystem().GetAbsoluteFileName(relativeFileName); }
75 const PixelAndCellGrid& GetPixelAndCellGrid()
const {
return m_pixelAndCellGrid; }
76 PixelAndCellGrid& GetPixelAndCellGrid() {
return m_pixelAndCellGrid; }
78 KyFloat32 GetNormalizedRasterPrecision()
const {
return m_genIO->m_params.m_normalizedParameters.m_normalizedRasterPrecision; }
79 KyFloat32 GetNormalizedCellSize()
const {
return m_genIO->m_params.m_normalizedParameters.m_normalizedCellSize; }
84 void* LoadBlobBase(
const char* fileName, BaseBlobHandler& blobHandler);
87 T* LoadBlob(
const char* fileName,
BlobHandler<T>& blobHandler) {
return (T*)LoadBlobBase(fileName, blobHandler); }
93 KyResult LoadAggregate(
const char* fileName, BlobAggregate& aggregate);
103 void InitVisualDebug();
106 void InitFromParams(GeneratorParameters& params);
109 void DestroyVisualDebug();
110 bool IsVisualDebugConnected();
111 VisualDebugServer* GetVisualDebugServerIfConnected();
114 GeneratorInputOutput* m_genIO;
115 DatabaseGenMetrics m_genMetrics;
116 PixelAndCellGrid m_pixelAndCellGrid;
117 GeneratorIntegerCoords m_integerCoords;
119 String m_generatorInputOuputSaveFileName;
120 GeneratorFileSystem m_fileSystem;
121 DenseGrid<KyUInt8> m_isMultipleInputAtCellPosGrid;
122 GeneratorNavDataElementMap m_navDataElementGlobalMap;
123 BlobCategory* m_blobRegistry;
124 Ptr<IParallelForInterface> m_parallelForInterface;
125 Ptr<ITlsAlloc> m_tlsAlloc;
126 Ptr<ICollisionInterface> m_collisionInterface;
127 GeneratorProfiling* m_generatorProfiling;
128 FileOpenerBase* m_fileOpener;
129 VisualDebugServer* m_visualDebugServer;
130 DisplayListManager* m_displayListManager;
131 String m_inputTilesTempDir;
132 String m_inputTilePartsTempDir;
133 GenFlags::GenerationMode m_generationMode;
134 GeneratorReport* m_generatorReport;
138 template <
class OSTREAM>
139 inline OSTREAM& operator<<(OSTREAM& os, GeneratorSystem& sys)
141 os << KY_LOG_SMALL_TITLE_BEGIN(
"",
"GeneratorSystem Info");
142 os <<
"ParallelForInterface status: " << (sys.m_parallelForInterface ?
"SET" :
"UNSET") << Endl;
143 os <<
"VisualDebugServer status: " << (sys.m_visualDebugServer ?
"CONNECTED" :
"DECONNECTED") << Endl;
144 os << KY_LOG_SMALL_TITLE_END(
"",
"GeneratorSystem Info");
Provides an abstract base interface for an object that can treat computational jobs in parallel...
Definition: iparallelforinterface.h:36
GeneratorAdvancedParameters m_advancedParameters
Contains more advanced configuration parameters.
Definition: generatorparameters.h:157
std::uint32_t KyUInt32
uint32_t
Definition: types.h:29
KyUInt32 m_limitedMemoryModeTileSizeInNbCells
Size of the internally used tiles for large scale generations and/or running generation with low memo...
Definition: generatorrunoptions.h:120
GeneratorSystem gathers everything that is global across a generation: configuration, options...
Definition: generatorsystem.h:45
The BlobHandler class is a top-level mechanism for serializing blobs between objects in memory and fi...
Definition: blobhandler.h:40
IntermediateFilesConfig m_intermediateFiles
Contains configuration parameters that relate to the generation of intermediate data files...
Definition: generatorrunoptions.h:162
#define KY_DEFINE_NEW_DELETE_OPERATORS(MemStat)
This macro defines new and delete operators.
Definition: memory.h:132
bool IsInputTilingEnabled() const
Tiling enabled i.e. IsLowMemoryModeEnabled() or possibly a future fast-local-input-produce-mode.
Definition: generatorsystem.h:99
Little-endian format (used, for example, for Windows, Linux).
Definition: endianness.h:22
The GeneratorAdvancedParameters class is used by the GeneratorParameters class to maintain a set of c...
Definition: generatoradvancedparameters.h:30
Navigation return code class.
Definition: types.h:108
The Autodesk Navigation namespace.
Definition: gamekitcrowddispersion.cpp:17
The GeneratorParameters class contains configuration parameters that control the characteristics of t...
Definition: generatorparameters.h:67
bool m_doEnableLimitedMemoryMode
Determines whether or not the input geometry consumption is buffered to avoid exceeding the memory li...
Definition: generatorrunoptions.h:115
The GeneratorRunOptions class contains configuration parameters that control the way in which the Gen...
Definition: generatorrunoptions.h:43
Type
Enumerates possible endianness types.
Definition: endianness.h:20
float KyFloat32
float
Definition: types.h:32