VR-Forces 4.10 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Member Functions | Public Attributes | Protected Types | Protected Member Functions | Protected Attributes | Friends
makVrv::DtStreamedFeatureManager Class Referenceabstract

The StreamedFeatureManager allows users to register creator functions for streamed features from specific style blocks. More...

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

Public Member Functions

virtual ~DtStreamedFeatureManager ()
 DTOR. More...
 
virtual void addStreamedFeatureCreator (const std::string &registrantName, const std::string &styleName, DtStreamedFeatureCreator *creator)
 Register a creator to be called when features are streamed in. More...
 
virtual void checkAndProcessStrandedFeatures ()=0
 Method called by the sceneDriver tick to process any features that need to be deleted. More...
 

Public Attributes

boost::signalslib::signal
< void(const std::string
&registrantName, DtUniqueID
featurId)> 
signal_featureAboutToBeDeleted
 Signal raised when a feature has streamed out (of page cache) More...
 

Protected Types

typedef std::pair< std::string,
DtStreamedFeatureCreator * > 
CreatorElement
 
typedef
boost::unordered_multimap
< std::string, CreatorElement
FeatureClassCreatorMap
 
typedef std::pair
< FeatureClassCreatorMap::iterator,
FeatureClassCreatorMap::iterator > 
RangeIterFeatureClassToCreator
 
typedef std::pair
< FeatureClassCreatorMap::const_iterator,
FeatureClassCreatorMap::const_iterator > 
ConstRangeIterFeatureClassToCreator
 

Protected Member Functions

 DtStreamedFeatureManager (DtDe &de)
 CTOR - protected; only created by the DtStreamedFeatureManagerCreator class. More...
 
 DtStreamedFeatureManager ()
 Unimplemented default CTOR. More...
 

Protected Attributes

DtDemyDe
 
FeatureClassCreatorMap myFeatureClassCreators
 

Friends

class DtStreamedFeatureManagerCreator
 Friended to allow constructor use. More...
 

Detailed Description

The StreamedFeatureManager allows users to register creator functions for streamed features from specific style blocks.

The manager will signal when a feature should be deleted, using the installed creator' return ids that in conjuntion with the names of the registrants that installed them.

Member Typedef Documentation

typedef boost::unordered_multimap<std::string, CreatorElement> makVrv::DtStreamedFeatureManager::FeatureClassCreatorMap
protected
typedef std::pair<FeatureClassCreatorMap::iterator,FeatureClassCreatorMap::iterator> makVrv::DtStreamedFeatureManager::RangeIterFeatureClassToCreator
protected
typedef std::pair<FeatureClassCreatorMap::const_iterator,FeatureClassCreatorMap::const_iterator> makVrv::DtStreamedFeatureManager::ConstRangeIterFeatureClassToCreator
protected

Constructor & Destructor Documentation

virtual makVrv::DtStreamedFeatureManager::~DtStreamedFeatureManager ( )
virtual

DTOR.

makVrv::DtStreamedFeatureManager::DtStreamedFeatureManager ( DtDe de)
protected

CTOR - protected; only created by the DtStreamedFeatureManagerCreator class.

makVrv::DtStreamedFeatureManager::DtStreamedFeatureManager ( )
protected

Unimplemented default CTOR.

Member Function Documentation

virtual void makVrv::DtStreamedFeatureManager::addStreamedFeatureCreator ( const std::string &  registrantName,
const std::string &  styleName,
DtStreamedFeatureCreator creator 
)
virtual

Register a creator to be called when features are streamed in.

Parameters
registrantNameis a name given by the registrant to identify features created by that registrant (for later deletion)
styleNamestyleName is the name provided in the .osgEarth style block that this creator is interested in. When features are streamed in from a style block with this name, the registered creator will be called.
creatoris a pointer to a DtStreamedFeatureCreator implementation
virtual void makVrv::DtStreamedFeatureManager::checkAndProcessStrandedFeatures ( )
pure virtual

Method called by the sceneDriver tick to process any features that need to be deleted.

This method is mutex-protected, since features are placed on the stranded list from osgEarth paging threads (and the list will be processed in the render thread).

Implemented in makVrv::DtOsgEarthStreamedFeatureManager.

Friends And Related Function Documentation

friend class DtStreamedFeatureManagerCreator
friend

Friended to allow constructor use.

Member Data Documentation

boost::signalslib::signal<void ( const std::string& registrantName, DtUniqueID featurId )> makVrv::DtStreamedFeatureManager::signal_featureAboutToBeDeleted

Signal raised when a feature has streamed out (of page cache)

DtDe& makVrv::DtStreamedFeatureManager::myDe
protected
FeatureClassCreatorMap makVrv::DtStreamedFeatureManager::myFeatureClassCreators
protected

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

Document ID: Generated on Tue Sep 21 17:42:52 EDT 2021 from SVN revision 234861
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)