![]() |
VR-Forces 5.0.1 Developer's Guide
|
This is used for entities indicate whether this manager's switches get updated directly using signals. To do this, it overrides the update method of the base DtIndirectSwitchManager. It also supports removal of switches for a given instance id. This manager's switches get updated directly using slot_* functions.

Classes | |
| struct | SequenceAndValue |
Public Member Functions | |
| virtual | ~DtIndirectSignalBasedSwitchManager () |
| virtual void | update (const osg::FrameStamp *frameStamp) override |
| virtual void | removeSwitchPaths (int instanceId) |
| virtual void | slot_setSwitch (osgSim::MultiSwitch *clone, osgSim::MultiSwitch *master, int instanceId) |
| virtual void | slot_setSequence (osg::Sequence *clone, osg::Sequence *master, int instanceId) |
| virtual void | printInfo () |
Public Member Functions inherited from makVrv::DtIndirectSwitchManager | |
| virtual | ~DtIndirectSwitchManager () |
| virtual void | addSwitchPaths (int perGeomInstanceIndex, int size, const DequeNodeSwitchInfoPairs &parentSwitchPaths, const DequeNodeSwitchInfoPairsArray &switchPaths, const osg::NodePath &parentNodePath, int instanceId) |
| virtual void | slot_setSwitchDynamicTerrainSwitchNode (DtDynamicTerrainSwitchNode *switchNode, DynamicTerrain::NodePathHash nodePathHash, int childIdx) |
| virtual void | processSwitches (void) |
| virtual void | releaseGLObjects (osg::State *state) const |
| virtual const DtGlBuffer * | gpuSwitchStateBuffer (void) const |
Public Member Functions inherited from makVrv::DtIndirectManager | |
| DtIndirectManager (DtDe &de, DtInstanceContainer &container) | |
| virtual | ~DtIndirectManager () |
Public Attributes | |
| friend | DtIndirectSignalBasedSwitchManagerCreator |
Public Attributes inherited from makVrv::DtIndirectSwitchManager | |
| friend | DtIndirectSwitchManagerCreator |
Protected Types | |
| typedef std::map < osg::Sequence *, SequenceAndValue > | MapOfSequences |
| typedef std::map< int, MapOfSequences > | MapInstanceToMapOfSequences |
Protected Types inherited from makVrv::DtIndirectSwitchManager | |
| typedef std::map < osg::Sequence *, unsigned int > | MapSequenceToValue |
| typedef std::map< osg::Switch *, osg::Switch::ValueList > | MapSwitchToValueList |
| typedef std::map < osgSim::MultiSwitch *, osgSim::MultiSwitch::ValueList > | MapMultiSwitchToValueList |
| typedef DtReusableMemoryVector < int, SwitchesOffBitMaskInvalidator > | VectorSwitchesOffBitMask |
Protected Member Functions | |
| DtIndirectSignalBasedSwitchManager (DtDe &de, DtInstanceContainer &container) | |
| virtual void | addSequence (osg::Sequence *sequence, int instanceId) override |
| virtual void | updateActiveSequences (const osg::FrameStamp *frameStamp) |
Protected Member Functions inherited from makVrv::DtIndirectSwitchManager | |
| DtIndirectSwitchManager (DtDe &de, DtInstanceContainer &container) | |
| virtual void | addSwitchPath (int perGeomInstanceIndex, const DequeNodeSwitchInfoPairs &parentSwitchPaths, const DequeNodeSwitchInfoPairs &switchPath, const osg::NodePath &parentNodePath, int instanceId) |
| virtual void | addSwitch (NodeSwitchInfoPair &switchChildPair, int bitMaskId, int perGeomInstanceIndex, const osg::NodePath &parentNodePath, int uniqueId) |
| virtual bool | checkSwitchChildActive (osg::ref_ptr< osg::Node > nodeRefPtr, int childIndex, DynamicTerrain::NodePathHash pathHash) |
| virtual void | updateSwitches (void) |
| virtual void | updateMultiSwitches (void) |
| virtual void | updateSequences (const osg::FrameStamp *frameStamp) |
| virtual void | updateSwitchStateBufferIfNecessary (void) |
| virtual void | deleteBuffers (void) |
| virtual void | tearDownBuffers (void) const |
| virtual void | updateSwitch (const DtIndirectSwitchInfo &info, bool isSwitchChildActive) |
Private Member Functions | |
| DtIndirectSignalBasedSwitchManager ()=delete | |
| DtIndirectSignalBasedSwitchManager (const DtIndirectSwitchManager &other)=delete | |
| DtIndirectSignalBasedSwitchManager & | operator= (const DtIndirectSwitchManager &other)=delete |
Additional Inherited Members | |
Public Types inherited from makVrv::DtIndirectSwitchManager | |
| typedef osg::observer_ptr < osg::Node > | NodeObserverPtr |
| typedef std::pair < NodeObserverPtr, DtIndirectSwitchInfo > | NodeSwitchInfoPair |
| typedef std::deque < NodeSwitchInfoPair > | DequeNodeSwitchInfoPairs |
| typedef std::vector < DequeNodeSwitchInfoPairs > | DequeNodeSwitchInfoPairsArray |
| typedef std::vector < DtIndirectSwitchInfo > | VectorIndirectSwitchInfos |
| typedef std::map< int, VectorIndirectSwitchInfos > | MapIntToVectorIndirectSwitchInfos |
| typedef std::map < NodeObserverPtr, MapIntToVectorIndirectSwitchInfos > | MapNodeToMapIntToVectorIndirectSwitchInfos |
Public Types inherited from makVrv::DtIndirectManager | |
| enum | ManagerTypes { BaseClass, LodManager, SwitchManager, DofManager, UvOffsetManager, PerInstanceDataManager } |
Static Public Member Functions inherited from makVrv::DtIndirectManager | |
| static int | managerType () |
|
protected |
|
protected |
|
virtual |
DTOR.
|
protected |
CTOR. only creator can create.
|
privatedelete |
default constructor not implemented
|
privatedelete |
Copy Constructor not implemented – Copy Not Allowed.
|
privatedelete |
Assignment Operator Not implemented – Assignment Not Allowed.
|
overridevirtual |
override of DtIndirectSwitchManager::update
Reimplemented from makVrv::DtIndirectSwitchManager.
|
virtual |
remove the switch paths/infos associated with an instance
|
virtual |
set the multi-switch state of an instance/clone, with an instance id. The representative 'master' that is in the indirect switch manager is the parameter 'master'
|
virtual |
set the sequence
|
virtual |
print out the info of what's contained in the maps
|
overrideprotectedvirtual |
add a sequence
Reimplemented from makVrv::DtIndirectSwitchManager.
|
protectedvirtual |
update
| friend makVrv::DtIndirectSignalBasedSwitchManager::DtIndirectSignalBasedSwitchManagerCreator |
only creator can create
|
protected |