VR-Forces 4.2 Class Documentation
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;
25 
31 {
32 private:
34 
36  DtActivePageTracker& operator=(const DtActivePageTracker&);
38 
39 public:
42 
44  virtual ~DtActivePageTracker();
45 
47  virtual void setDrawMode(DtDrawMode);
48 
52  virtual void drawDebugInfo();
53 
54  virtual void setCoordinateSystem(const Coordinate_System*);
55 
59  virtual void setWorldPagedOut(bool v);
60 
69  virtual void pageInData(DtPagingMetaDataPtr metaData,
71 
76  virtual bool dataAvailable(DtPagingMetaDataPtr metaData,
78 
85 
87  virtual void addTerrainSourceTracker(
88  DtTerrainSourceTracker* terrainSourceTracker);
89 
90  virtual void removeTerrainSourceTracker(
91  DtTerrainSourceTracker* terrainSourceTracker);
92 
96  virtual void addIntersectChord(const DtChord& intersectChord);
97 
101  virtual void addIntersectSphere(const DtSphere& intersectSphere);
102 
104  virtual bool canPageOutData(unsigned int intersectId = 0);
105 
110  virtual unsigned int pageOutData(const int priority,
111  unsigned int numTrianglesToPageOut, unsigned int intersectId);
112 
113  virtual void setIntersectDataLoadExpireTime(const double& expireTime);
114 
115 protected:
116 
118  const Coordinate_System* myCoordinateSystem;
119 
123 
125  mutable tbb::spin_mutex myDirtyFlagMutex;
127 
129  std::auto_ptr<DtSharedMemoryBulletDebugDrawer> myPagingDebugDrawer;
130 
132  std::auto_ptr<DtSharedMemoryBulletDebugDrawer> myIntersectDebugDrawer;
133 
137 
139 
140  std::list<DtChord> myIntersectChords;
141  std::list<DtSphere> myIntersectSpheres;
143 
145 
146  mutable tbb::spin_rw_mutex myMutex;
147 };
148 
149 

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)