VR-Forces 4.6 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
activePageTracker.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2010 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
10 
11 #pragma once
12 
13 #include <vrvCore/DtDe.h>
14 
15 #include <tbb/spin_rw_mutex.h>
16 
20 
22 
24 class btIDebugDraw;
26 
32 {
33 private:
35 
37  DtActivePageTracker& operator=(const DtActivePageTracker&);
39 
40 public:
43 
45  virtual ~DtActivePageTracker();
46 
48  virtual void setDrawMode(DtDrawMode);
49 
51  virtual void setVantageTerrainEngine(DtVantageTerrainEngine*);
52 
56  virtual void drawDebugInfo(bool force = false);
57 
66  virtual void pageInData(DtPagingMetaDataPtr metaData,
68 
70  virtual bool pageInUnavailableData(DtPagingMetaDataPtr metaData,
72 
77  virtual bool dataAvailable(DtPagingMetaDataPtr metaData,
79 
86 
88  virtual void addTerrainSourceTracker(
89  DtTerrainSourceTracker* terrainSourceTracker);
90 
91  virtual void removeTerrainSourceTracker(
92  DtTerrainSourceTracker* terrainSourceTracker);
93 
97  virtual void addIntersectChord(const DtChord& intersectChord);
98 
102  virtual void addIntersectSphere(const DtSphere& intersectSphere);
103 
105  virtual bool canPageOutData(DtTerrainIntersectIDType intersectId = 0);
106 
111  virtual unsigned int pageOutData(const int priority,
112  unsigned int numTrianglesToPageOut, DtTerrainIntersectIDType intersectId);
113 
114  virtual void setIntersectDataLoadExpireTime(const double& expireTime);
115 
116  virtual bool printInfo() const;
117 
118 protected:
121 
123  mutable tbb::spin_mutex myDirtyFlagMutex;
125 
127  std::auto_ptr<DtSharedMemoryBulletDebugDrawer> myPagingDebugDrawer;
128 
130  std::auto_ptr<DtSharedMemoryBulletDebugDrawer> myIntersectDebugDrawer;
131 
135 
137 
138  std::list<DtChord> myIntersectChords;
139  std::list<DtSphere> myIntersectSpheres;
141 
143 
144  mutable tbb::spin_rw_mutex myMutex;
145 };
146 
147 

Document ID: Generated on Thu Apr 12 03:15:37 EDT 2018 from SVN revision 187986
Copyright © 2005-2018 VT MÄK. All Rights Reserved (www.mak.com)