VR-Forces 5.0.1 Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Member Functions
DtBoundingVolumeTerrainSourcePager Class Referenceabstract

DtBoundingVolumeTerrainSourcePager is a derived terrainSourcePager that handles a source such as metaflight, or paged .ive.

Inheritance diagram for DtBoundingVolumeTerrainSourcePager:
Inheritance graph
[legend]

Public Member Functions

 DtBoundingVolumeTerrainSourcePager (DtVantageTerrainEngine *terrainEngine)
 
virtual ~DtBoundingVolumeTerrainSourcePager ()
 
virtual bool pageInGeometry (const DtTerrainPagingGeometryPtr geometry, DtTerrainIntersectIDType intersectId=0)=0
 
virtual bool pageOutNodes (std::list< DtNodeId > &nodesToRemove)=0
 
virtual void updatePageTracker (DtTerrainIntersectIDType intersectId=0)=0
 
- Public Member Functions inherited from DtTerrainSourcePager
 DtTerrainSourcePager (DtVantageTerrainEngine *terrainEngine, osgEarth::MapNode *mapNode)
 
virtual ~DtTerrainSourcePager ()
 
virtual bool init ()
 
virtual void tick ()
 
virtual void setEarthFileName (const DtFilename &file)
 
virtual void setCutoutFilename (const char *OptionalSuffixe=NULL)
 
virtual bool isContainedWithinCutoutCache (const osgEarth::GeoExtent &extent, const osgEarth::TileKey &key)
 
virtual DtTerrainSourceTrackercreateTerrainSourceTracker (DtVantageTerrainEngine *)=0
 
virtual DtTerrainSourceTrackerterrainSourceTracker ()
 
virtual int highestPriorityPendingWork ()
 
virtual void processCommandQueue ()
 
virtual void setCurrentTime (const double &currentTime)
 
virtual unsigned long numTriangles () const
 
virtual bool quitFlagSet () const
 
virtual void setQuit (bool)
 
virtual const Coordinate_SystemlocalCS () const
 
virtual void setLabel (const DtString &)
 
virtual DtString label () const
 
virtual unsigned queuePageReloadsWithinExtent (const osgEarth::GeoExtent &extent, const DtUUID &dynamicUuid, bool isRemoval=false)
 
virtual void clearCutoutCache ()
 
virtual void clearTerrainEngineReference ()
 
- Public Member Functions inherited from DtTerrainInterfaceConfig
 DtTerrainInterfaceConfig (const std::string &matchPattern="")
 
DtTerrainInterfaceConfigoperator= (const DtTerrainInterfaceConfig &)
 
virtual bool loadFromFile (const std::string &file, std::ostream &log)
 
virtual bool loadFromFile (const std::string &file)
 
virtual bool loadFromSourceSpecificFile (const std::string &file, const std::string &ext="mtl")
 
virtual void configure (DtTerrainInterfaceConfig &config, const std::string &matchText, bool ignoreUnspecified=true) const
 
virtual void configure (DtTerrainInterfaceConfig &config, bool ignoreUnspecified=true) const
 
virtual void configurePaths (std::string &path) const
 
virtual void print (std::ostream &, bool printUnspecified=true) const
 
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 ()
 
 DtReaderWriter (const DtString &name, DtReaderWriterRegistry *parentRegistry=NULL, bool readonly=false)
 
 DtReaderWriter (const DtSymbolString &name, DtReaderWriterRegistry *parentRegistry=NULL, bool readonly=false)
 
 DtReaderWriter (const DtString &name, const DtReaderWriter &orig, DtReaderWriterRegistry *parentRegistry=NULL)
 
 DtReaderWriter (const DtSymbolString &name, const DtReaderWriter &orig, DtReaderWriterRegistry *parentRegistry=NULL)
 
 DtReaderWriter (const DtReaderWriter &, DtReaderWriterRegistry *parentRegistry=NULL)
 
const DtReaderWriteroperator= (const DtReaderWriter &orig)
 
bool operator== (const DtReaderWriter &) const
 
bool operator!= (const DtReaderWriter &rhs)
 
virtual ~DtReaderWriter ()
 
virtual void putSelf (std::string &fp, int indentLevel=0, bool writeUnspecified=false, const DtFilename &path=DtFilename::nullFilename())
 
virtual void postPutSelf ()
 
virtual void prePutSelf ()
 
virtual void getSelf (DtlObjPtr args, const DtReaderWriter::SearchPaths &searchPaths=SearchPaths(), const DtVariableBindingsList &variableBindings=nullVariableReference())
 
virtual void postGetSelf ()
 
virtual void preGetSelf ()
 
virtual void writeSelf (std::string &fp, int indentLevel=0, bool writeUnspecified=false, const DtFilename &path=DtFilename::nullFilename())
 
virtual DtSymbolString name () const
 
virtual void addAlias (const DtSymbolString &alias)
 
virtual void addAlias (const DtString &alias)
 
virtual bool hasAlias (const DtSymbolString &alias)
 
virtual const aliasContaineraliases () const
 
virtual void setReadonly (bool flag)
 
bool isReadonly () const
 
virtual void reset ()
 
virtual int alignment () const
 
virtual bool variableIsBound () const
 
virtual void unbindVariable ()
 
virtual const charreaderWriterType () const
 
virtual const charxmlType () const
 
std::string debugText () const
 
virtual void bindVariables (DtVariableBindingsList variableBindings)
 
virtual std::list
< DtVariableNameType
unboundVariables () const
 
bool invalid () const
 
virtual bool hasChild (const DtReaderWriter *p) const
 
virtual bool hasVariableReference () const
 
virtual void bindLocalVariables (const DtVariableBindingsList &variableBindings)
 
virtual void recordUpdateTime () const
 
virtual bool wasUpdatedSince (DtTime t) const
 
virtual bool changedSinceLastChecked ()
 
virtual bool peekChangedSinceLastChecked () const
 
virtual void putData (std::string &fp, int indentLevel=0)
 
virtual DtlObjPtr getData (DtlObjPtr args, const SearchPaths &searchPaths, const DtVariableBindingsList &variableBindings)
 
virtual void setValueSpecified (bool specified, bool recurse=false)
 
virtual bool valueSpecified () const
 
virtual bool isVariableReference () const
 
virtual void setIsVariableReference (bool value)
 
virtual void clearAllVariableReferenceFlags ()
 
virtual DtSymbolString variableName () const
 
virtual void setVariableName (const DtSymbolString variableName)
 
virtual const DtReaderWriterdefaultRWValue () const
 
virtual DtReaderWriterdefaultRWValue ()
 
virtual void setDefaultRWValue (DtReaderWriter *)
 
virtual bool checkAndSetDefaultRWValue (DtlObjPtr args, const DtReaderWriter::SearchPaths &searchPaths=SearchPaths(), const DtVariableBindingsList &variableBindings=nullVariableReference())
 
const DtReaderWriterRegistryregistry () const
 
DtReaderWriterRegistryregistry ()
 
virtual DtPropertyInterfaceproperty ()
 
virtual const DtPropertyInterfaceproperty () const
 
virtual DtString toXml () const
 
virtual DtRwVariableBindingsgenerateVariableBindings () const
 
virtual bool toXml (const DtFilename &) const
 
virtual bool fromXml (const DtString &)
 
virtual bool fromXmlFile (const DtFilename &)
 
virtual void putSelf (DtEnvironmentSP, DtEnvValueSP parent) const
 
virtual void putData (DtEnvironmentSP, DtEnvValueSP value) const
 
virtual void putVariableReference (DtEnvironmentSP, DtEnvValueSP value) const
 
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())
 
virtual void unrecognizedItem (const DtEnvironmentSP env, const DtEnvValueSP root, const SearchPaths &searchPaths, const DtVariableBindingsList &varBindings)
 
virtual void getVariableReference (DtEnvironmentSP, DtEnvValueSP value)
 

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 )()
 
- 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 chartheXmlType ()
 
static const DtFilename & appPath ()
 
static void setFactoryCreatorFunction (DtReaderWriterFactoryCreatorFcn fcn)
 
static void createReaderWriterFactory ()
 
static void cleanupFactory ()
 
static DtReaderWriterFactoryfactory ()
 
static void setOutputStream (DtOutputStream *stream)
 
static DtOutputStream & outputStream ()
 
static DtReaderWritercreateFromXmlFile (const DtFilename &, bool createAsProperty=false)
 
static DtReaderWritercreateFromXml (const DtString &, bool createAsProperty=false)
 
static DtReaderWritercreateFromEnvironment (DtEnvironmentSP, bool createAsProperty=false)
 
static DtString getAttribute (DtEnvironmentSP env, const DtString &name, DtEnvValueSP root)
 
- Public Attributes inherited from DtTerrainInterfaceConfig
TInt maxNetworkThreads
 
TInt maxUnusedFeatures
 
TInt areaPageTableLoadingThreads
 
TInt featuresHighestLoadLOD
 
TInt featuresLowestLoadLOD
 
TInt featuresPerTileTarget
 
TInt featuresMaxIndexLOD
 
TInt minFeaturesToIndexTile
 
TReal featuresIndexRatio
 
TBool deduplicateFeatures
 
TBool cacheLastFeatureTile
 
TBool loadTerraPageImagery
 
TBool loadTerraPageLocalMaterials
 
TInt pathFinderMaxSize
 
TInt pathFinderPageTableDepth
 
TReal pathFinderLoadTimeout
 
TReal pathFinderVertexTolerance
 
TInt pathFinderMinVertexSearch
 
TReal pathFinderDotProductDistanceThreshold
 
TReal pathFinderMinSearchRadius
 
TInt triangleThreshold
 
TInt cacheOnlyMaxLod
 
TBool loadImagery
 
TInt blockingIntersectPageInPriority
 
TInt intersectPageInPriority
 
TInt pageOutPriority
 
TInt defaultPreloadPriority
 
TVector spatialSubdivisionDimensions
 
TBool useS57ForTerrainGeneration
 
TBool oceanLayerPresent
 
TReal seaLevel
 
TReal seaFloor
 
TBool useSoundingPoints
 
TBool pageFeatures
 
TReal featuresMinUnloadTime
 
TInt terrainMinUnloadIntersectDiff
 
TInt minElevationIndexLOD
 
TInt maxElevationIndexLOD
 
TReal elevationTriangleOutputMergeTolerance
 
TReal elevationIntersectTriangleMergeTolerance
 
TReal maxChordLengthBeforeSplit
 
TInt maxElevationChordSplitTestLOD
 
TInt lowFidelityIntersectionLOD
 
TString pluginsDirectory
 
TInt featureIntersectionMode
 
TBool activePagerTbbMode
 
TInt nbTerrainThread
 
TInt minElevationTileLoadingLod
 
- 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
 
- Protected Member Functions inherited from DtTerrainSourcePager
virtual unsigned int addTerrain (const osg::ref_ptr< osg::Node > &node, DtVrfSimTerrainProcessor &, const char *debugWhoisCalling="unknown")
 
virtual unsigned int removeTerrain (const osg::ref_ptr< osg::Node > &node, const char *debugWhoisCalling="unknown")
 
virtual void addTriangles (unsigned int, const char *debugString="unknown")
 
virtual void removeTriangles (unsigned int, const char *debugString="unknown")
 
void modifyDynamicTerrainExtent (const DtPoint &swCorner, const DtPoint &neCorner, bool isRemoval, unsigned amount=1)
 
bool hasDynamicTerrainWithinExtent (const DtPoint &swCorner, const DtPoint &neCorner) const
 
bool modifyDynamicTerrain (const osgEarth::GeoExtent &dynamicTerrainExtent, const DtUUID &dynamicTerrainUUID, bool isRemoval)
 
bool hasDynamicTerrainWithinExtent (std::vector< DtDynamicTerrainRtreeValue > &values, const osgEarth::GeoExtent &extent)
 
void eraseCommand (DtCommandPriorityMultimap::iterator &itr)
 
void eraseAndInsertCommand (DtCommandPriorityMultimap::iterator &itr)
 
bool getFirsCommand (DtCommandPriorityMultimap::iterator &itrToProcess)
 
- Protected Member Functions inherited from DtReaderWriter
virtual void bindToRwAsVariable (const DtReaderWriter *rw)
 
- Protected Attributes inherited from DtTerrainSourcePager
Mutex myMutex
 
DtString myName
 
tbb::atomic< boolmyQuitFlag
 
DtVantageTerrainEnginemyTerrainEngine
 
DtTerrainSourceTrackermyTerrainSourceTracker
 
double myCurrentTime
 
DtPagerCommandQueue myCommandQueue
 
DtCommandPriorityMultimap myPriorityCommandMultimap
 
unsigned long myNumTriangles
 
tbb::spin_mutex myTerrainRecordsMutex
 
TerrainRecord::Map myTerrainRecords
 
boost::optional< short intmyDefaultBulletObjectMask
 
osgEarth::MapNode * myMapNode
 
const osgEarth::Map * myMap
 
const osgEarth::Profile * myMapProfile
 
DtFilename myEarthFile
 
boost::scoped_ptr< DtCutoutCachemyCutoutCache
 
tbb::spin_rw_mutex myPagedInTilesMapMutex
 
DtTerrainTileMap myPagedInTilesMap
 
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
 
TString mySimCachePath
 
TString myFeatureConfigFile
 
- Protected Attributes inherited from DtReaderWriter
const DtSymbolString myName
 
DtReaderWriterRegistry myRegistry
 
DtReaderWriterRegistrymyParentRegistry
 
bool myValueSpecified
 
bool myReadOnlyFlag
 
bool myIsVariableReference
 
DtSymbolString myVariableName
 
bool myVariableIsBound
 
DtReaderWritermyDefaultValue
 
aliasContainer myAliases
 
bool myInvalid
 
bool myChangedFlag
 
- Static Protected Attributes inherited from DtTerrainSourcePager
static tbb::spin_rw_mutex myMultiMapMutex
 
- Static Protected Attributes inherited from DtReaderWriter
static DtString theUnspecifiedValue
 
static DtGetSelfCallbackInfo thePostGetSelfCallback
 
static DtPutSelfCallbackInfo thePrePutSelfCallback
 
static const DtVariableBindingsList theEmptyVariableBindingsList
 
static bool theCreatorFcnSet
 
static DtReaderWriterFactorytheFactory
 
static
DtReaderWriterFactoryCreatorFcn 
theFactoryCreatorFcn
 
static bool thePutIndent
 
static DtOutputStream * theOutputStream
 

Constructor & Destructor Documentation

DtBoundingVolumeTerrainSourcePager::DtBoundingVolumeTerrainSourcePager ( DtVantageTerrainEngine terrainEngine)
virtual DtBoundingVolumeTerrainSourcePager::~DtBoundingVolumeTerrainSourcePager ( )
virtual

Member Function Documentation

virtual bool DtBoundingVolumeTerrainSourcePager::pageInGeometry ( const DtTerrainPagingGeometryPtr  geometry,
DtTerrainIntersectIDType  intersectId = 0 
)
pure 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.

Implemented in DtThreeDTileTerrainSourcePager, DtPagedNode2TerrainSourcePager, DtTerraPageTerrainSourcePager, DtMetaflightTerrainSourcePager, and DtPagedLodTerrainSourcePager.

virtual bool DtBoundingVolumeTerrainSourcePager::pageOutNodes ( std::list< DtNodeId > &  nodesToRemove)
pure 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.

Implemented in DtPagedNode2TerrainSourcePager, DtThreeDTileTerrainSourcePager, DtTerraPageTerrainSourcePager, DtPagedLodTerrainSourcePager, and DtMetaflightTerrainSourcePager.

virtual void DtBoundingVolumeTerrainSourcePager::updatePageTracker ( DtTerrainIntersectIDType  intersectId = 0)
pure virtual

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

Document ID: Generated on Mon Jun 20 00:38:30 EDT 2022 from SVN revision 244029
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)