VR-Forces 4.6 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Member Functions | Static Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes | Private Member Functions | Friends
makVrv::DtIndirectGeometryManager Class Reference

Maintains a list of feature layers specified with feature_custom plugin and to be rendered with indirect rendering. More...

Inheritance diagram for makVrv::DtIndirectGeometryManager:
Inheritance graph
[legend]

Public Member Functions

virtual ~DtIndirectGeometryManager ()
 DTOR.
- Public Member Functions inherited from makVrv::DtVirtualBaseClass
 DtVirtualBaseClass ()
 Do nothing constructor.
virtual ~DtVirtualBaseClass ()
 Virtual do nothing destructor.

Static Public Member Functions

static DtIndirectGeometryManagerinstance (DtDe &de)
 Get the instance for the DtIndirectGeometryManager.

Protected Types

typedef boost::unordered_map
< const osgEarth::ModelLayer
*, DtIndirectGeometryLayerManager * > 
MapLayerToLayerManagerIndirectGeometry
 map of layers in the osg earth terrain to the layer manager for each layer

Protected Member Functions

 DtIndirectGeometryManager (DtDe &de)
 CTOR (protected, only created through creator function)
virtual void slot_terrainPatchCreated (DtTerrainPatchObject &patch)
 Find out when the terrain patch is ready to accept DtOsgEarthFeatureDataBroker callbacks.
virtual bool isFeatureCustomModelSource (const osgEarth::ModelLayer *layer)
 cannot handle something that's not a feature custom model source
virtual void onLayerLoaded (const osgEarth::MapNode *mapNode, const osgEarth::ModelLayer *layer)
 The DtIndirectGeometryCallback installed by this manager actually receives the callbacks.
virtual void onDataPreMerge (const osgEarth::Map *map, const osgEarth::ModelLayer *layer, osg::Node *newData)
 Called by the via DtIndirectGeometryCallback::onDataPreMerge.
virtual void onDataLoaded (const osgEarth::Map *map, const osgEarth::ModelLayer *layer, const osg::Node *newData)
 Called by the via DtIndirectGeometryCallback::onDataLoaded.
virtual void onDataUnloaded (const osgEarth::Map *map, const osgEarth::ModelLayer *layer, const osg::Node *oldData)
 Called by the via DtIndirectGeometryCallback::onDataUnloaded.

Protected Attributes

DtDemyDe
MapLayerToLayerManagerIndirectGeometry myMapLayerToLayerManagerIndirectGeometry

Private Member Functions

 DtIndirectGeometryManager ()
 CTOR (unimplemented default CTOR)

Friends

class DtIndirectGeometryManagerCreator
 Friended with creator so that it can use our constructor.
class DtIndirectGeometryCallback
 friended with DtIndirectGeometryCallback so that it can route calls to our protected methods directly

Detailed Description

Maintains a list of feature layers specified with feature_custom plugin and to be rendered with indirect rendering.

Listens in on the signal_terrainPatchCreated signal

Member Typedef Documentation

typedef boost::unordered_map<const osgEarth::ModelLayer*, DtIndirectGeometryLayerManager* > makVrv::DtIndirectGeometryManager::MapLayerToLayerManagerIndirectGeometry
protected

map of layers in the osg earth terrain to the layer manager for each layer

Constructor & Destructor Documentation

virtual makVrv::DtIndirectGeometryManager::~DtIndirectGeometryManager ( )
virtual

DTOR.

makVrv::DtIndirectGeometryManager::DtIndirectGeometryManager ( DtDe de)
protected

CTOR (protected, only created through creator function)

makVrv::DtIndirectGeometryManager::DtIndirectGeometryManager ( )
private

CTOR (unimplemented default CTOR)

Member Function Documentation

static DtIndirectGeometryManager& makVrv::DtIndirectGeometryManager::instance ( DtDe de)
static

Get the instance for the DtIndirectGeometryManager.

Exceptions
DtCorruptedStateif it is unable to get the instance.
virtual void makVrv::DtIndirectGeometryManager::slot_terrainPatchCreated ( DtTerrainPatchObject patch)
protectedvirtual

Find out when the terrain patch is ready to accept DtOsgEarthFeatureDataBroker callbacks.

When this signal fires, the manager looks up a terrain patch and installs the DtIndirectGeometryCallback

virtual void makVrv::DtIndirectGeometryManager::onLayerLoaded ( const osgEarth::MapNode *  mapNode,
const osgEarth::ModelLayer *  layer 
)
protectedvirtual

The DtIndirectGeometryCallback installed by this manager actually receives the callbacks.

It simply re-routes them to the manager's corresponding methods below Called by the via DtIndirectGeometryCallback::onLayerLoaded

virtual void makVrv::DtIndirectGeometryManager::onDataPreMerge ( const osgEarth::Map *  map,
const osgEarth::ModelLayer *  layer,
osg::Node *  newData 
)
protectedvirtual
virtual void makVrv::DtIndirectGeometryManager::onDataLoaded ( const osgEarth::Map *  map,
const osgEarth::ModelLayer *  layer,
const osg::Node *  newData 
)
protectedvirtual
virtual void makVrv::DtIndirectGeometryManager::onDataUnloaded ( const osgEarth::Map *  map,
const osgEarth::ModelLayer *  layer,
const osg::Node *  oldData 
)
protectedvirtual
virtual bool makVrv::DtIndirectGeometryManager::isFeatureCustomModelSource ( const osgEarth::ModelLayer *  layer)
protectedvirtual

cannot handle something that's not a feature custom model source

Friends And Related Function Documentation

friend class DtIndirectGeometryManagerCreator
friend

Friended with creator so that it can use our constructor.

friend class DtIndirectGeometryCallback
friend

friended with DtIndirectGeometryCallback so that it can route calls to our protected methods directly

Member Data Documentation

DtDe& makVrv::DtIndirectGeometryManager::myDe
protected
MapLayerToLayerManagerIndirectGeometry makVrv::DtIndirectGeometryManager::myMapLayerToLayerManagerIndirectGeometry
protected

The documentation for this class was generated from the following file:

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)