VR-Forces 4.5 Class Documentation
Home
Modules
Namespaces
Classes
Files
Examples
Behavior Models
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
include
vantageTerrainImplementation
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
17
#include <
vantageTerrainImplementation/vantageTerrainImplementationDefines.h
>
18
#include <
vantageTerrainImplementation/vantageTerrainImplementationUtil.h
>
19
#include <
vantageTerrainImplementation/sharedMemoryBulletDebugDrawer.h
>
20
21
#include <
terrainInterface/terrainPagingGeometry.h
>
22
23
class
DtTerrainSourceTracker
;
24
class
btIDebugDraw
;
25
class
DtPrintPagingInfoCommand
;
26
31
class
DT_DLL_vantageTerrainImplementation
DtActivePageTracker
32
{
33
private
:
35
36
DtActivePageTracker
(
const
DtActivePageTracker
&);
37
DtActivePageTracker
& operator=(
const
DtActivePageTracker
&);
39
40
public
:
42
DtActivePageTracker
();
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,
67
DtTerrainPagingGeometryPtr
geometry);
68
70
virtual
bool
pageInUnavailableData(
DtPagingMetaDataPtr
metaData,
71
DtTerrainPagingGeometryPtr
geometry);
72
77
virtual
bool
dataAvailable(
DtPagingMetaDataPtr
metaData,
78
DtTerrainPagingGeometryPtr
geometry);
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
115
virtual
DtTerrainIntersectIDType
findOldDataIntersectId(
unsigned
int
* numTriangles = 0);
116
117
virtual
void
setIntersectDataLoadExpireTime(
const
double
& expireTime);
118
119
virtual
bool
printInfo()
const
;
120
121
protected
:
122
DtVantageTerrainEngine
*
myTerrainEngine
;
123
DtPrintPagingInfoCommand
*
myPrintInfoCommand
;
124
126
mutable
tbb::spin_mutex
myDirtyFlagMutex
;
127
bool
myDirtyFlag
;
128
130
std::auto_ptr<DtSharedMemoryBulletDebugDrawer>
myPagingDebugDrawer
;
131
133
std::auto_ptr<DtSharedMemoryBulletDebugDrawer>
myIntersectDebugDrawer
;
134
137
DtTerrainSourceTrackerList
myTerrainSourceTrackers
;
138
140
141
std::list<DtChord>
myIntersectChords
;
142
std::list<DtSphere>
myIntersectSpheres
;
144
145
double
myIntersectDataLoadExpireTime
;
146
147
mutable
tbb::spin_rw_mutex
myMutex
;
148
};
149
150
Document ID: Generated on Thu Mar 23 18:54:12 EDT 2017 from SVN revision 174804
Copyright © 2005-2017 VT MÄK. All Rights Reserved (
www.mak.com
)