![]() |
VR-Forces 4.1 Class Documentation
|
DtTerrainSourcePager is the base class for terrain pagers. More...

Public Member Functions | |
| 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 * | createTerrainSourceTracker ()=0 |
| Creates and returns a DtTerrainSourceTracker. | |
| virtual DtTerrainSourceTracker * | terrainSourceTracker () |
| Accessor for myTerrainSourceTracker. | |
| virtual void | updatePageTracker (const unsigned int intersectId=0)=0 |
| 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. | |
Protected Attributes | |
| tbb::spin_rw_mutex | myMutex |
| DtVantageTerrainEngine * | myTerrainEngine |
| Pointer to the terrain implementation's terrain engine. | |
| DtTerrainSourceTracker * | myTerrainSourceTracker |
| The terrain source tracker that is updated by this pager. | |
| double | myCurrentTime |
| Time to compare a command's expire time to before executing the command. | |
| DtPagerCommandQueue | myCommandQueue |
| Thread-safe queue to put commands on. | |
| DtCommandPriorityMultimap | myPriorityCommandMultimap |
| Multimap of priorities to paging commands. | |
DtTerrainSourcePager is the base class for terrain pagers.
There will be one terrainSourcePager per terrain patch. They will each handle paging in terrain from an individual source, such as metaflight, paged .ive, or osgEarth streaming terrain.
| DtTerrainSourcePager::DtTerrainSourcePager | ( | DtVantageTerrainEngine * | terrainEngine | ) |
Constructor.
|
virtual |
Destructor. Deletes all pending commands and myTerrainSourceTracker.
|
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.
|
pure virtual |
Creates and returns a DtTerrainSourceTracker.
Implemented in DtMetaflightTerrainSourcePager, DtOsgEarthTerrainSourcePager, and DtPagedLodTerrainSourcePager.
|
virtual |
Accessor for myTerrainSourceTracker.
|
pure virtual |
|
virtual |
Calls processCommandQueue to add new commands into the priority-sorted command map.
Then returns the priority of the highest-priority pending command.
|
virtual |
Takes incoming commands off the command queue and adds them to the priority-sorted command map.
|
virtual |
Sets myCurrentTime for purposes of expiring old page-in commands.
The time passed in will only be used if it is greater than myCurrentTime.
| The | new time to use for expiring commands. |
|
mutableprotected |
|
protected |
Pointer to the terrain implementation's terrain engine.
This class does not own the terrain engine.
|
protected |
The terrain source tracker that is updated by this pager.
|
protected |
Time to compare a command's expire time to before executing the command.
If the command's expire time is less than the current time, the command will not be executed.
|
protected |
Thread-safe queue to put commands on.
|
protected |
Multimap of priorities to paging commands.
Commands are taken off the queue and put here until they are either executed or expired.