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 Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | Friends
makVrv::DtVisualizerSchemaManager Class Reference
Inheritance diagram for makVrv::DtVisualizerSchemaManager:
Inheritance graph
[legend]

Public Types

typedef boost::unordered_map
< std::string, const
DtVisualizerSchema * > 
SchemaMap
 
typedef boost::unordered_map
< unsigned int, SchemaMap
TypeSchemaMap
 

Public Member Functions

virtual ~DtVisualizerSchemaManager ()
 
void registerVisualizerSchema (DtStateVisualizer::Type type, const DtVisualizerSchema *entry)
 
const DtVisualizerSchemafindSchemaEntry (DtStateVisualizer::Type type, const std::string &schemaName) const
 
const DtVisualizerSchemafindSchemaEntry (const std::string &schemaName) const
 
void getSchemaEntriesForType (DtStateVisualizer::Type type, std::vector< const DtVisualizerSchema * > &entries)
 
void loadDefaults ()
 
- Public Member Functions inherited from makVrv::DtVirtualBaseClass
 DtVirtualBaseClass ()
 
virtual ~DtVirtualBaseClass ()
 

Static Public Member Functions

static DtVisualizerSchemaManagerinstance (DtDe &)
 
static std::string newSchemaNameFromOld (const std::string &oldSchemaName)
 

Protected Member Functions

 DtVisualizerSchemaManager (DtDe &)
 

Protected Attributes

TypeSchemaMap mySchemaMap
 
DtSignalConnectionManager myConnections
 

Friends

template<typename ManagerClass >
ManagerClass & defaultManagerInstanceFunction (DtDe &, bool)
 
template<typename ManagerClass >
void defaultManagerRegisterInstanceFunction (DtDe &, ManagerClass *)
 

Member Typedef Documentation

typedef boost::unordered_map<std::string, const DtVisualizerSchema*> makVrv::DtVisualizerSchemaManager::SchemaMap

Maps schema name to schema.

Get a map of schema entries.

Constructor & Destructor Documentation

virtual makVrv::DtVisualizerSchemaManager::~DtVisualizerSchemaManager ( )
virtual

DTOR.

makVrv::DtVisualizerSchemaManager::DtVisualizerSchemaManager ( DtDe )
protected

CTOR.

Member Function Documentation

static DtVisualizerSchemaManager& makVrv::DtVisualizerSchemaManager::instance ( DtDe )
static

Get the instance of the schema manager.

void makVrv::DtVisualizerSchemaManager::registerVisualizerSchema ( DtStateVisualizer::Type  type,
const DtVisualizerSchema entry 
)

Register a schema which is used by a type of state visualizers.

const DtVisualizerSchema* makVrv::DtVisualizerSchemaManager::findSchemaEntry ( DtStateVisualizer::Type  type,
const std::string &  schemaName 
) const

Find a schema by it's name assuming it is needed for a specific type. This is faster than findSchemaEntry without a type.

Returns
0 if the schema is not found.
const DtVisualizerSchema* makVrv::DtVisualizerSchemaManager::findSchemaEntry ( const std::string &  schemaName) const

Find a schema by it's name only.

Returns
0 if the schema is not found.
void makVrv::DtVisualizerSchemaManager::getSchemaEntriesForType ( DtStateVisualizer::Type  type,
std::vector< const DtVisualizerSchema * > &  entries 
)

Get all of the schema entries for a given type.

void makVrv::DtVisualizerSchemaManager::loadDefaults ( )

Load the default values (NoOp).

static std::string makVrv::DtVisualizerSchemaManager::newSchemaNameFromOld ( const std::string &  oldSchemaName)
static

Map an old schema name to a new one (generally old schemas end in "Visualizer" and new ones end in "Schema".

Friends And Related Function Documentation

template<typename ManagerClass >
ManagerClass& defaultManagerInstanceFunction ( DtDe de,
bool  allowedInSlave 
)
friend

Befriend the manager instance functions for instance retreival/creation.

Befriend the manager instance functions for instance retrieval and creation.

Befriend the manager instance functions for instance retreival/creation.

Befriend the manager instance functions for instance retrieval/creation.

class Manager
{
public:
static Manager& instance(DtDe& de);
void loadDefaults();
protected:
template <typename ManagerClass>
friend ManagerClass& defaultManagerInstanceFunction(DtDe& de, bool);
template <typename ManagerClass>
friend void defaultManagerRegisterInstanceFunction(DtDe& de, ManagerClass* mgr)
Manager(DtDe&);
DtSignalConnectionManager myConnections;
};

Then simply in the implementation of instance call defaultManagerInstanceFunction with the de object and return the return value.

Manager& Manager::instance(DtDe& de)
{
return defaultManagerInstanceFunction<Manager>(de);
}
template<typename ManagerClass >
void defaultManagerRegisterInstanceFunction ( DtDe de,
ManagerClass *  mgr 
)
friend

Befriend the manager instance functions for instance retreival/creation.

Befriend the manager instance functions for instance retrieval and creation.

Befriend the manager instance functions for instance retreival/creation.

Befriend the manager instance functions for instance retrieval/creation.

static void Manager::registerInstance(DtDe& de, Manager* mgr)
{
}
...else where call.
// Assuming class NewManager : public Manager
Manager::registerInstance(de,new NewManager(de));

Member Data Documentation

TypeSchemaMap makVrv::DtVisualizerSchemaManager::mySchemaMap
protected
DtSignalConnectionManager makVrv::DtVisualizerSchemaManager::myConnections
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)