This Singleton class maintains a list of DataRep objects. More...
#include <DataRepFactory.h>


Public Member Functions | |
| void | add (hippodraw::DataRep *) |
| Adds a prototype object to the list of prototypes. More... | |
| hippodraw::DataRep * | create (const std::string &name) |
| Creates a new object from a prototype named name. More... | |
| bool | exists (const std::string &name) const |
| Returns true if prototype with name name exists in the factory, otherwise returns false. More... | |
| const std::vector< std::string > & | names () const |
| Returns the list of available prototype names. More... | |
| hippodraw::DataRep * | prototype (const std::string &name) const |
| Returns a pointer to a prototype with name name. More... | |
| void | remove (const std::string &name) |
| Removes the named prototype object from the list of prototypes. More... | |
| ~DataRepFactory () | |
| The destructor. More... | |
Static Public Member Functions | |
| static DataRepFactory * | instance () |
| Returns the pointer to the singleton instance. More... | |
Protected Member Functions | |
| DataRepFactory () | |
| The default constructor for avoiding creation except by itself or with derived classes. More... | |
Protected Attributes | |
| std::vector< std::string > | m_names |
| The list of available types by names. More... | |
| std::map< std::string, hippodraw::DataRep * > | m_types |
| A list of available types. More... | |
Private Member Functions | |
| DataRepFactory (const DataRepFactory &) | |
| A private copy constructor to avoid copying. More... | |
| void | initialize () |
| Initializes the factory with a set of default DataReps. More... | |
Static Private Attributes | |
| static DataRepFactory * | s_instance = 0 |
| The pointer to the singleton object. More... | |
This Singleton class maintains a list of DataRep objects.
They can be looked up by their advertised name. New objects are created by cloning existing ones.
Definition at line 25 of file DataRepFactory.h.
|
private |
A private copy constructor to avoid copying.
|
protected |
The default constructor for avoiding creation except by itself or with derived classes.
Definition at line 42 of file DataRepFactory.cxx.
Referenced by DataRepFactory::instance().
| ~DataRepFactory | ( | ) |
The destructor.
Definition at line 47 of file DataRepFactory.cxx.
|
inherited |
Adds a prototype object to the list of prototypes.
Referenced by DataRepFactory::initialize().
|
inherited |
Creates a new object from a prototype named name.
If found, returns a new object by invoking the clone() member function of the prototype. If not found, throws a FactoryException object with the name not found.
|
inherited |
Returns true if prototype with name name exists in the factory, otherwise returns false.
|
private |
Initializes the factory with a set of default DataReps.
Definition at line 61 of file DataRepFactory.cxx.
References Factory< hippodraw::DataRep >::add().
Referenced by DataRepFactory::instance().
|
static |
Returns the pointer to the singleton instance.
Definition at line 51 of file DataRepFactory.cxx.
References DataRepFactory::DataRepFactory(), DataRepFactory::initialize(), and DataRepFactory::s_instance.
Referenced by DataRepController::bindingOptions(), DisplayController::bindingOptions(), DataRepController::createDataRep(), DisplayController::createDisplay(), DisplayController::getDisplayTypes(), DisplayController::isCompatible(), DataRepController::names(), and DataRepController::~DataRepController().
|
inherited |
Returns the list of available prototype names.
|
inherited |
Returns a pointer to a prototype with name name.
If a prototype with name doesn't exit, throws a FactoryException object with the name not found.
|
inherited |
Removes the named prototype object from the list of prototypes.
|
mutableprotectedinherited |
|
protectedinherited |
|
staticprivate |
The pointer to the singleton object.
Definition at line 32 of file DataRepFactory.h.
Referenced by DataRepFactory::instance().