VR-Forces 4.2 Class Documentation
Home
Modules
Namespaces
Classes
Files
Examples
Behavior Models
File List
File Members
include
vantageTerrainImplementation
boundingVolumeTerrainSourcePager.h
Go to the documentation of this file.
1
/*******************************************************************************
2
** Copyright (c) 2011 MAK Technologies, Inc.
3
** All rights reserved.
4
*******************************************************************************/
5
8
9
#pragma once
10
11
#include <
vantageTerrainImplementation/terrainEngineCommand.h
>
12
#include <
vantageTerrainImplementation/terrainSourcePager.h
>
13
#include <
vantageTerrainImplementation/pageInVisitor.h
>
14
#include <
vantageTerrainImplementation/boundingVolumeTerrainSourceTracker.h
>
15
#include <
terrainInterface/terrainPagingGeometry.h
>
16
19
class
DT_DLL_vantageTerrainImplementation
DtBoundingVolumeTerrainSourcePager
:
public
DtTerrainSourcePager
20
{
21
public
:
22
23
DtBoundingVolumeTerrainSourcePager
(
DtVantageTerrainEngine
* terrainEngine);
24
25
virtual
~
DtBoundingVolumeTerrainSourcePager
();
26
31
virtual
bool
pageInGeometry(
const
DtTerrainPagingGeometryPtr
geometry,
32
const
unsigned
int
intersectId = 0) = 0;
33
37
virtual
bool
pageOutNodes(std::list<DtNodeId>& nodesToRemove) = 0;
38
39
virtual
void
updateTerrain(
const
unsigned
int
intersectId = 0) = 0;
40
41
virtual
void
updatePageTracker
(
const
unsigned
int
intersectId = 0) = 0;
42
43
protected
:
45
class
DtBoundingVolumeActivePageVisitor
:
public
DtMaintainMatrixVisitor
46
{
47
public
:
48
DtBoundingVolumeActivePageVisitor
(
unsigned
int
intersectId = 0);
49
50
const
DtNodeBoundingInfoList
& pagedOutBoundingVolumes()
const
;
51
const
DtNodeBoundingInfoMap
& pagedInBoundingVolumes()
const
;
52
bool
noValidAreas()
const
;
53
54
protected
:
55
void
pushBound(osg::Node& node);
56
void
popBound();
57
58
bool
addToPagedOutVolumesList(
const
DtNodeBoundingInfoPtr
pagedOutArea);
59
60
protected
:
61
DtNodeBoundingInfoList
myPagedOutBoundingList
;
62
DtNodeBoundingInfoMap
myPagedInBoundingMap
;
63
bool
myNoValidAreas
;
64
std::stack<osg::BoundingSphere>
myBoundingNodeStack
;
65
unsigned
int
myIntersectId
;
66
};
67
68
};
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
)