Kaim::GeneratorRunOptions Class Reference

#include <generatorrunoptions.h>

Class Description

The GeneratorRunOptions class contains configuration parameters that control the way in which the Generator carries out the process of generating NavData for its sectors.

You can create an instance of this class, set up its data members as desired, and pass it in a call to Generator::SetRunOptions().

Public Member Functions

void Clear ()
 Reset members as if the object was freshly constructed. More...
 
void SetDefaultValues ()
 alias for Clear() More...
 
const IntermediateFilesConfigIntermediates () const
 Read accessor for m_intermediateFiles. More...
 
IntermediateFilesConfigIntermediates ()
 Const read accessor for m_intermediateFiles. More...
 
void AddCellToBuild (const CellPos &pos)
 Restricts NavData generation to the specified cell, and generates intermediate data for that cell. More...
 
bool DoReallyUseMultiCore () const
 Indicates whether or not the Generator will actually use parallel processing. More...
 
bool DoReallyUseVisualDebug () const
 For internal use. More...
 

Public Attributes

KyUInt32 m_generationRevision
 Incremented each time a Generator operates on the GeneratorInputOutput. More...
 
bool m_doSaveGeneratorInputOutput
 Determines whether or not the Generator saves the GeneratorInputOutput content. More...
 
String m_generatorInputOuputSaveFileName
 FileName of the saved GeneratorInputOutput. More...
 
bool m_doMultiCore
 Determines whether or not the NavData generation system spreads computations across all available CPUs on your computer. More...
 
bool m_doWriteNavDataFiles
 Determines whether or not .NavData files are written. More...
 
bool m_doWriteColDataFiles
 Determines whether or not .ColData files are written. More...
 
bool m_doWriteDataIndexFile
 Determines whether or not the .DataIndex file is written. More...
 
bool m_doEnableLimitedMemoryMode
 Determines whether or not the input geometry consumption is buffered to avoid exceeding the memory limitations on 32 bit. More...
 
KyUInt32 m_limitedMemoryModeTileSizeInNbCells
 Size of the internally used tiles for large scale generations and/or running generation with low memory. More...
 
KyUInt32 m_outputFilesEndianness
 Determines the endianness of the final output files. More...
 
bool m_doUseTlsIfAvailable
 Determines whether or not the Generator uses thread local storage when an ITlsAlloc object is provided in its constructor. More...
 
bool m_doProfile
 Determines whether or not the Generator will profile its CPU performance. More...
 
bool m_doLogConfiguration
 Determines whether or not the Generator will log its configuration parameters in its report for each run. More...
 
bool m_doLogReport
 Determines whether or not the Generator will log a report the results of each run. More...
 
bool m_doLogReportDetails
 Determines whether or not the Generator will log verbose details in its report for each run. More...
 
bool m_doLogPerSectorReport
 Determines whether or not the Generator will log per Sector information in its report for each run. More...
 
bool m_doLogProgress
 Determines whether or not the Generator will log the progress of the Generation, useful from very long generation. More...
 
GeneratorVisualDebugOptions m_visualDebugOptions
 For internal use. Do not modify. More...
 
IntermediateFilesConfig m_intermediateFiles
 Contains configuration parameters that relate to the generation of intermediate data files. More...
 

Member Function Documentation

void Kaim::GeneratorRunOptions::AddCellToBuild ( const CellPos pos)
inline

Restricts NavData generation to the specified cell, and generates intermediate data for that cell.

Used to troubleshoot localized problems with NavData generation.

void Kaim::GeneratorRunOptions::Clear ( )

Reset members as if the object was freshly constructed.

bool Kaim::GeneratorRunOptions::DoReallyUseMultiCore ( ) const
inline

Indicates whether or not the Generator will actually use parallel processing.

When the Generator is configured to write intermediate data, multi-core generation is deactivated.

bool Kaim::GeneratorRunOptions::DoReallyUseVisualDebug ( ) const
inline

For internal use.

const IntermediateFilesConfig& Kaim::GeneratorRunOptions::Intermediates ( ) const
inline

Read accessor for m_intermediateFiles.

IntermediateFilesConfig& Kaim::GeneratorRunOptions::Intermediates ( )
inline

Const read accessor for m_intermediateFiles.

void Kaim::GeneratorRunOptions::SetDefaultValues ( )
inline

alias for Clear()

Member Data Documentation

bool Kaim::GeneratorRunOptions::m_doEnableLimitedMemoryMode

Determines whether or not the input geometry consumption is buffered to avoid exceeding the memory limitations on 32 bit.

If activated, sectors added with GenFlags::SECTOR_CLIENT_INPUT_SAVE_ENABLED could generate several .ClientInput files, i.e. one main .ClientInput which refers to other files ending with .part.X.ClientInput where X is a number. Activating this mode might slightly increase the generation time.

default value:  false

bool Kaim::GeneratorRunOptions::m_doLogConfiguration

Determines whether or not the Generator will log its configuration parameters in its report for each run.

See also m_doLogReport.

default value:  false

bool Kaim::GeneratorRunOptions::m_doLogPerSectorReport

Determines whether or not the Generator will log per Sector information in its report for each run.

See also m_doLogReport.

default value:  true

bool Kaim::GeneratorRunOptions::m_doLogProgress

Determines whether or not the Generator will log the progress of the Generation, useful from very long generation.

default value:  false

bool Kaim::GeneratorRunOptions::m_doLogReport

Determines whether or not the Generator will log a report the results of each run.

When this parameter is set to true, you can access the report by calling Generator::GetGeneratorReport() after the generation has completed.

default value:  true

+ Examples:
bool Kaim::GeneratorRunOptions::m_doLogReportDetails

Determines whether or not the Generator will log verbose details in its report for each run.

See also m_doLogReport.

default value:  false

+ Examples:
bool Kaim::GeneratorRunOptions::m_doMultiCore

Determines whether or not the NavData generation system spreads computations across all available CPUs on your computer.

default value:  true

bool Kaim::GeneratorRunOptions::m_doProfile

Determines whether or not the Generator will profile its CPU performance.

default value:  false

bool Kaim::GeneratorRunOptions::m_doSaveGeneratorInputOutput

Determines whether or not the Generator saves the GeneratorInputOutput content.

Check the class GeneratorInputOutput.

default value:  true

bool Kaim::GeneratorRunOptions::m_doUseTlsIfAvailable

Determines whether or not the Generator uses thread local storage when an ITlsAlloc object is provided in its constructor.

default value:  true

bool Kaim::GeneratorRunOptions::m_doWriteColDataFiles

Determines whether or not .ColData files are written.

default value:  true

bool Kaim::GeneratorRunOptions::m_doWriteDataIndexFile

Determines whether or not the .DataIndex file is written.

default value:  true

bool Kaim::GeneratorRunOptions::m_doWriteNavDataFiles

Determines whether or not .NavData files are written.

default value:  true

KyUInt32 Kaim::GeneratorRunOptions::m_generationRevision

Incremented each time a Generator operates on the GeneratorInputOutput.

Allows to give a unique fileName to Patches when generating iteratively many of them.

default value:  0

String Kaim::GeneratorRunOptions::m_generatorInputOuputSaveFileName

FileName of the saved GeneratorInputOutput.

default value:  "Generator"

IntermediateFilesConfig Kaim::GeneratorRunOptions::m_intermediateFiles

Contains configuration parameters that relate to the generation of intermediate data files.

KyUInt32 Kaim::GeneratorRunOptions::m_limitedMemoryModeTileSizeInNbCells

Size of the internally used tiles for large scale generations and/or running generation with low memory.

Used when m_doEnableLimitedMemoryMode is true.

default value:  25

KyUInt32 Kaim::GeneratorRunOptions::m_outputFilesEndianness

Determines the endianness of the final output files.

This allows you to avoid swapping the byte order of the data when loading NavData on a machine with a different endianness.

accepted values:  Any element from the Endianness::Type enumeration.

default value:  Endianness::BigEndian

+ Examples:
GeneratorVisualDebugOptions Kaim::GeneratorRunOptions::m_visualDebugOptions

For internal use. Do not modify.


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