VR-Forces Development_Version Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
List of all members | 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]

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.
- Public Member Functions inherited from makVrv::DtVirtualBaseClass
 DtVirtualBaseClass ()
 Do nothing constructor.
virtual ~DtVirtualBaseClass ()
 Virtual do nothing destructor.

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

makVrv::DtStateVisualizerFactory::DtStateVisualizerFactory ( )

Default CTOR.

virtual makVrv::DtStateVisualizerFactory::~DtStateVisualizerFactory ( )
virtual

DTOR.

makVrv::DtStateVisualizerFactory::DtStateVisualizerFactory ( const DtStateVisualizerFactory rhs)

Copy CTOR; deep copies contents.

Member Function Documentation

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

Assignment; deep copies contents.

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

Get the instance of the factory from its owner de.

static DtStateVisualizerFactory& makVrv::DtStateVisualizerFactory::instance ( DtBaseConnection con)
static

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.

virtual void makVrv::DtStateVisualizerFactory::addStateVisualizerCreator ( DtDe de,
DtStateVisualizerCreator creator 
)
virtual

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

const CreatorMap& makVrv::DtStateVisualizerFactory::creators ( ) const

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.

static DtStateVisualizer::Type makVrv::DtStateVisualizerFactory::elementDefinitionTypeToVisualizerType ( DtElementDefinitionTypeManager::ElementDefinitionType  type)
static

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

Member Data Documentation

TypeInfoMap makVrv::DtStateVisualizerFactory::myTypeInfoMap
protected
CreatorMap makVrv::DtStateVisualizerFactory::myCreators
protected

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

Document ID: Generated on Mon Jul 4 01:00:18 EDT 2016 from SVN revision 166489
Copyright © 2005-2015 VT MÄK. All Rights Reserved (www.mak.com)