![]() |
VR-Forces 4.8 Class Documentation
|
DtOsgEarthTerrainSourcePager is a derived terrainSourcePager that handles a streaming terrain source. More...

Public Member Functions | |
| DtOsgEarthTerrainSourcePager (DtVantageTerrainEngine *terrainEngine, osgEarth::MapNode *mapNode) | |
| virtual | ~DtOsgEarthTerrainSourcePager () |
| virtual DtTerrainSourceTracker * | createTerrainSourceTracker (DtVantageTerrainEngine *) |
| Creates and returns a DtOsgEarthTerrainSourceTracker. More... | |
| virtual bool | init () |
| Initializes pager. More... | |
| virtual void | tick () |
| Processes commands from the priority-sorted command map. More... | |
| virtual bool | pageInTiles (DtTileKeyList &tileIds, DtTerrainIntersectIDType intersectId=0) |
| Calls pageIntile for a single tile in the list and then removes it from the list. More... | |
| virtual bool | pageOutTiles (const DtTileKeyList &tilesToRemove) |
| Pages out the requested tiles, removes the corresponding collision objects from the collision world, decrements the terrainEngine's triangle count, and decrements the terrainEngine's pending removal command count. More... | |
| virtual void | updatePageTracker (DtTerrainIntersectIDType intersectId=0) |
| Updates the DtOsgEarthTerrainSourceTracker. More... | |
| virtual int | highestPriorityPendingWork () |
| Calls processCommandQueue to add new commands into the priority-sorted command map. More... | |
| virtual const unsigned int | determineTrackerLod () |
| Called by createTerrainSourceTracker. More... | |
| virtual const osgEarth::TerrainOptionsAPI & | osgEarthTerrainOptions () const |
| osgearth terrain options. More... | |
| virtual void | findMissingTiles (const DtTerrainPagingGeometryPtr &geometry, DtTileKeyList &tiles) const |
| Find all the tiles that intersect the geometry which are not paged in. More... | |
| unsigned | reloadQueuedPages () |
| Reloads the queued pages. More... | |
| virtual unsigned | queuePageReloadsWithinExtent (const osgEarth::GeoExtent &extent, const DtUUID &dynamicUuid, bool isRemoval=false) |
| virtual DtTerrainIntersectOptions::Fidelity | intersectFidelity () const |
| Sets/gets the intersect fidelity for this pager. More... | |
| virtual void | setIntersectFidelity (DtTerrainIntersectOptions::Fidelity) |
Public Member Functions inherited from DtTerrainSourcePager | |
| DtTerrainSourcePager (DtVantageTerrainEngine *terrainEngine, osgEarth::MapNode *mapNode) | |
| Constructor. More... | |
| virtual | ~DtTerrainSourcePager () |
| Destructor. Deletes all pending commands and myTerrainSourceTracker. More... | |
| virtual void | setEarthFileName (const DtFilename &file) |
| Sets the earth file name that this pager was loaded from. More... | |
| virtual void | setCutoutFilename (const char *OptionalSuffixe=NULL) |
| This will set the cutout filename, passing a suffix will append it (ex. for ground cover layer) More... | |
| virtual bool | isContainedWithinCutoutCache (const osgEarth::GeoExtent &extent, const osgEarth::TileKey &key) |
| Used to determine if a cratering event takes place within a cutout cache region (i.e. More... | |
| virtual DtTerrainSourceTracker * | terrainSourceTracker () |
| Accessor for myTerrainSourceTracker. More... | |
| virtual void | processCommandQueue () |
| Takes incoming commands off the command queue and adds them to the priority-sorted command map. More... | |
| virtual void | setCurrentTime (const double ¤tTime) |
| Sets myCurrentTime for purposes of expiring old page-in commands. More... | |
| virtual unsigned long | numTriangles () const |
| Number of triangles paged in to this pager. More... | |
| 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. More... | |
| DtTerrainInterfaceConfig & | operator= (const DtTerrainInterfaceConfig &) |
| virtual bool | loadFromFile (const std::string &file, std::ostream &log) |
| Load the values from the given file. More... | |
| 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. More... | |
| virtual void | configure (DtTerrainInterfaceConfig &config, const std::string &matchText, bool ignoreUnspecified=true) const |
| Configure config using option matchText to match subconfigurations. More... | |
| virtual void | configure (DtTerrainInterfaceConfig &config, bool ignoreUnspecified=true) const |
| virtual void | configurePaths (std::string &path) const |
| Replace thee , , string in the supplied parameter path. More... | |
| virtual void | print (std::ostream &, bool printUnspecified=true) const |
| Print object to stream. More... | |
| DtString | prettyPrint () const |
| Routine to return a human readable form of the reader/writer variable. More... | |
| void | setName (const DtString &) |
| Set the name of the object. More... | |
| std::string | modelDefinitionPath () const |
| std::string | simCachePath () const |
| std::string | featureConfigFile () const |
Public Member Functions inherited from DtReaderWriter | |
| DtReaderWriter () | |
| default constructor More... | |
| DtReaderWriter (const DtString &name, DtReaderWriterRegistry *parentRegistry=NULL, bool readonly=false) | |
| real constructor Setting the readonly flag prevents object from writing itself to the stream. More... | |
| DtReaderWriter (const DtSymbolString &name, DtReaderWriterRegistry *parentRegistry=NULL, bool readonly=false) | |
| DtReaderWriter (const DtString &name, const DtReaderWriter &orig, DtReaderWriterRegistry *parentRegistry=NULL) | |
| pseudo-copy constructor More... | |
| DtReaderWriter (const DtSymbolString &name, const DtReaderWriter &orig, DtReaderWriterRegistry *parentRegistry=NULL) | |
| DtReaderWriter (const DtReaderWriter &, DtReaderWriterRegistry *parentRegistry=NULL) | |
| copy constructor More... | |
| const DtReaderWriter & | operator= (const DtReaderWriter &orig) |
| assignment operator More... | |
| bool | operator== (const DtReaderWriter &) const |
| Equivalence operator. More... | |
| bool | operator!= (const DtReaderWriter &rhs) |
| virtual | ~DtReaderWriter () |
| destructor More... | |
| virtual void | putSelf (std::string &fp, int indentLevel=0, bool writeUnspecified=false, const DtFilename &path=DtFilename::nullFilename()) |
| Top level call to write itself to file. More... | |
| virtual void | postPutSelf () |
| Called after either version of put self (file or environment). Default is no-op. More... | |
| virtual void | prePutSelf () |
| Called before either version of put self (file or environment). Default is no-op. More... | |
| virtual void | getSelf (DtlObjPtr args, const DtReaderWriter::SearchPaths &searchPaths=SearchPaths(), const DtVariableBindingsList &variableBindings=nullVariableReference()) |
| Top level to read itself from an input stream. More... | |
| virtual void | postGetSelf () |
| Called after either version of getSelf (mtl or environment). Default is no-op. More... | |
| virtual void | preGetSelf () |
| Called before either version of get self (file or environment). Default is no-op. More... | |
| virtual void | writeSelf (std::string &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. More... | |
| virtual DtSymbolString | name () const |
| Accessor for name of this readable/writable object. More... | |
| virtual void | addAlias (const DtSymbolString &alias) |
| Add an alias as an alternative name for this object. More... | |
| 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. More... | |
| bool | isReadonly () const |
| virtual void | reset () |
| For those reader/writer items that support it, resets the reader/writer value to original state Default is no-op. More... | |
| virtual int | alignment () const |
| For those items that are sent over the network via HLA, this will give the network alignment. More... | |
| virtual bool | variableIsBound () const |
| virtual void | unbindVariable () |
| Sets the myVariableIsBound flag to false. More... | |
| virtual const char * | readerWriterType () const |
| Used to supply a string type that this reader writer type is. More... | |
| virtual const char * | xmlType () const |
| std::string | debugText () const |
| virtual void | bindVariables (DtVariableBindingsList variableBindings) |
| Runs a variable binding pass on this reader writer and any of its children. More... | |
| 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. More... | |
| virtual bool | hasVariableReference () const |
| Returns true if this item or any item in the registry (recursive) is a variable reference. More... | |
| 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. More... | |
| virtual void | recordUpdateTime () const |
| Can be implemented in subclasses to stamp the time when updated. More... | |
| virtual bool | wasUpdatedSince (DtTime t) const |
| Can be implemented in subclasses to return true if an update occurred after the specified time. More... | |
| virtual bool | changedSinceLastChecked () |
| Returns true if this objects value has changed since the last time this function was called. More... | |
| virtual bool | peekChangedSinceLastChecked () const |
| Returns the value that changedSinceLastChecked would return but does not reset the internal flag. More... | |
| virtual void | putData (std::string &fp, int indentLevel=0) |
| Deriving class overrides these to get/put class specific data. More... | |
| virtual DtlObjPtr | getData (DtlObjPtr args, const SearchPaths &searchPaths, const DtVariableBindingsList &variableBindings) |
| virtual void | setValueSpecified (bool specified, bool recurse=false) |
| The specified flags are used for optional values. More... | |
| virtual bool | valueSpecified () const |
| virtual bool | isVariableReference () const |
| Specifies whether or not this reader writer is really a variable that is specified elsewhere. More... | |
| virtual void | setIsVariableReference (bool value) |
| virtual void | clearAllVariableReferenceFlags () |
| Clears out all variable reference flags from all readerwriter items in registry recursively. More... | |
| virtual DtSymbolString | variableName () const |
| The variable name, if this object is a variable reference. More... | |
| virtual void | setVariableName (const DtSymbolString variableName) |
| virtual const DtReaderWriter * | defaultRWValue () const |
| The default value to use if the reader/writer object is a variable and that variable is not specified. More... | |
| virtual DtReaderWriter * | defaultRWValue () |
| virtual void | setDefaultRWValue (DtReaderWriter *) |
| Previous default value, if exists, will be removed and replaced with a clone of the supplied variable. More... | |
| 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. More... | |
| const DtReaderWriterRegistry & | registry () const |
| Collection of child DtReaderWriter nodes owned by this object. More... | |
| DtReaderWriterRegistry & | registry () |
| virtual DtPropertyInterface * | property () |
| virtual const DtPropertyInterface * | property () const |
| virtual DtString | toXml () const |
| virtual DtRwVariableBindings * | generateVariableBindings () const |
| Iterates over the registry (recursively) and returns a variable bindings object that contains all the variables that are contained in this read/writer class. More... | |
| virtual bool | toXml (const DtFilename &) const |
| Writes contents of xml result to the given filename. More... | |
| virtual bool | fromXml (const DtString &) |
| Restores object from given xml string. Returns true if valid. More... | |
| virtual bool | fromXmlFile (const DtFilename &) |
| Restores object from given xml file. More... | |
| virtual void | putSelf (DtEnvironmentSP, DtEnvValueSP parent) const |
| virtual void | putData (DtEnvironmentSP, DtEnvValueSP value) const |
| Override to add attributes of actual data. More... | |
| virtual void | putVariableReference (DtEnvironmentSP, DtEnvValueSP value) const |
| Called when the item is a variable reference. More... | |
| 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. More... | |
| 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. More... | |
| virtual void | getVariableReference (DtEnvironmentSP, DtEnvValueSP value) |
| Called when the item is a variable reference. More... | |
Static Public Member Functions | |
| static osgTerrain::Locator * | createLocatorForKey (const osgEarth::TileKey &key, const osgEarth::Util::MapInfo &mapInfo) |
Static Public Member Functions inherited from DtTerrainInterfaceConfig | |
| static void | setModelDefinitionDefault (const std::string &) |
Static Public Member Functions inherited from DtReaderWriter | |
| static void | putIndent (std::string &fp, int indentLevel) |
| static const DtVariableBindingsList & | nullVariableReference () |
| static void | setPostGetSelfCallback (DtGetSelfCallbackFcn fcn, void *usrData) |
| static void | setPrePutSelfCallback (DtPutSelfCallbackFcn fcn, void *usrData) |
| static void | setPutIndent (bool) |
| static bool | putIndent () |
| static const char * | theXmlType () |
| The type that is used when archiving to an XML stream. More... | |
| static const DtFilename & | appPath () |
| Gets the current working directory. More... | |
| static void | setFactoryCreatorFunction (DtReaderWriterFactoryCreatorFcn fcn) |
| Sets the function to create the DtReaderWriterFactory. More... | |
| static void | createReaderWriterFactory () |
| static void | cleanupFactory () |
| static DtReaderWriterFactory * | factory () |
| static void | setOutputStream (DtOutputStream *stream) |
| static DtOutputStream & | outputStream () |
| static DtReaderWriter * | createFromXmlFile (const DtFilename &, bool createAsProperty=false) |
| Given a filename, returns a newly created reader/writer object from the object found within. More... | |
| static DtReaderWriter * | createFromXml (const DtString &, bool createAsProperty=false) |
| Given a xml string, returns a newly created reader/writer object from the object found within. More... | |
| static DtReaderWriter * | createFromEnvironment (DtEnvironmentSP, bool createAsProperty=false) |
| Given a xml environment, returns a newly created reader/writer object from the object found within. More... | |
| static DtString | getAttribute (DtEnvironmentSP env, const DtString &name, DtEnvValueSP root) |
| Gets the named attribute from a DtEnvValueSP. More... | |
Protected Member Functions | |
| virtual unsigned | queuePagesToReloadNotAlreadyLoaded (const osgEarth::GeoExtent &extent) |
| Looks for pages that cover the extent that haven't been loaded and queues them to be loaded. More... | |
| virtual bool | reloadTile (const osgEarth::TileKey &tileKey, bool isRemoval=false) |
| Reloads a tile and keeps track of cratering events that affect the tile. More... | |
| virtual bool | findFirstParent (osgEarth::TileKey &firstParentTileKey, const osgEarth::TileKey &tileKey) |
| Finds the TileKey of the first parent key for tiledata that is loaded. More... | |
| virtual bool | modifyMaskExtentsForFirstParent (const boost::shared_ptr< DtTileData > tileData, bool isRemoval=false) |
| Modifies the mask extents of the first parent tile so that intersection calls will use the hi-res tile data instead. More... | |
| virtual bool | pageInTile (const osgEarth::TileKey &tileKey, DtTerrainIntersectIDType intersectId=0) |
| Creates the requested osg heightfield, adds the heightfield as a collision shape to the bullet collision world, and adds the record of the tile to the pager's terrainSourceTracker for tracking and paging out purposes. More... | |
| virtual bool | pageOutTile (const osgEarth::TileKey &tileKey) |
| Removes the heightfield and the corresponding collision object from the collision world. More... | |
| virtual boost::shared_ptr < DtTileData > | createTileDataFromTileModel (const osgEarth::TileKey &tilekey, DtTerrainIntersectIDType intersectId, bool createIfAlreadyLoaded=false) const |
| Sets up and returns a new DtTileData object from an osgearth tile model. More... | |
| virtual boost::shared_ptr < DtTileData > | createTileDataFromHeightfield (const osgEarth::TileKey &tilekey, DtTerrainIntersectIDType intersectId, const osg::ref_ptr< const osg::HeightField > &heightfield) const |
| Sets up and returns a new DtTileData object from a heightfield. More... | |
| virtual boost::shared_ptr < DtTileData > | createTileDataFromGeometry (const osgEarth::TileKey &tilekey, DtTerrainIntersectIDType intersectId, const osg::ref_ptr< osg::Node > &geometry) const |
| Sets up and returns a new DtTileData object from geometry. More... | |
| virtual void | addTile (const osgEarth::TileKey &tilekey, const boost::shared_ptr< DtTileData > &tile) |
| Adds a configured tile data object to the terrain. More... | |
| virtual void | addEmptyTile (const osgEarth::TileKey &tilekey, DtTerrainIntersectIDType intersectId=0) |
| Used when a tile cannot be created by osgEarth's tileBuilder. More... | |
| virtual void | addMasks (const osgEarth::TileKey &tilekey, const boost::shared_ptr< DtTileData > &tile) |
| Called from addTile to process and add mask geometry to collision world. More... | |
Protected Member Functions inherited from DtTerrainSourcePager | |
| virtual void | addTerrain (const osg::ref_ptr< osg::Node > &node, DtVrfSimTerrainProcessor &) |
| Add terrain node. More... | |
| virtual void | removeTerrain (const osg::ref_ptr< osg::Node > &node) |
| Remove terrain node. More... | |
| virtual void | addTriangles (unsigned int) |
| Adds triangles to the triangle count. More... | |
| virtual void | removeTriangles (unsigned int) |
| Removes triangles from the triangle count. More... | |
| void | modifyDynamicTerrainExtent (const DtPoint &swCorner, const DtPoint &neCorner, bool isRemoval, unsigned amount=1) |
| Updates internal tracking of dynamic terrain elements for tiles at LOD 15. More... | |
| bool | hasDynamicTerrainWithinExtent (const DtPoint &swCorner, const DtPoint &neCorner) const |
| Determines whether the extent has dynamic terrain within it so it can be added to a new tile load. More... | |
| bool | modifyDynamicTerrain (const osgEarth::GeoExtent &dynamicTerrainExtent, const DtUUID &dynamicTerrainUUID, bool isRemoval) |
| bool | hasDynamicTerrainWithinExtent (std::vector< DtDynamicTerrainRtreeValue > &values, const osgEarth::GeoExtent &extent) |
Protected Member Functions inherited from DtReaderWriter | |
| virtual void | bindToRwAsVariable (const DtReaderWriter *rw) |
| Copies values from the specified DtReaderWriter. More... | |
Protected Attributes | |
| DtOsgEarthTerrainSourceTracker * | myOsgTracker |
| Associated Tracker. More... | |
| osg::ref_ptr< osgTerrain::Terrain > | myOsgTerrain |
| Used when a heightfield cannot be created. More... | |
| DtTerrainIntersectOptions::Fidelity | myFidelity |
| Which intersection fidelity this pager is setup for. More... | |
Protected Attributes inherited from DtTerrainSourcePager | |
| Mutex | myMutex |
| DtString | myName |
| tbb::atomic< bool > | myQuitFlag |
| Set when the paging should stop. More... | |
| DtVantageTerrainEngine * | myTerrainEngine |
| Pointer to the terrain implementation's terrain engine. More... | |
| DtTerrainSourceTracker * | myTerrainSourceTracker |
| The terrain source tracker that is updated by this pager. More... | |
| double | myCurrentTime |
| Time to compare a command's expire time to before executing the command. More... | |
| DtPagerCommandQueue | myCommandQueue |
| Thread-safe queue to put commands on. More... | |
| DtCommandPriorityMultimap | myPriorityCommandMultimap |
| Multimap of priorities to paging commands. More... | |
| unsigned long | myNumTriangles |
| Number of triangles paged in to this pager. More... | |
| TerrainRecord::Map | myTerrainRecords |
| boost::optional< short int > | myDefaultBulletObjectMask |
| osg::ref_ptr< osgEarth::MapNode > | myMapNode |
| Map node. More... | |
| DtFilename | myEarthFile |
| Path to earth file that was used to load this elevation source. More... | |
| boost::scoped_ptr< DtCutoutCache > | myCutoutCache |
| Cache for storing mask cutout areas and skirt geometry. More... | |
| DtTerrainTileMap | myPagedInTilesMap |
| Map of tileIds to terrainTiles. More... | |
| tbb::spin_rw_mutex | myTileKeysForReloadMutex |
| DtPendingTileKeyReloadSet | myTileKeysForReload |
| tbb::spin_rw_mutex | myDynamicTerrainRtreeMutex |
| DtDynamicTerrainRtree | myDynamicTerrainRtree |
| std::set< osgEarth::TileKey > | mySetOfTileKeysToReload |
Protected Attributes inherited from DtTerrainInterfaceConfig | |
| TString | myModelDefinitionPath |
| Parameter Name: model-definition-path. More... | |
| TString | mySimCachePath |
| Parameter Name: sim-cache-path Default: /cache/vrfsim. More... | |
| TString | myFeatureConfigFile |
| Parameter Name: features-config-file Default: /settings/featureconfig.txt. More... | |
Protected Attributes inherited from DtReaderWriter | |
| const DtSymbolString | myName |
| DtReaderWriterRegistry | myRegistry |
| DtReaderWriterRegistry * | myParentRegistry |
| bool | myValueSpecified |
| bool | myReadOnlyFlag |
| bool | myIsVariableReference |
| DtSymbolString | myVariableName |
| bool | myVariableIsBound |
| DtReaderWriter * | myDefaultValue |
| aliasContainer | myAliases |
| Container for the aliases which represent alternative names for the object. More... | |
| bool | myInvalid |
| Set to true if there is a problem reading this item. More... | |
| bool | myChangedFlag |
| Set to true when value changes Set to false when value checked with changedSinceLastChecked. More... | |
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. More... | |
| TInt | maxUnusedFeatures |
| Parameter Name: max-unused-features Parameter Description: Max number of unused features to store in memory. More... | |
| 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. More... | |
| TInt | featuresHighestLoadLOD |
| Parameter Name: features-highest-load-LOD Parameter Description: The smallest tile (highest LOD) for loading features. More... | |
| TInt | featuresLowestLoadLOD |
| Parameter Name: features-lowest-load-LOD Parameter Description: The largest tile (smallest LOD) for loading features. More... | |
| TInt | featuresPerTileTarget |
| Parameter Name: features-per-tile-target Parameter Description: Target number of features per tile. More... | |
| TInt | featuresMaxIndexLOD |
| Parameter Name: features-max-index-LOD Parameter Description: Smallest tile LOD level to index features. More... | |
| 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. More... | |
| 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. More... | |
| TBool | deduplicateFeatures |
| Parameter Name: deduplicate-features Parameter Description: Remove duplicate features. More... | |
| TBool | cacheLastFeatureTile |
| Parameter Name: cache-last-feature-tile Parameter Description: Cache last used feature tile Parameter Default: True. More... | |
| TBool | loadTerraPageImagery |
| Parameter Name: load-terra-page-imagery Parameter Description: Whether or not to have the back-end load imagery when loading terra page databases This will use less memory but will disable soil types Parameter Default: True. More... | |
| TBool | loadTerraPageLocalMaterials |
| Parameter Name: load-terra-page-local-materials Parameter Description: Whether or not to have the back-end load local materials when loading terra page databases This will use less memory and may disable some soil types, but not all Parameter Default: False. More... | |
| TInt | pathFinderMaxSize |
| Parameter Name: pathfinder-max-features Parameter Description: The max size of a DtAStarGraph. More... | |
| 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. More... | |
| 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. More... | |
| 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. More... | |
| TInt | pathFinderMinVertexSearch |
| Parameter Name: pathfinder-min-vertex-search Parameter Description: The minimum number of vertices the graph search will use to before giving up. More... | |
| TReal | pathFinderDotProductDistanceThreshold |
| Parameter Name: pathfinder-dot-product-distance-threshold Parameter Description: Heuristic which measures progress towards the destination. More... | |
| TReal | pathFinderMinSearchRadius |
| Parameter Name: pathfinder-min-search-radius Parameter Description: Minumum distance path finder will search away from straight line path from source to destination before giving up. More... | |
| TInt | triangleThreshold |
| Parameter Name: num-triangles-threshold Parameter Description: Maximum number of triangles. More... | |
| TInt | cacheOnlyMaxLod |
| Parameter Name: cache-only-max-lod Parameter Description: Max level of detail to use when in cache-only mode. More... | |
| TBool | loadImagery |
| Parameter Name: load-imagery Parameter Description: Whether the terrain system will load imagery it doesn't need. More... | |
| TInt | blockingIntersectPageInPriority |
| Parameter Name: blocking-intersect-page-in-priority Parameter Description: Priority for paging in data for blocking intersect requests. More... | |
| TInt | intersectPageInPriority |
| Parameter Name: intersect-page-in-priority Parameter Description: Priority for paging in data for non-blocking intersect requests. More... | |
| TInt | pageOutPriority |
| Parameter Name: page-out-priority Parameter Description: Priority for paging out data. More... | |
| TInt | defaultPreloadPriority |
| Parameter Name: default-preload-priority Parameter Description: Default priority for preload geometry. More... | |
| 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. More... | |
| TBool | useS57ForTerrainGeneration |
| Parameter Name: use-S57-for-terrain-generation Parameter Description: Flag for S57 to terrain and soil types. More... | |
| TBool | oceanLayerPresent |
| Parameter Name: ocean-layer-present Enable/disable ocean layer-present Default: True. More... | |
| TReal | seaLevel |
| Parameter Name: sea-level Sea level in meters Default: More... | |
| TReal | seaFloor |
| Parameter Name: sea-floor Sea floor in meters. More... | |
| TBool | useSoundingPoints |
| Parameter Name: use-sounding-points Default: True. More... | |
| TBool | pageFeatures |
| Parameter Name: page-features Default: True. More... | |
| TString | LOSFeaturesQueryName |
| Parameter Name: los-features-query Default: MAK_LOS_OBSTACLE. More... | |
| TReal | featuresMinUnloadTime |
| Parameter Name: features-min-unload-time Default: 15. More... | |
| TInt | terrainMinUnloadIntersectDiff |
| Parameter Name: terrain-min-unload-intersect-diff Default: 50. More... | |
| TInt | minElevationIndexLOD |
| Parameter Name: min-elevation-index-lod Parameter Description: Minimum LOD to check for elevation intersections in. More... | |
| TInt | maxElevationIndexLOD |
| Parameter Name: max-elevation-index-lod Parameter Description: Maximum LOD to check for elevation intersections in. More... | |
| TReal | elevationTriangleOutputMergeTolerance |
| Parameter Name: elevation-triangle-output-merge-tolerance Parameter Description: Error tolerance between gui correlated surface and triangles output in DtTerrainInterface::trianglesInArea. More... | |
| TReal | elevationIntersectTriangleMergeTolerance |
| Parameter Name: elevation-intersect-triangle-merge-tolerance Parameter Description: Error tolerance between gui correlated surface and triangles output when doing terrain intersections. More... | |
| TReal | maxChordLengthBeforeSplit |
| Parameter Name: max-chord-length-before-split Parameter Description: Maximum length of chords before they can be split. More... | |
| TInt | maxElevationChordSplitTestLOD |
| Parameter Name: max-elevation-chord-split-test-lod Parameter Description: When doing intersections over very large areas there may be errors introduced due to coordinate system conversions. More... | |
| TInt | lowFidelityIntersectionLOD |
| Parameter Name: low-fidelity-intersection-lod Parameter Description: LOD to use when doing low fidelity terrain intersections. More... | |
| TString | pluginsDirectory |
| Parameter Name: plugins-directory Default: ../(plugins|plugins64)/(release|debug) More... | |
Protected Types inherited from DtTerrainSourcePager | |
| typedef boost::geometry::model::point < double, 2, boost::geometry::cs::geographic < boost::geometry::degree > > | DtDynamicTerrainRtreeCoord |
| typedef boost::geometry::model::box < DtDynamicTerrainRtreeCoord > | DtDynamicTerrainRtreeBox |
| typedef std::pair < DtDynamicTerrainRtreeBox, boost::shared_ptr < DynamicTerrainNode > > | DtDynamicTerrainRtreeValue |
| typedef boost::geometry::index::rtree < DtDynamicTerrainRtreeValue, boost::geometry::index::quadratic< 16 > > | DtDynamicTerrainRtree |
| typedef std::set < DtPendingTileKeyReload > | DtPendingTileKeyReloadSet |
| typedef tbb::spin_rw_mutex | Mutex |
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 |
| static bool | thePutIndent |
| static DtOutputStream * | theOutputStream |
DtOsgEarthTerrainSourcePager is a derived terrainSourcePager that handles a streaming terrain source.
| DtOsgEarthTerrainSourcePager::DtOsgEarthTerrainSourcePager | ( | DtVantageTerrainEngine * | terrainEngine, |
| osgEarth::MapNode * | mapNode | ||
| ) |
|
virtual |
|
virtual |
Creates and returns a DtOsgEarthTerrainSourceTracker.
Implements DtTerrainSourcePager.
|
virtual |
Sets/gets the intersect fidelity for this pager.
|
virtual |
|
virtual |
|
virtual |
Processes commands from the priority-sorted command map.
Executes the first command and returns, or expires commands until it finds a command to execute.
Reimplemented from DtTerrainSourcePager.
|
virtual |
Calls pageIntile for a single tile in the list and then removes it from the list.
| tileIds | List of tileIds to page in. When a tile is successfully paged in, it is removed from this list. |
| intersectId | Optional intersectId to seed new tiles with. |
|
virtual |
Pages out the requested tiles, removes the corresponding collision objects from the collision world, decrements the terrainEngine's triangle count, and decrements the terrainEngine's pending removal command count.
| tilesToRemove | List of tileIds to page out. |
|
virtual |
Updates the DtOsgEarthTerrainSourceTracker.
Implements DtTerrainSourcePager.
|
virtual |
Calls processCommandQueue to add new commands into the priority-sorted command map.
Then returns the priority of the highest-priority pending command.
Reimplemented from DtTerrainSourcePager.
Called by createTerrainSourceTracker.
Determines lod to use for terrain source tracker, based on myMapNode.
|
virtual |
osgearth terrain options.
|
virtual |
Find all the tiles that intersect the geometry which are not paged in.
| unsigned DtOsgEarthTerrainSourcePager::reloadQueuedPages | ( | ) |
Reloads the queued pages.
|
virtual |
Reimplemented from DtTerrainSourcePager.
|
static |
|
protectedvirtual |
Looks for pages that cover the extent that haven't been loaded and queues them to be loaded.
|
protectedvirtual |
Reloads a tile and keeps track of cratering events that affect the tile.
| tileKey | the TileKey of the tile to reload |
| isRemoval | true if the crater is being removed, false if its being added |
| numEvents | the number of craters for the reload |
|
protectedvirtual |
Finds the TileKey of the first parent key for tiledata that is loaded.
| firstParentTileKey | the first parent key that was found |
| tileKey | the key looking for the first parent |
|
protectedvirtual |
Modifies the mask extents of the first parent tile so that intersection calls will use the hi-res tile data instead.
| tileData | the hi-res tile data to add to the mask extents for the parent tile |
| isRemoval | is set to true if the crater is being removed else set to false if its being added return true if a parent was found, false otherwise |
|
protectedvirtual |
Creates the requested osg heightfield, adds the heightfield as a collision shape to the bullet collision world, and adds the record of the tile to the pager's terrainSourceTracker for tracking and paging out purposes.
| tileIds | The tileKey to create heightfield for. |
| intersectId | Optional parameter to create the tiles with a starting "lastUsed" value of intersectId. |
|
protectedvirtual |
Removes the heightfield and the corresponding collision object from the collision world.
Also removes the tracker's reference to this tile, decrements the terrainEngine's number of triangles, and number of pending page out commands.
|
protectedvirtual |
Sets up and returns a new DtTileData object from an osgearth tile model.
| tilekey | Tile to create. |
| intersectId | IntersectId to seed the tileData with for page-out priority. |
| createIfAlreadyLoaded | setting to true forces it create tile data regardless if it is already loaded. |
|
protectedvirtual |
Sets up and returns a new DtTileData object from a heightfield.
| tilekey | Tile to create. |
| intersectId | IntersectId to seed the tileData with for page-out priority. |
| heightfield | Elevation data for tile. |
|
protectedvirtual |
Sets up and returns a new DtTileData object from geometry.
| tilekey | Tile to create. |
| intersectId | IntersectId to seed the tileData with for page-out priority. |
| geometry | Geometry data for tile. |
|
protectedvirtual |
Adds a configured tile data object to the terrain.
| tilekey | Key for the area which is being enabled on the tile. This is not necessarily the same as the key for the tile model in the tile data. If it is not then it is a descendant of that key. |
| tile | Tile data to add. The same tile data may be added multiple times, each time with different tilekey parameter because different subareas of the tile data are being paged in. This is because if we page in tile data due to intersections in one area, there may be higher resolution data in other areas so we have to keep track of which areas have been checked. This is all done in createTileDataFromTileModel. |
|
protectedvirtual |
Used when a tile cannot be created by osgEarth's tileBuilder.
Creates a Terrain Tile with all heights at 0.
|
protectedvirtual |
Called from addTile to process and add mask geometry to collision world.
|
protected |
Associated Tracker.
|
protected |
Used when a heightfield cannot be created.
|
protected |
Which intersection fidelity this pager is setup for.