![]() |
VR-Forces Development_Version Class Documentation
|
DtMetaflightTerrainSourcePager is a derived terrainSourcePager that handles metaflight terrains. More...

Classes | |
| class | DtMetaflightTerrainVisitor |
Public Member Functions | |
| DtMetaflightTerrainSourcePager (DtVantageTerrainEngine *terrainEngine, osg::Group *rootNode, const DtFilename &surfaceCharacterMap) | |
| virtual | ~DtMetaflightTerrainSourcePager () |
| virtual DtTerrainSourceTracker * | createTerrainSourceTracker (DtVantageTerrainEngine *) |
| Creates and returns a DtOsgTerrainSourceTracker. | |
| virtual bool | pageInGeometry (const DtTerrainPagingGeometryPtr geometry, DtTerrainIntersectIDType intersectId=0) |
| This function must page in all the geometry specified by the argument, and return true when successful. | |
| virtual bool | pageOutNodes (std::list< DtNodeId > &nodesToRemove) |
| This function must cause the page out of the nodeIds specified. | |
| virtual void | updatePageTracker (DtTerrainIntersectIDType intersectId=0) |
Public Member Functions inherited from DtBoundingVolumeTerrainSourcePager | |
| DtBoundingVolumeTerrainSourcePager (DtVantageTerrainEngine *terrainEngine) | |
| virtual | ~DtBoundingVolumeTerrainSourcePager () |
Public Member Functions inherited from DtTerrainSourcePager | |
| DtTerrainSourcePager (DtVantageTerrainEngine *terrainEngine) | |
| Constructor. | |
| virtual | ~DtTerrainSourcePager () |
| Destructor. Deletes all pending commands and myTerrainSourceTracker. | |
| virtual void | tick () |
| Processes commands from the priority-sorted command map. | |
| virtual DtTerrainSourceTracker * | terrainSourceTracker () |
| Accessor for myTerrainSourceTracker. | |
| virtual int | highestPriorityPendingWork () |
| Calls processCommandQueue to add new commands into the priority-sorted command map. | |
| virtual void | processCommandQueue () |
| Takes incoming commands off the command queue and adds them to the priority-sorted command map. | |
| virtual void | setCurrentTime (const double ¤tTime) |
| Sets myCurrentTime for purposes of expiring old page-in commands. | |
| virtual unsigned long | numTriangles () const |
| Number of triangles paged in to this pager. | |
| virtual bool | quitFlagSet () const |
| virtual void | setQuit (bool) |
| virtual const Coordinate_System * | localCS () const |
| virtual void | setLabel (const DtString &) |
| virtual DtString | label () const |
Public Member Functions inherited from DtTerrainInterfaceConfig | |
| DtTerrainInterfaceConfig (const std::string &matchPattern="") | |
| Regexp pattern to match which the label string of whatever is being configured must match. | |
| DtTerrainInterfaceConfig & | operator= (const DtTerrainInterfaceConfig &) |
| virtual bool | loadFromFile (const std::string &file, std::ostream &log) |
| Load the values from the given file. | |
| virtual bool | loadFromFile (const std::string &file) |
| virtual bool | loadFromSourceSpecificFile (const std::string &file, const std::string &ext="mtl") |
| Load the values from the given file with the new extension if it exists. | |
| virtual void | configure (DtTerrainInterfaceConfig &config, const std::string &matchText, bool ignoreUnspecified=true) const |
| Configure config using option matchText to match subconfigurations. | |
| virtual void | configure (DtTerrainInterfaceConfig &config, bool ignoreUnspecified=true) const |
| virtual void | configurePaths (std::string &path) const |
| Replace thee , , string in the supplied parameter path. | |
| virtual void | print (std::ostream &, bool printUnspecified=true) const |
| Print object to stream. | |
| DtString | prettyPrint () const |
| void | setName (const DtString &) |
| std::string | modelDefinitionPath () const |
| std::string | simCachePath () const |
| std::string | featureConfigFile () const |
Public Member Functions inherited from DtReaderWriter | |
| DtReaderWriter () | |
| default constructor | |
| DtReaderWriter (const DtString &name, DtReaderWriterRegistry *parentRegistry=NULL, bool readonly=false) | |
| real constructor Setting the readonly flag prevents object from writing itself to the stream. | |
| DtReaderWriter (const DtSymbolString &name, DtReaderWriterRegistry *parentRegistry=NULL, bool readonly=false) | |
| DtReaderWriter (const DtString &name, const DtReaderWriter &orig, DtReaderWriterRegistry *parentRegistry=NULL) | |
| pseudo-copy constructor | |
| DtReaderWriter (const DtSymbolString &name, const DtReaderWriter &orig, DtReaderWriterRegistry *parentRegistry=NULL) | |
| DtReaderWriter (const DtReaderWriter &, DtReaderWriterRegistry *parentRegistry=NULL) | |
| copy constructor | |
| const DtReaderWriter & | operator= (const DtReaderWriter &orig) |
| assignment operator | |
| bool | operator== (const DtReaderWriter &) const |
| Equivalence operator. | |
| bool | operator!= (const DtReaderWriter &rhs) |
| virtual | ~DtReaderWriter () |
| destructor | |
| virtual void | putSelf (FILE *fp, int indentLevel=0, bool writeUnspecified=false, const DtFilename &path=DtFilename::nullFilename()) |
| Top level call to write itself to file. | |
| virtual void | postPutSelf () |
| Called after either version of put self (file or environment). Default is no-op. | |
| virtual void | prePutSelf () |
| Called before either version of put self (file or environment). Default is no-op. | |
| virtual void | getSelf (DtlObjPtr args, const DtReaderWriter::SearchPaths &searchPaths=SearchPaths(), const DtVariableBindingsList &variableBindings=nullVariableReference()) |
| Top level to read itself from an input stream. | |
| virtual void | postGetSelf () |
| Called after either version of getSelf (mtl or environment). Default is no-op. | |
| virtual void | preGetSelf () |
| Called before either version of get self (file or environment). Default is no-op. | |
| virtual void | writeSelf (FILE *fp, int indentLevel=0, bool writeUnspecified=false, const DtFilename &path=DtFilename::nullFilename()) |
| Called from putSelf, calls myRegistry.putSelf which in turn calls putSelf on each reader/writer in the registry. | |
| virtual DtSymbolString | name () const |
| Accessor for name of this readable/writable object. | |
| virtual void | addAlias (const DtSymbolString &alias) |
| Add an alias as an alternative name for this object. | |
| virtual void | addAlias (const DtString &alias) |
| virtual bool | hasAlias (const DtSymbolString &alias) |
| virtual const aliasContainer & | aliases () const |
| virtual void | setReadonly (bool flag) |
| Set read-only flag. | |
| virtual bool | isReadonly () const |
| virtual void | reset () |
| For those reader/writer items that support it, resets the reader/writer value to iriginal state Default is no-op. | |
| virtual int | alignment () const |
| For those items that are sent over the network via HLA, this will give the network alignment. | |
| virtual bool | variableIsBound () const |
| virtual void | unbindVariable () |
| Sets the myVariableIsBound flag to false. | |
| virtual void | setName (const DtString &) |
| Set the name of the object. | |
| virtual const char * | readerWriterType () const |
| Used to supply a string type that this reader writer type is. | |
| virtual const char * | xmlType () const |
| virtual DtString | prettyPrint () const |
| Routine to return a human readable form of the reader/writer variable. | |
| std::string | debugText () const |
| virtual void | bindVariables (DtVariableBindingsList variableBindings) |
| Runs a variable binding pass on this reader writer and any of its children. | |
| virtual std::list < DtVariableNameType > | unboundVariables () const |
| bool | invalid () const |
| virtual bool | hasChild (const DtReaderWriter *p) const |
| Returns true if this variable has a child p in it's chain. | |
| virtual bool | hasVariableReference () const |
| Returns true if this item or any item in the registry (recursive) is a variable reference. | |
| virtual void | bindLocalVariables (const DtVariableBindingsList &variableBindings) |
| Checks to see if this RW object is a variable reference that can be bound using the provided bindings. | |
| virtual void | recordUpdateTime () const |
| Can be implemented in subclasses to stamp the time when updated. | |
| virtual bool | wasUpdatedSince (DtTime t) const |
| Can be implemented in subclasses to return true if an update occurred after the specified time. | |
| virtual void | putData (FILE *fp, int indentLevel=0) |
| Deriving class overrides these to get/put class specific data. | |
| virtual DtlObjPtr | getData (DtlObjPtr args, const SearchPaths &searchPaths, const DtVariableBindingsList &variableBindings) |
| Deriving class overrides these to get/put class specific data. | |
| virtual void | setValueSpecified (bool specified, bool recurse=false) |
| The specified flags are used for optional values. | |
| virtual bool | valueSpecified () const |
| The specified flags are used for optional values. | |
| virtual bool | isVariableReference () const |
| Specifies whether or not this reader writer is really a variable that is specified elsewhere. | |
| virtual void | setIsVariableReference (bool value) |
| virtual void | clearAllVariableReferenceFlags () |
| Clears out all variable reference flags from all readerwriter items in registry recursively. | |
| virtual DtSymbolString | variableName () const |
| The variable name, if this object is a variable reference. | |
| virtual void | setVariableName (const DtSymbolString variableName) |
| The variable name, if this object is a variable reference. | |
| virtual const DtReaderWriter * | defaultRWValue () const |
| The default value to use if the reader/writer object is a variable and that variable is not specified. | |
| virtual DtReaderWriter * | defaultRWValue () |
| The default value to use if the reader/writer object is a variable and that variable is not specified. | |
| virtual void | setDefaultRWValue (DtReaderWriter *) |
| Previous default value, if exists, will be removed and replaced with a clone of the supplied variable. | |
| virtual bool | checkAndSetDefaultRWValue (DtlObjPtr args, const DtReaderWriter::SearchPaths &searchPaths=SearchPaths(), const DtVariableBindingsList &variableBindings=nullVariableReference()) |
| Give the stream, if the stream contains a default value then set it here. | |
| const DtReaderWriterRegistry & | registry () const |
| Collection of child DtReaderWriter nodes owned by this object. | |
| DtReaderWriterRegistry & | registry () |
| Collection of child DtReaderWriter nodes owned by this object. | |
| virtual DtPropertyInterface * | property () |
| virtual const DtPropertyInterface * | property () const |
| virtual DtString | toXml () const |
| virtual bool | toXml (const DtFilename &) const |
| Writes contents of xml result to the given filename. | |
| virtual bool | fromXml (const DtString &) |
| Restores object from given xml string. Returns true if valid. | |
| virtual bool | fromXmlFile (const DtFilename &) |
| Restires object from given xml file. | |
| virtual void | putSelf (DtEnvironmentSP, DtEnvValueSP parent) const |
| virtual void | putData (DtEnvironmentSP, DtEnvValueSP value) const |
| Override to add attributes of actual data. | |
| virtual void | putVariableReference (DtEnvironmentSP, DtEnvValueSP value) const |
| Called when the item is a variable reference. | |
| virtual void | getSelf (const DtEnvironmentSP, const DtEnvValueSP root, const SearchPaths &searchPaths=SearchPaths(), const DtVariableBindingsList &bindings=DtVariableBindingsList()) |
| virtual void | getData (const DtEnvironmentSP, const DtEnvValueSP, const SearchPaths &searchPaths=SearchPaths(), const DtVariableBindingsList &bindings=DtVariableBindingsList()) |
| Gets data from the environment value. | |
| virtual void | unrecognizedItem (const DtEnvironmentSP env, const DtEnvValueSP root, const SearchPaths &searchPaths, const DtVariableBindingsList &varBindings) |
| Called when the xml reader tries to parse an unknown reader/writer item. Default is a no-op. | |
| virtual void | getVariableReference (DtEnvironmentSP, DtEnvValueSP value) |
| Called when the item is a variable reference. | |
Static Public Member Functions | |
| static DtTerrainSourcePager * | terrainChooserFunction (osg::Node &node, DtVantageTerrainEngine *terrainEngine, const DtFilename &surfaceCharacterMap) |
| This is the function that is registered with the DtTerrainSourceChooser. | |
Static Protected Member Functions | |
| static DtNodeId | osgNodeId (makVrv::DtHierarchicalPagedLod *node) |
| Methods for converting to/from DtNodeId. | |
| static makVrv::DtHierarchicalPagedLod * | nodeFromId (DtNodeId nodeId) |
| Methods for converting to/from DtNodeId. | |
Protected Attributes | |
| osg::Group * | myRootNode |
| DtHierNodeBoundingVolumeMap | myPagedInNodes |
| This is the list of nodes for only the LODs that we will page into the terrain. | |
| DtHierNodeBoundingVolumeMap | myPagedOutNodes |
| DtFilename | mySurfaceCharacterMap |
Additional Inherited Members | |
Public Types inherited from DtReaderWriter | |
| typedef std::vector < DtSymbolString > | aliasContainer |
| typedef std::vector < DtSymbolString >::iterator | aliasIter |
| typedef std::vector < DtSymbolString > ::const_iterator | aliasConstIter |
| typedef std::vector< DtFilename > | SearchPaths |
| typedef std::pair < DtSymbolString, DtString > | DtVariableNameType |
| typedef DtReaderWriterFactory *(* | DtReaderWriterFactoryCreatorFcn )() |
Public Attributes inherited from DtTerrainInterfaceConfig | |
| TInt | maxNetworkThreads |
| Parameter Name: max-feature-network-threads Parameter Description: The max number of background threads that will be used to read streaming feature data. | |
| TInt | maxUnusedFeatures |
| Parameter Name: max-unused-features Parameter Description: Max number of unused features to store in memory. | |
| TInt | areaPageTableLoadingThreads |
| Parameter Name: area-page-table-threads Parameter Description: Max number of simultaneous threads that will be used for executing feature loading tasks for area features. | |
| TInt | featuresHighestLoadLOD |
| Parameter Name: features-highest-load-LOD Parameter Description: The smallest tile (highest LOD) for loading features. | |
| TInt | featuresLowestLoadLOD |
| Parameter Name: features-lowest-load-LOD Parameter Description: The largest tile (smallest LOD) for loading features. | |
| TInt | featuresPerTileTarget |
| Parameter Name: features-per-tile-target Parameter Description: Target number of features per tile. | |
| TInt | featuresMaxIndexLOD |
| Parameter Name: features-max-index-LOD Parameter Description: Smallest tile LOD level to index features. | |
| TInt | minFeaturesToIndexTile |
| Parameter Name: min-features-to-index-tile Parameter Description: Minumum number of features in a tile for the tile to be considered for subindexing. | |
| TReal | featuresIndexRatio |
| Parameter Name: features-index-ratio Parameter Description: If the ratio of the number of features in a parent tile to the number in a subtile is greater than this value then the tile will be subindexed. | |
| TBool | deduplicateFeatures |
| Parameter Name: deduplicate-features Parameter Description: Remove duplicate features. | |
| TBool | cacheLastFeatureTile |
| Parameter Name: cache-last-feature-tile Parameter Description: Cache last used feature tile Parameter Default: True. | |
| TInt | pathFinderMaxSize |
| Parameter Name: pathfinder-max-features Parameter Description: The max size of a DtAStarGraph. | |
| TInt | pathFinderPageTableDepth |
| Parameter Name: pathfinder-page-table-depth Parameter Description: The depth of the Quad-Tree used for tracking loaded features for each pathfinder road graph. | |
| TReal | pathFinderLoadTimeout |
| Parameter Name: pathfinder-load-timeout Parameter Description: The amount of time (in seconds) that the path finder will wait on loading a tile of features before giving up on that tile. | |
| TReal | pathFinderVertexTolerance |
| Parameter Name: pathfinder-vertex-tolerance Parameter Description: The distance tolerance (in meters) within which feature vertices are considered to be the same vertex. | |
| TInt | pathFinderMinVertexSearch |
| Parameter Name: pathfinder-min-vertex-search Parameter Description: The minimum number of vertices the graph search will use to before giving up. | |
| TInt | triangleThreshold |
| Parameter Name: num-triangles-threshold Parameter Description: Maximum number of triangles. | |
| TInt | cacheOnlyMaxLod |
| Parameter Name: cache-only-max-lod Parameter Description: Max level of detail to use when in cache-only mode. | |
| TInt | blockingIntersectPageInPriority |
| Parameter Name: blocking-intersect-page-in-priority Parameter Description: Priority for paging in data for blocking intersect requests. | |
| TInt | intersectPageInPriority |
| Parameter Name: intersect-page-in-priority Parameter Description: Priority for paging in data for non-blocking intersect requests. | |
| TInt | pageOutPriority |
| Parameter Name: page-out-priority Parameter Description: Priority for paging out data. | |
| TInt | defaultPreloadPriority |
| Parameter Name: default-preload-priority Parameter Description: Default priority for preload geometry. | |
| TVector | spatialSubdivisionDimensions |
| Parameter Name: spatial-subdivision-dimensions Parameter Description: Parameters for Spatial Subdivision used by DtBoundingVolumeTerrainSourceTracker to determine which paged-out nodes should be paged in. | |
| TBool | useS57ForTerrainGeneration |
| Parameter Name: use-S57-for-terrain-generation Parameter Description: Flag for S57 to terrain and soil types. | |
| TBool | oceanLayerPresent |
| Parameter Name: ocean-layer-present Enable/disable ocean layer-present Default: True. | |
| TReal | seaLevel |
| Parameter Name: sea-level Sea level in meters Default: | |
| TReal | seaFloor |
| Parameter Name: sea-floor Sea floor in meters. | |
| TBool | useSoundingPoints |
| Parameter Name: use-sounding-points Default: True. | |
| TBool | pageFeatures |
| Parameter Name: page-features Default: True. | |
| TString | LOSFeaturesQueryName |
| Parameter Name: los-features-query Default: MAK_LOS_OBSTACLE. | |
| TReal | featuresMinUnloadTime |
| Parameter Name: features-min-unload-time Default: 15. | |
| TInt | terrainMinUnloadIntersectDiff |
| Parameter Name: terrain-min-unload-intersect-diff Default: 50. | |
| TString | userDataDirectory |
| Parameter Name: user-data-directory Default: ../userData. | |
| TString | dataDirectory |
| Parameter Name: data-directory Default: ../data. | |
| TString | appDataDirectory |
| Parameter Name: app-data-directory Default: ../appData. | |
| TString | pluginsDirectory |
| Parameter Name: plugins-directory Default: ../(plugins|plugins64)/(release|debug) | |
Protected Types inherited from DtTerrainSourcePager | |
| typedef tbb::spin_rw_mutex | Mutex |
Protected Member Functions inherited from DtTerrainSourcePager | |
| virtual unsigned long | addNumTriangles (long) |
Static Protected Attributes inherited from DtReaderWriter | |
| static DtString | theUnspecifiedValue |
| static DtGetSelfCallbackInfo | thePostGetSelfCallback |
| static DtPutSelfCallbackInfo | thePrePutSelfCallback |
| static const DtVariableBindingsList | theEmptyVariableBindingsList |
| static bool | theCreatorFcnSet |
| static DtReaderWriterFactory * | theFactory |
| static DtReaderWriterFactoryCreatorFcn | theFactoryCreatorFcn |
DtMetaflightTerrainSourcePager is a derived terrainSourcePager that handles metaflight terrains.
| DtMetaflightTerrainSourcePager::DtMetaflightTerrainSourcePager | ( | DtVantageTerrainEngine * | terrainEngine, |
| osg::Group * | rootNode, | ||
| const DtFilename & | surfaceCharacterMap | ||
| ) |
|
virtual |
|
virtual |
Creates and returns a DtOsgTerrainSourceTracker.
Implements DtTerrainSourcePager.
|
virtual |
This function must page in all the geometry specified by the argument, and return true when successful.
If this method returns false, it will be called again later, until it returns true or times out.
Implements DtBoundingVolumeTerrainSourcePager.
|
virtual |
This function must cause the page out of the nodeIds specified.
It should return true when successful. It will be called repeatedly with the same arguments until it succeeds.
Implements DtBoundingVolumeTerrainSourcePager.
|
virtual |
Implements DtBoundingVolumeTerrainSourcePager.
|
static |
This is the function that is registered with the DtTerrainSourceChooser.
If node is a DtHierarchicalPagedLod node, then a DtMetaflightTerrainSourcePager is returned.
|
staticprotected |
Methods for converting to/from DtNodeId.
These are protected, because only the pager should be accessing NodeIds as if they are actual nodes. The tracker does not do that since it operates in a separate thread.
|
staticprotected |
Methods for converting to/from DtNodeId.
These are protected, because only the pager should be accessing NodeIds as if they are actual nodes. The tracker does not do that since it operates in a separate thread.
|
protected |
|
protected |
This is the list of nodes for only the LODs that we will page into the terrain.
|
protected |
|
protected |