VR-Forces 5.0.2 Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Member Functions | Protected Attributes
makVrv::DtMetaFileVisitor Class Reference

DtMetaFileVisitor will inspect the nodes of a scene graph and create the right kind of DtMetaObject for the node. The DtMetaObject will also configure itself based on the JSON data from the .meta file.

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

Public Member Functions

 DtMetaFileVisitor (DtDe &de, DtMetaFileManager::LinkageValueVec &metaFeatures, std::vector< DtVirtualBaseClass * > &tickablesVec, const std::string &modelDefName, const DtElementID elementId, const DtUniqueID uniqueId, DtOsgArticulatedModel *model=0)
 
virtual ~DtMetaFileVisitor ()
 
virtual void matchAndCreateMetaObject (osg::Node &node, int nodeTypeIndex)
 
virtual bool matches (const DtMetaFileManager::NodeLinkage &currLinkage, const osg::Node &n) const
 
Apply methods
virtual void apply (osg::Node &node)
 
virtual void apply (osg::Geode &geode)
 
virtual void apply (osg::Group &group)
 
virtual void apply (osgSim::MultiSwitch &multiswitch)
 
virtual void apply (osg::Switch &sw)
 
virtual void apply (osgSim::DOFTransform &dof)
 

Protected Attributes

DtDemyDe
 
DtMetaObjectFactorymyMetaObjectFactory
 
DtMetaFileManager::LinkageValueVecmyDynamicFeatureNames
 
std::vector
< DtVirtualBaseClass * > & 
myCreatedDynamicFeatures
 
DtElementID myElementId
 
std::string myModelDefinitionName
 
DtOsgArticulatedModelmyOsgArticulatedModel
 
DtUniqueID myUniqueId
 
unsigned int myInstancedSwitchIndex
 
unsigned int myInstancedDofIndex
 
unsigned int myInstancedMultiswitchIndex
 
unsigned int myInstancedGeodeIndex
 
unsigned int myInstancedGroupIndex
 

Constructor & Destructor Documentation

makVrv::DtMetaFileVisitor::DtMetaFileVisitor ( DtDe de,
DtMetaFileManager::LinkageValueVec metaFeatures,
std::vector< DtVirtualBaseClass * > &  tickablesVec,
const std::string &  modelDefName,
const DtElementID  elementId,
const DtUniqueID  uniqueId,
DtOsgArticulatedModel model = 0 
)

CTOR.

virtual makVrv::DtMetaFileVisitor::~DtMetaFileVisitor ( )
virtual

DTOR.

Member Function Documentation

virtual void makVrv::DtMetaFileVisitor::apply ( osg::Node &  node)
virtual
virtual void makVrv::DtMetaFileVisitor::apply ( osg::Geode &  geode)
virtual
virtual void makVrv::DtMetaFileVisitor::apply ( osg::Group &  group)
virtual
virtual void makVrv::DtMetaFileVisitor::apply ( osgSim::MultiSwitch &  multiswitch)
virtual
virtual void makVrv::DtMetaFileVisitor::apply ( osg::Switch &  sw)
virtual
virtual void makVrv::DtMetaFileVisitor::apply ( osgSim::DOFTransform &  dof)
virtual
virtual void makVrv::DtMetaFileVisitor::matchAndCreateMetaObject ( osg::Node &  node,
int  nodeTypeIndex 
)
virtual

Match up meta data to particular nodes.

virtual bool makVrv::DtMetaFileVisitor::matches ( const DtMetaFileManager::NodeLinkage currLinkage,
const osg::Node &  n 
) const
virtual

Does this node match our meta file feature's node name or annotation string.

Member Data Documentation

DtDe& makVrv::DtMetaFileVisitor::myDe
protected
DtMetaObjectFactory& makVrv::DtMetaFileVisitor::myMetaObjectFactory
protected

Generate the type of feature we need depending on the meta data feature name (set up in vrvOsg.cxx)

DtMetaFileManager::LinkageValueVec& makVrv::DtMetaFileVisitor::myDynamicFeatureNames
protected

List of node pointers that have meta data associated with them.

std::vector<DtVirtualBaseClass*>& makVrv::DtMetaFileVisitor::myCreatedDynamicFeatures
protected

Vector of dynamic features on this terrain so they can be deleted on page destruction.

DtElementID makVrv::DtMetaFileVisitor::myElementId
protected

The element ID of the object we are traversing.

std::string makVrv::DtMetaFileVisitor::myModelDefinitionName
protected

The model definition name for the object we are traversing.

DtOsgArticulatedModel* makVrv::DtMetaFileVisitor::myOsgArticulatedModel
protected

The object we are traversing, may be NULL.

DtUniqueID makVrv::DtMetaFileVisitor::myUniqueId
protected

For instancing, what is the instance unique ID.

unsigned int makVrv::DtMetaFileVisitor::myInstancedSwitchIndex
protected

Used for connecting the switch node to the corresponding instanced switch.

unsigned int makVrv::DtMetaFileVisitor::myInstancedDofIndex
protected

Used for connecting the DoF node to the corresponding instanced DoF.

unsigned int makVrv::DtMetaFileVisitor::myInstancedMultiswitchIndex
protected

Used for connecting the multiswitch node to the corresponding instanced multiswitch.

unsigned int makVrv::DtMetaFileVisitor::myInstancedGeodeIndex
protected
unsigned int makVrv::DtMetaFileVisitor::myInstancedGroupIndex
protected

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

Document ID: Generated on Sun Dec 4 20:22:03 EST 2022 from SVN revision 249613
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)