VR-Forces 4.2 Class Documentation
List of all members | Public Member Functions | Static Public Member Functions | Protected Attributes
DtTerraPageTerrainSourcePager Class Reference

DtTerraPageTerrainSourcePager is a derived terrainSourcePager that handles metaflight terrains. More...

Inheritance diagram for DtTerraPageTerrainSourcePager:
Inheritance graph
[legend]

Public Member Functions

 DtTerraPageTerrainSourcePager (DtVantageTerrainEngine *terrainEngine, txp::TXPNode *rootNode, const DtFilename &surfaceCharacterMap)
virtual ~DtTerraPageTerrainSourcePager ()
virtual DtTerrainSourceTrackercreateTerrainSourceTracker ()
 Creates and returns a DtOsgTerrainSourceTracker.
virtual bool pageInGeometry (const DtTerrainPagingGeometryPtr geometry, const unsigned int 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 updateTerrain (const unsigned int intersectId=0)
virtual void updatePageTracker (const unsigned int intersectId=0)
virtual void traverseChildAndLoad (osg::Group *)
- 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 DtTerrainSourceTrackerterrainSourceTracker ()
 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 &currentTime)
 Sets myCurrentTime for purposes of expiring old page-in commands.

Static Public Member Functions

static DtTerrainSourcePagerterrainChooserFunction (osg::Node &node, DtVantageTerrainEngine *terrainEngine, const DtFilename &surfaceCharacterMap)
 This is the function that is registered with the DtTerrainSourceChooser.
static DtNodeId osgNodeId (osg::Node *node)
 Methods for converting to/from DtNodeId.
static osg::Node * nodeFromId (DtNodeId nodeId)
 Methods for converting to/from DtNodeId.

Protected Attributes

txp::TXPNodemyRootNode
DtTerraPageNodeBoundingVolumeMap myPagedInNodes
 This is the list of nodes for only the LODs that we will page into the terrain.
DtTerraPageNodeBoundingVolumeMap myPagedOutNodes
DtFilename mySurfaceCharacterMap

Detailed Description

DtTerraPageTerrainSourcePager is a derived terrainSourcePager that handles metaflight terrains.

Constructor & Destructor Documentation

DtTerraPageTerrainSourcePager::DtTerraPageTerrainSourcePager ( DtVantageTerrainEngine terrainEngine,
txp::TXPNode rootNode,
const DtFilename &  surfaceCharacterMap 
)
virtual DtTerraPageTerrainSourcePager::~DtTerraPageTerrainSourcePager ( )
virtual

Member Function Documentation

virtual DtTerrainSourceTracker* DtTerraPageTerrainSourcePager::createTerrainSourceTracker ( )
virtual

Creates and returns a DtOsgTerrainSourceTracker.

Implements DtTerrainSourcePager.

virtual bool DtTerraPageTerrainSourcePager::pageInGeometry ( const DtTerrainPagingGeometryPtr  geometry,
const unsigned int  intersectId = 0 
)
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 bool DtTerraPageTerrainSourcePager::pageOutNodes ( std::list< DtNodeId > &  nodesToRemove)
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 void DtTerraPageTerrainSourcePager::updateTerrain ( const unsigned int  intersectId = 0)
virtual
virtual void DtTerraPageTerrainSourcePager::updatePageTracker ( const unsigned int  intersectId = 0)
virtual
static DtTerrainSourcePager* DtTerraPageTerrainSourcePager::terrainChooserFunction ( osg::Node &  node,
DtVantageTerrainEngine terrainEngine,
const DtFilename &  surfaceCharacterMap 
)
static

This is the function that is registered with the DtTerrainSourceChooser.

If node is a DtTerraPagePagedLod node, then a DtTerraPageTerrainSourcePager is returned.

static DtNodeId DtTerraPageTerrainSourcePager::osgNodeId ( osg::Node *  node)
static

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.

static osg::Node* DtTerraPageTerrainSourcePager::nodeFromId ( DtNodeId  nodeId)
static

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.

virtual void DtTerraPageTerrainSourcePager::traverseChildAndLoad ( osg::Group *  )
virtual

Member Data Documentation

txp::TXPNode* DtTerraPageTerrainSourcePager::myRootNode
protected
DtTerraPageNodeBoundingVolumeMap DtTerraPageTerrainSourcePager::myPagedInNodes
protected

This is the list of nodes for only the LODs that we will page into the terrain.

DtTerraPageNodeBoundingVolumeMap DtTerraPageTerrainSourcePager::myPagedOutNodes
protected
DtFilename DtTerraPageTerrainSourcePager::mySurfaceCharacterMap
protected

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

Document ID: Generated on Sun Nov 24 19:49:21 EST 2013 from SVN revision 133924
Copyright © 2005-2013 VT MÄK. All Rights Reserved (www.mak.com)