VR-Forces 4.0.4 Class Documentation
Public Types | Public Member Functions | Static Public Member Functions | Protected Attributes
makVrv::DtStateVisualizerFactory Class Reference

A factory for DtStateVisualizer's. More...

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

List of all members.

Public Types

typedef boost::unordered_map
< std::string, const
DtStateVisualizer::TypeInfo * > 
TypeInfoMap
 Maps functional type names to type metadata.
typedef boost::unordered_map
< std::string,
DtStateVisualizerCreator * > 
CreatorMap
 Maps functional type names + tags to creators.
typedef std::vector< std::pair
< std::string, DtUnicode > > 
FunctionalNameScreenNameList
typedef std::set< std::string > CreatorNameSet
 Set of creator names.

Public Member Functions

 DtStateVisualizerFactory ()
 Default CTOR.
virtual ~DtStateVisualizerFactory ()
 DTOR.
 DtStateVisualizerFactory (const DtStateVisualizerFactory &rhs)
 Copy CTOR; deep copies contents.
DtStateVisualizerFactoryoperator= (const DtStateVisualizerFactory &rhs)
 Assignment; deep copies contents.
virtual void addStateVisualizerCreator (DtDe &de, DtStateVisualizerCreator *creator)
 Add a state visualizer creator.
DtStateVisualizercreateStateVisualizer (const std::string &creatorName, std::string tag, DtBaseConnection &simulation, DtStateListener &listener, int modelSet, DtStateVisualizer::Type=DtStateVisualizer::AllVisualizerTypes) const
 Create a host StateVisualizer.
const CreatorMapcreators () const
 Get the creators.
const DtStateVisualizerCreatorfindCreator (const std::string &creatorName, const std::string &tag) const
 Find the specified creator; returns 0 if not found.
virtual bool visualizerSupportsType (const std::string &visualizer, DtStateVisualizer::Type) const
 Returns true if the visualizer supports the visualizer type.
virtual void getCreatorNames (std::set< std::string > &names) const
 Returns a set of all creator names in the factory, disregarding tags.
virtual const
DtStateVisualizer::TypeInfo
findTypeInfo (const std::string &functionalTypeName) const
 Returns metadata for the specified functional type returns 0 if no creator for the specified type has been registered yet.
virtual void findFunctionalNameWhichSupportSchema (const std::string &schema, DtStateVisualizer::Type type, FunctionalNameScreenNameList &functionalNames) const
 Returns a list of functional type names.

Static Public Member Functions

static DtStateVisualizerFactoryinstance (DtDe &de)
 Get the instance of the factory from its owner de.
static DtStateVisualizerFactoryinstance (DtBaseConnection &con)
 Get the instance of the factory from its owner base connection.
static void copyInstance (DtBaseConnection &con, DtDe &de)
 Create a new instance for the DtBaseConnection which is a copy of the DtDe instance.
static DtStateVisualizer::Type elementDefinitionTypeToVisualizerType (DtElementDefinitionTypeManager::ElementDefinitionType type)
 Utility function for converting from an element definition type to a state visualizer type.

Protected Attributes

TypeInfoMap myTypeInfoMap
CreatorMap myCreators

Detailed Description

A factory for DtStateVisualizer's.


Member Typedef Documentation

typedef boost::unordered_map<std::string, const DtStateVisualizer::TypeInfo*> makVrv::DtStateVisualizerFactory::TypeInfoMap

Maps functional type names to type metadata.

typedef boost::unordered_map<std::string, DtStateVisualizerCreator*> makVrv::DtStateVisualizerFactory::CreatorMap

Maps functional type names + tags to creators.

typedef std::vector<std::pair<std::string, DtUnicode> > makVrv::DtStateVisualizerFactory::FunctionalNameScreenNameList
typedef std::set<std::string> makVrv::DtStateVisualizerFactory::CreatorNameSet

Set of creator names.


Constructor & Destructor Documentation

Default CTOR.

DTOR.

Copy CTOR; deep copies contents.


Member Function Documentation

DtStateVisualizerFactory& makVrv::DtStateVisualizerFactory::operator= ( const DtStateVisualizerFactory rhs)

Assignment; deep copies contents.

Get the instance of the factory from its owner de.

Get the instance of the factory from its owner base connection.

static void makVrv::DtStateVisualizerFactory::copyInstance ( DtBaseConnection con,
DtDe de 
) [static]

Create a new instance for the DtBaseConnection which is a copy of the DtDe instance.

Add a state visualizer creator.

For each creator type, you must add an untagged version before adding any tagged versions. See exampleBulletHole for an example of this.

DtStateVisualizer* makVrv::DtStateVisualizerFactory::createStateVisualizer ( const std::string &  creatorName,
std::string  tag,
DtBaseConnection simulation,
DtStateListener listener,
int  modelSet,
DtStateVisualizer::Type  = DtStateVisualizer::AllVisualizerTypes 
) const

Create a host StateVisualizer.

Will check the state visualizer type (if given) to make sure the creator will be of the appropriate type. If it is not, unknown state visualizer will be returned

Get the creators.

const DtStateVisualizerCreator* makVrv::DtStateVisualizerFactory::findCreator ( const std::string &  creatorName,
const std::string &  tag 
) const

Find the specified creator; returns 0 if not found.

virtual bool makVrv::DtStateVisualizerFactory::visualizerSupportsType ( const std::string &  visualizer,
DtStateVisualizer::Type   
) const [virtual]

Returns true if the visualizer supports the visualizer type.

Will look up the creator in the factor map, and, if it exists, return whether or not that type supports the supplied type. If no creator exists, false is returned in all cases

virtual void makVrv::DtStateVisualizerFactory::getCreatorNames ( std::set< std::string > &  names) const [virtual]

Returns a set of all creator names in the factory, disregarding tags.

This should be used for getting meta-information about visualizers.

virtual const DtStateVisualizer::TypeInfo* makVrv::DtStateVisualizerFactory::findTypeInfo ( const std::string &  functionalTypeName) const [virtual]

Returns metadata for the specified functional type returns 0 if no creator for the specified type has been registered yet.

virtual void makVrv::DtStateVisualizerFactory::findFunctionalNameWhichSupportSchema ( const std::string &  schema,
DtStateVisualizer::Type  type,
FunctionalNameScreenNameList functionalNames 
) const [virtual]

Returns a list of functional type names.

Utility function for converting from an element definition type to a state visualizer type.


Member Data Documentation


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

Document ID: Generated on Fri Jun 29 16:33:32 EDT 2012 from SVN revision 116588
Copyright © 2005-2012 VT MÄK Inc. All Rights Reserved (www.mak.com)