![]() |
VR-Forces 4.10 Class Documentation
|
Base class for Terrain Source trackers. More...
Public Member Functions | |
| DtTerrainSourceTracker (DtVantageTerrainEngine *, DtPagerCommandQueue *commandQueue, osgEarth::MapNode *mapNode) | |
| CTOR. More... | |
| virtual | ~DtTerrainSourceTracker () |
| DTOR. More... | |
| virtual DtTerrainInterfaceConfig & | configOptions () |
| virtual const DtTerrainInterfaceConfig & | configOptions () const |
| virtual bool | init (DtTerrainSourcePager &) |
| Called after options are set. More... | |
| virtual boost::optional < DtTerrainIntersectOptions::Fidelity > | intersectFidelity () const |
| Fidelity that this tracker is configured for. More... | |
| virtual bool | dataAvailable (DtPagingMetaDataPtr metaData, DtTerrainPagingGeometryPtr geometry)=0 |
| virtual void | pageInData (DtPagingMetaDataPtr metaData, DtTerrainPagingGeometryPtr geometry)=0 |
| Page in data within geometry. More... | |
| virtual bool | canPageOutData (DtTerrainIntersectIDType intersectId)=0 |
| virtual DtTerrainIntersectIDType | findOldestPagedData (unsigned int &numTriangles)=0 |
| Finds the least-recently-used tile and set myOldestPagedObject to it. More... | |
| virtual void | pageOutOldestData (const int priority)=0 |
| Adds a page out command for the least-recently-used tileID to myCommandQueue. More... | |
| virtual void | addNodesToCollisionMapping (DtNodeId node, DtCollisionObjectList *collObjList) |
| virtual void | removeNodeToCollisionMappings (DtNodeId node) |
| virtual DtCollisionObjectList | collisionObjectsForNode (DtNodeId node) |
| virtual osgEarth::MapNode * | mapNode () const |
| Access osgEarth::MapNode object. More... | |
| virtual const osgEarth::Profile * | profile () const |
| Access osgEarth::profile object. More... | |
| virtual const Coordinate_System * | localCS () const |
| Return the local coordinate system. More... | |
| virtual void | setLabel (const DtString &) |
| virtual void | printInfo () const |
| virtual void | getPageOutData (DtNodeBoundingList &nodeBoundingList) |
| Return a list of bounding sphere that represent the the paged in tiles. More... | |
| virtual void | getPageInData (DtNodeBoundingList &nodeBoundingList) |
| Return a list of bounding sphere that represent the the paged out tiles. More... | |
| virtual void | getProceduralTreeTile (DtDebugDrawTerrainOutputInterface::terrainLineList &nodeBoundingList) |
| Return a list of tiles that represent the ground cover loaded. More... | |
| virtual unsigned | getMaxLODForBilinearIntersection () const |
| virtual double | intersetionTriangleMergeTolerance () const |
| virtual bool | useLandCoverData () const |
| Return true if the current tracker use land cover data. More... | |
| virtual void | getSoilFromString (const std::string &soilType, DtSurface &surface) const |
| virtual double | triangleOutputMergeTolerance () const |
| virtual unsigned | minElevationIndexLOD () const |
| virtual unsigned | maxElevationIndexLOD () const |
| virtual unsigned | maxLOD () const |
| Return the max lod. More... | |
| virtual bool | useRawElevation () const |
| Return true if the current tracker use raw elevation. More... | |
| virtual osgEarth::TileKey | getBestTileKey (const osgEarth::TileKey &) const |
| Return the best tile key to use (based on the tracker) for a pass tilekey. More... | |
| virtual bool | findTileInCache (const DtTerrainPagingGeometry *geometry, std::vector< boost::shared_ptr< DtTileData > > &data, const DtChord *chord=NULL) const |
| Check it the geometry intersect the tileDataCache (when we know the geometry is a chord, pass the chord pointer as the last optional parameters) More... | |
| virtual void | addTileToCache (const boost::shared_ptr< DtTileData > &data, const DtChord *chord=NULL) |
| Add a tile that was not find in the cache (by findTileInCache) (when we know the geometry is a chord, pass the chord pointer as the last optional parameters) More... | |
| virtual void | clearTileCache () |
| Clear the cache. More... | |
Protected Attributes | |
| DtString | myLabel |
| DtTerrainInterfaceConfig | myConfig |
| DtPagerCommandQueue * | myCommandQueue |
| DtNodeToCollObjMMap | myNodeToCollObjMMap |
| tbb::spin_rw_mutex | myMutex |
| tbb::spin_rw_mutex | myTileCacheMutex |
| DtVantageTerrainEngine * | myVantageTerrainEngine |
| const osg::ref_ptr < osgEarth::MapNode > | myMapNode |
| map node for whole terrain More... | |
| const osgEarth::Map * | myMap |
| const osgEarth::Profile * | myMapProfile |
| tileDataCacheVector | myTileDataCache |
| Tile Data cache to speed up intersections. More... | |
| tbb::atomic< int > | myTileCacheHit |
| Stats for cache. More... | |
| tbb::atomic< int > | myTileCacheQuery |
| DtTerrainSourcePager * | myPager |
Base class for Terrain Source trackers.
Determines if the necessary data To perform an intersection is currently available. Can also create commands for a DtTerrainSourceTracker to actually perform the paging.
| DtTerrainSourceTracker::DtTerrainSourceTracker | ( | DtVantageTerrainEngine * | , |
| DtPagerCommandQueue * | commandQueue, | ||
| osgEarth::MapNode * | mapNode | ||
| ) |
CTOR.
|
virtual |
DTOR.
|
virtual |
|
virtual |
|
virtual |
Called after options are set.
Returns false if error.
Reimplemented in DtOsgEarthTerrainSourceTracker, and DtOsgEarthGroundCoverSourceTracker.
|
virtual |
Fidelity that this tracker is configured for.
The default returns an empty optional which means that this tracker will be used for all terrain intersections. If value is returned then this tracker will only be used for intersections which specify that fidelity.
Reimplemented in DtOsgEarthTerrainSourceTracker.
|
pure virtual |
Implemented in DtOsgEarthTerrainSourceTracker, DtBoundingVolumeTerrainSourceTracker, and DtOsgEarthGroundCoverSourceTracker.
|
pure virtual |
Page in data within geometry.
Determines which tiles are within the geometry and adds a page in command to myCommandQueue to page in any tiles within the geometry that have not yet been paged in.
| geometry | The geometry to page in data within. |
| intersectId | Id to assign to the page in command to seed tileData for newly paged-in tiles. |
| priority | Priority to use for commands generated by this call. |
Implemented in DtOsgEarthTerrainSourceTracker, DtBoundingVolumeTerrainSourceTracker, and DtOsgEarthGroundCoverSourceTracker.
|
pure virtual |
|
pure virtual |
Finds the least-recently-used tile and set myOldestPagedObject to it.
| numTrianglesOut | The number of triangles the least-recently-used tileId represents in the collision world. |
Implemented in DtOsgEarthTerrainSourceTracker, DtBoundingVolumeTerrainSourceTracker, and DtOsgEarthGroundCoverSourceTracker.
|
pure virtual |
Adds a page out command for the least-recently-used tileID to myCommandQueue.
| priority | Priority to use for commands generated by this call. |
Implemented in DtOsgEarthTerrainSourceTracker, DtBoundingVolumeTerrainSourceTracker, and DtOsgEarthGroundCoverSourceTracker.
|
virtual |
|
virtual |
|
virtual |
|
virtual |
Access osgEarth::MapNode object.
|
virtual |
Access osgEarth::profile object.
|
virtual |
Return the local coordinate system.
|
virtual |
|
virtual |
Reimplemented in DtBoundingVolumeTerrainSourceTracker.
|
virtual |
Return a list of bounding sphere that represent the the paged in tiles.
Reimplemented in DtBoundingVolumeTerrainSourceTracker.
|
virtual |
Return a list of bounding sphere that represent the the paged out tiles.
Reimplemented in DtBoundingVolumeTerrainSourceTracker.
|
virtual |
Return a list of tiles that represent the ground cover loaded.
Reimplemented in DtOsgEarthGroundCoverSourceTracker.
|
virtual |
Reimplemented in DtOsgEarthTerrainSourceTracker.
|
virtual |
Reimplemented in DtOsgEarthTerrainSourceTracker.
|
virtual |
Return true if the current tracker use land cover data.
Reimplemented in DtOsgEarthTerrainSourceTracker.
|
virtual |
Reimplemented in DtOsgEarthTerrainSourceTracker.
|
virtual |
Reimplemented in DtOsgEarthTerrainSourceTracker.
|
virtual |
Reimplemented in DtOsgEarthTerrainSourceTracker.
|
virtual |
Reimplemented in DtOsgEarthTerrainSourceTracker.
|
virtual |
Return the max lod.
Reimplemented in DtOsgEarthGroundCoverSourceTracker, and DtOsgEarthTerrainSourceTracker.
|
virtual |
Return true if the current tracker use raw elevation.
Reimplemented in DtOsgEarthTerrainSourceTracker.
|
virtual |
Return the best tile key to use (based on the tracker) for a pass tilekey.
Reimplemented in DtOsgEarthTerrainSourceTracker.
|
virtual |
Check it the geometry intersect the tileDataCache (when we know the geometry is a chord, pass the chord pointer as the last optional parameters)
|
virtual |
Add a tile that was not find in the cache (by findTileInCache) (when we know the geometry is a chord, pass the chord pointer as the last optional parameters)
|
virtual |
Clear the cache.
|
protected |
|
protected |
|
protected |
|
protected |
|
mutableprotected |
|
mutableprotected |
|
protected |
|
protected |
map node for whole terrain
|
protected |
|
protected |
|
protected |
Tile Data cache to speed up intersections.
|
protected |
Stats for cache.
|
protected |
|
protected |