15 #include <tbb/blocked_range.h>
16 #include <tbb/spin_rw_mutex.h>
17 #include <tbb/task_arena.h>
19 #include <osgEarthProcedural/VegetationLayer>
24 typedef std::vector<osgEarth::Procedural::VegetationLayer::Placement>
TreePlacement;
44 virtual bool init()
override = 0;
49 virtual void tick()
override;
69 virtual bool pageOutTiles(
const DtTileKeyList& tilesToRemove);
73 unsigned reloadQueuedPages();
81 virtual bool pageOutTile(
const osgEarth::TileKey& tileKey) = 0;
93 virtual void addTile(
const osgEarth::TileKey& tilekey,
const std::shared_ptr<DtTileData>& tile) = 0;
100 virtual bool reloadTile(
const osgEarth::TileKey& tileKey,
bool isRemoval =
false,
unsigned numEvents = 1) = 0;
121 virtual void operator()(
const tbb::blocked_range<size_t>& r)
const;
133 virtual void createTbbTree(osgEarth::Procedural::VegetationLayer::Placement& treePlacement)
const;
std::list< osgEarth::TileKey > DtTileKeyList
Definition: tileSpatialIndex.h:32
Class to tbb the trees creation.
Definition: osgEarthBaseGroundCoverSourcePager.h:117
unsigned long long DtTerrainIntersectIDType
Definition: terrainInterfaceDefines.h:28
TreePlacement * myTreePlacements
Definition: osgEarthBaseGroundCoverSourcePager.h:136
DtOsgEarthBaseGroundCoverSourcePager::FeatureVector * myFeatureVector
Definition: osgEarthBaseGroundCoverSourcePager.h:135
Definition: osgEarthBaseGroundCoverSourceTracker.h:27
virtual void createTbbTree(osg::ref_ptr< osgEarth::Feature > tree) const
Used for PE1.
virtual void operator()(const tbb::blocked_range< size_t > &r) const
DtOsgEarthBaseGroundCoverSourcePager * myPager
Definition: osgEarthBaseGroundCoverSourcePager.h:138
std::shared_ptr< DtTerrainPagingGeometry > DtTerrainPagingGeometryPtr
Definition: terrainPagingGeometry.h:46
osg::ref_ptr< osg::Group > & myTreeGroup
Definition: osgEarthBaseGroundCoverSourcePager.h:137
TbbCreateTrees(DtOsgEarthBaseGroundCoverSourcePager *pager, DtOsgEarthBaseGroundCoverSourcePager::FeatureVector &vector, osg::ref_ptr< osg::Group > &treeGroup)
Used for PE1.
#define DT_DLL_vantageTerrainImplementation
This file is used to determine how to build.
Definition: vantageTerrainImplementationDefines.h:28
This class wraps the VR-Vantage Display Engine, and uses as a terrain loader and intersector. This is the terrain engine that powers the DtVantageTerrainImplementation. The DtVantageTerrainEngine runs the DtDe it its own thread, and processes commands thought the command queue.
Definition: vantageTerrainEngine.h:112