#include <PointRepFactory.h>
Inheritance diagram for PointRepFactory:
Definition at line 28 of file PointRepFactory.h.
Public Member Functions | |
void | add (Type *) |
Adds a prototype object to the list of prototypes. | |
Type * | create (const std::string &name) |
Creates a new object from a prototype named name. | |
bool | exists (const std::string &name) const |
Returns true if prototype with name name exists in the factory, otherwise returns false. | |
const std::vector< std::string > & | names () const |
Returns the list of available prototype names. | |
Type * | prototype (const std::string &name) const |
Returns a pointer to a prototype with name name. | |
void | remove (const std::string &name) |
Removes the named prototype object from the list of prototypes. | |
Static Public Member Functions | |
static PointRepFactory * | instance () |
Returns a pointer to the singleton instance. | |
Protected Attributes | |
std::vector< std::string > | m_names |
The list of available types by names. | |
std::map< std::string, Type * > | m_types |
A list of available types. | |
Private Member Functions | |
void | initialize () |
Initializes the factory with a set of default PointReps. | |
PointRepFactory () | |
A default constructor for prevent creation except by itself. | |
PointRepFactory (const PointRepFactory &) | |
A private copy constructor to avoid copying. | |
Static Private Attributes | |
static PointRepFactory * | s_instance |
A pointer to the singleton object. |
PointRepFactory | ( | const PointRepFactory & | ) | [private] |
A private copy constructor to avoid copying.
PointRepFactory | ( | ) | [private] |
A default constructor for prevent creation except by itself.
Definition at line 31 of file PointRepFactory.cxx.
Referenced by PointRepFactory::instance().
void add | ( | Type * | ) | [inherited] |
Adds a prototype object to the list of prototypes.
Definition at line 116 of file Factory.h.
References Factory::m_types.
Referenced by hippodraw::Python::export_FunctionFactory(), TransformFactory::initialize(), TextRepFactory::initialize(), PointRepFactory::initialize(), PlotterFactory::initialize(), FunctionFactory::initialize(), FitterFactory::initialize(), BinToColorFactory::initialize(), BinsFactory::initialize(), and BinnerAxisFactory::initialize().
Type * create | ( | const std::string & | name | ) | [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.
Definition at line 160 of file Factory.h.
References Factory::prototype().
Referenced by CutController::createCut(), DataRepController::createDataRep(), PointRepXML::createObject(), BinsBaseXML::createObject(), BinnerAxisXML::createObject(), PlotterBaseXML::createPlotter(), DisplayController::createTextDataRep(), hippodraw::Python::export_FitterFactory(), hippodraw::Python::export_FunctionFactory(), hippodraw::Python::export_PointRepFactory(), Hist1DProjImp::Hist1DProjImp(), Hist2DProjImp::Hist2DProjImp(), and Profile2DProjector::Profile2DProjector().
bool exists | ( | const std::string & | name | ) | const [inherited] |
Returns true if prototype with name name exists in the factory, otherwise returns false.
Definition at line 136 of file Factory.h.
Referenced by FitterFactory::setDefault().
void initialize | ( | ) | [private] |
Initializes the factory with a set of default PointReps.
Definition at line 44 of file PointRepFactory.cxx.
References Factory::add().
Referenced by PointRepFactory::instance().
PointRepFactory * instance | ( | ) | [static] |
Returns a pointer to the singleton instance.
Definition at line 35 of file PointRepFactory.cxx.
References PointRepFactory::initialize(), PointRepFactory::PointRepFactory(), and PointRepFactory::s_instance.
Referenced by PointRepXML::createObject(), hippodraw::Python::export_PointRepFactory(), and DisplayController::setPointRep().
const std::vector< std::string > & names | ( | ) | const [inherited] |
Returns the list of available prototype names.
Definition at line 170 of file Factory.h.
References Factory::m_names, and Factory::m_types.
Referenced by hippodraw::Python::export_FitterFactory(), hippodraw::Python::export_FunctionFactory(), hippodraw::Python::export_PointRepFactory(), FitterFactory::getDefault(), and DisplayController::getTextTypes().
Type * prototype | ( | const std::string & | name | ) | const [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.
Definition at line 148 of file Factory.h.
References Factory::m_types.
Referenced by DataRepController::bindingOptions(), Factory::create(), DisplayController::createDisplay(), TransformFactory::createTransform(), TransformFactory::createXY(), TransformFactory::createXYZ(), and DisplayController::isCompatible().
void remove | ( | const std::string & | name | ) | [inherited] |
std::vector< std::string > m_names [mutable, protected, inherited] |
The list of available types by names.
This list should be identical to the list of m_types
keys. It is updated when the member function names is called.
Definition at line 58 of file Factory.h.
Referenced by Factory::names().
std::map< std::string, Type * > m_types [protected, inherited] |
A list of available types.
Definition at line 53 of file Factory.h.
Referenced by Factory::add(), Factory::names(), and Factory::prototype().
PointRepFactory * s_instance [static, private] |
A pointer to the singleton object.
Definition at line 34 of file PointRepFactory.h.
Referenced by PointRepFactory::instance().