VR-Forces 4.7 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
pagedLodTerrainSourcePager.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2013 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
6 #pragma once
7 
10 
12 
17 
18 #include <set>
19 
24 {
25 public:
26  typedef std::map<std::string, DtPageInVisitor::NodePagingRecord> NodePagingRecordMap;
27 
29  DtVantageTerrainEngine* terrainEngine,
30  osg::Group* rootNode,
31  const DtFilename& surfaceCharacterMap);
32 
34  DtVantageTerrainEngine* terrainEngine,
35  osg::Group* rootNode,
36  const osg::Matrix& matrix,
37  const DtFilename& surfaceCharacterMap);
38 
40 
43 
44  virtual bool pageInGeometry(
45  const DtTerrainPagingGeometryPtr geometry,
46  DtTerrainIntersectIDType intersectId = 0);
47 
48  virtual bool pageOutNodes(std::list<DtNodeId>& nodesToRemove);
49 
51  virtual void updatePageTracker(DtTerrainIntersectIDType intersectId = 0);
52 
53  virtual const NodePagingRecordMap& pagedInNodes() const;
54 
57  static DtTerrainSourcePager* terrainChooserFunction(
58  osg::Node& node,
59  DtVantageTerrainEngine* terrainEngine,
60  const DtFilename& surfaceCharacterMap);
61 
62 protected:
64  osg::Node* terrainRoot();
65 
66  virtual bool pageInData(
67  DtPageInVisitor& visitor,
68  DtTerrainIntersectIDType intersectId = 0);
69 
70 protected:
73  {
74  public:
75  using DtBoundingVolumeActivePageVisitor::apply;
76 
77  explicit DtActivePageVisitor(
78  const NodePagingRecordMap&, DtTerrainIntersectIDType intersectId = 0);
79 
80  virtual void apply(osg::Group& node);
81  virtual void apply(osg::LOD& node);
82  virtual void apply(osg::PagedLOD& node);
83 
84  private:
86  };
87 
89  osg::ref_ptr<osg::Node> myRootNode;
90  osg::Matrix myMatrix;
91 
94 
96 
97 };
98 

Document ID: Generated on Fri Apr 26 21:53:14 EDT 2019 from SVN revision 197883
Copyright © 2005-2019 VT MAK. All Rights Reserved (www.mak.com)