#include <BinnerAxisFactory.h>


Public Member Functions | |
| void | add (BinnerAxis *) |
| Adds a prototype object to the list of prototypes. | |
| BinnerAxis * | 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. | |
| BinnerAxis * | 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 BinnerAxisFactory * | instance () |
| Returns a pointer to the singleton instance. | |
Protected Member Functions | |
| BinnerAxisFactory () | |
| A default constructor for prevent creation except by the itself or the derived classes. | |
Protected Attributes | |
| std::vector< std::string > | m_names |
| The list of available types by names. | |
| std::map< std::string, BinnerAxis * > | m_types |
| A list of available types. | |
Private Member Functions | |
| BinnerAxisFactory (const BinnerAxisFactory &) | |
| A private copy constructor to prevent copying. | |
| void | initialize () |
| Initializes the factory with a set of default functions. | |
Static Private Attributes | |
| static BinnerAxisFactory * | s_instance = 0 |
| A pointer to the singleton object. | |
These classes are used by BinsBase objects to calculate a bin index. They differ in how the bin edges are determined. An example would be equal width bins which would be used by a simple histogram. However, the bin sizes do not have to be equal width.
Definition at line 31 of file BinnerAxisFactory.h.
| BinnerAxisFactory | ( | const BinnerAxisFactory & | ) | [private] |
A private copy constructor to prevent copying.
| BinnerAxisFactory | ( | ) | [protected] |
A default constructor for prevent creation except by the itself or the derived classes.
Definition at line 26 of file BinnerAxisFactory.cxx.
Referenced by BinnerAxisFactory::instance().
| void add | ( | BinnerAxis * | ) | [inherited] |
Adds a prototype object to the list of prototypes.
| BinnerAxis * 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.
| bool exists | ( | const std::string & | name | ) | const [inherited] |
Returns true if prototype with name name exists in the factory, otherwise returns false.
| void initialize | ( | ) | [private] |
Initializes the factory with a set of default functions.
Definition at line 39 of file BinnerAxisFactory.cxx.
Referenced by BinnerAxisFactory::instance().
| BinnerAxisFactory * instance | ( | ) | [static] |
Returns a pointer to the singleton instance.
Definition at line 30 of file BinnerAxisFactory.cxx.
References BinnerAxisFactory::BinnerAxisFactory(), BinnerAxisFactory::initialize(), and BinnerAxisFactory::s_instance.
Referenced by BinnerAxisXML::createObject(), Hist1DProjImp::Hist1DProjImp(), Hist2DProjImp::Hist2DProjImp(), Profile2DProjector::Profile2DProjector(), and ProfileProjector::ProfileProjector().
| const std::vector< std::string >& names | ( | ) | const [inherited] |
Returns the list of available prototype names.
| BinnerAxis * 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.
| void remove | ( | const std::string & | name | ) | [inherited] |
Removes the named prototype object from the list of prototypes.
std::vector< std::string > m_names [mutable, protected, inherited] |
std::map< std::string, BinnerAxis * > m_types [protected, inherited] |
BinnerAxisFactory * s_instance = 0 [static, private] |
A pointer to the singleton object.
Definition at line 37 of file BinnerAxisFactory.h.
Referenced by BinnerAxisFactory::instance().