VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
terraPageTerrainSourcePager.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2013 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
9 #pragma once
10 
15 
17 {
22 };
23 
25 
26 namespace txp
27 {
28  class TXPNode;
29 }
30 
31 typedef boost::unordered_map<osg::Node*, DtTerraPageBoundingInfo> DtTerraPageNodeBoundingVolumeMap;
32 
36 {
37 public:
38 
40  txp::TXPNode* rootNode, makVrf::DtSurfaceCharacteristicMapConstPtr surfaceCharacterMap);
41 
42  virtual ~DtTerraPageTerrainSourcePager() override;
43 
46 
47  virtual bool pageInGeometry(
48  const DtTerrainPagingGeometryPtr geometry, DtTerrainIntersectIDType intersectId = 0) override;
49 
50  virtual bool pageOutNodes(std::list<DtNodeId>& nodesToRemove) override;
51 
52  virtual void updatePageTracker(DtTerrainIntersectIDType intersectId = 0) override;
53 
54  virtual DtString type() const override;
55 
58  static DtTerrainSourcePager* terrainChooserFunction(osg::Node& node,
59  DtVantageTerrainEngine* terrainEngine, makVrf::DtSurfaceCharacteristicMapConstPtr surfaceCharacterMap);
60 
61  virtual void traverseChildAndLoad(osg::Group*);
62 
63 protected:
65 
70 
72 
73  osg::Matrix myMatrix;
74 };
75 
77 
std::shared_ptr< const DtSurfaceCharacteristicMap > DtSurfaceCharacteristicMapConstPtr
Definition: surfaceCharacteristicsMap.h:36
virtual bool pageOutNodes(std::list< DtNodeId > &nodesToRemove)=0
This function must cause the page out of the nodeIds specified. It should return true when successful...
DtTerrainSourcePager is the base class for terrain pagers. There will be one terrainSourcePager per t...
Definition: terrainSourcePager.h:56
osg::Matrix myMatrix
Definition: terraPageTerrainSourcePager.h:73
unsigned long long DtTerrainIntersectIDType
Definition: terrainInterfaceDefines.h:28
virtual DtString type() const =0
virtual DtTerrainSourceTracker * createTerrainSourceTracker(DtVantageTerrainEngine *)=0
Creates and returns a DtTerrainSourceTracker.
Definition: terraPageTerrainSourcePager.h:16
std::shared_ptr< DtTerrainPagingGeometry > DtTerrainPagingGeometryPtr
Definition: terrainPagingGeometry.h:46
bool boundingInfoFromGeometry
This indicates whether the above bounding info has been set after the geometry for the node was read ...
Definition: terraPageTerrainSourcePager.h:21
Base class for Terrain Source trackers. Determines if the necessary data To perform an intersection i...
Definition: terrainSourceTracker.h:75
virtual bool pageInGeometry(const DtTerrainPagingGeometryPtr geometry, DtTerrainIntersectIDType intersectId=0)=0
This function must page in all the geometry specified by the argument, and return true when successfu...
std::shared_ptr< DtNodeBoundingInfo > DtNodeBoundingInfoPtr
Definition: boundingNodeInfo.h:94
DtNodeBoundingInfoPtr boundingInfo
Definition: terraPageTerrainSourcePager.h:18
DtBoundingVolumeTerrainSourcePager is a derived terrainSourcePager that handles a source such as meta...
Definition: boundingVolumeTerrainSourcePager.h:21
DtTerraPageNodeBoundingVolumeMap myPagedInNodes
This is the list of nodes for only the LODs that we will page into the terrain.
Definition: terraPageTerrainSourcePager.h:68
DtTerraPageTerrainSourcePager is a derived terrainSourcePager that handles metaflight terrains...
Definition: terraPageTerrainSourcePager.h:35
#define DT_DLL_vantageTerrainImplementation
This file is used to determine how to build.
Definition: vantageTerrainImplementationDefines.h:28
DtTerraPageNodeBoundingVolumeMap myPagedOutNodes
Definition: terraPageTerrainSourcePager.h:69
virtual void updatePageTracker(DtTerrainIntersectIDType intersectId=0) override=0
txp::TXPNode * myRootNode
Definition: terraPageTerrainSourcePager.h:64
Definition: TXPNode.h:51
This class wraps the VR-Vantage Display Engine, and uses as a terrain loader and intersector. This is the terrain engine that powers the DtVantageTerrainImplementation. The DtVantageTerrainEngine runs the DtDe it its own thread, and processes commands thought the command queue.
Definition: vantageTerrainEngine.h:112
makVrf::DtSurfaceCharacteristicMapConstPtr mySurfaceCharacterMap
Definition: terraPageTerrainSourcePager.h:71
boost::unordered_map< osg::Node *, DtTerraPageBoundingInfo > DtTerraPageNodeBoundingVolumeMap
Definition: terraPageTerrainSourcePager.h:31

Document ID: Generated on Thu Oct 23 22:29:17 EDT 2025 from SVN revision 280951
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)