The main class for processing parsed elements. More...
#include <DDLElementRegistry.h>
Public Types | |
typedef std::map< std::string, DDXMLElement * > | RegistryMap |
Public Member Functions | |
DDLElementRegistry () | |
Constructor. More... | |
DDXMLElement * | getElement (const std::string &name) |
THE most important part. Getting the pointer to a given element type. More... | |
const std::string & | getElementName (DDXMLElement *theElement) const |
Get the name given a pointer. This may not be needed... More... | |
void | registerElement (const std::string &name, DDXMLElement *) |
This allows other Elements to register themselves with the static registry. More... | |
~DDLElementRegistry () | |
Destructor. More... | |
Private Attributes | |
RegistryMap | registry_ |
The main class for processing parsed elements.
begin : Wed Oct 24 2001 email : case@ ucdh ep.uc davi s.edu
This class is designed to serve as a registry of all DDL XML elements. It inherits from DDXMLElementRegistry.
This class is responsible for constructing and destructing any necessary DDL element.
Definition at line 41 of file DDLElementRegistry.h.
typedef std::map<std::string, DDXMLElement*> DDLElementRegistry::RegistryMap |
Definition at line 45 of file DDLElementRegistry.h.
DDLElementRegistry::DDLElementRegistry | ( | void | ) |
DDLElementRegistry::~DDLElementRegistry | ( | void | ) |
Destructor.
Definition at line 55 of file DDLElementRegistry.cc.
References end, spr::find(), and registry_.
DDXMLElement * DDLElementRegistry::getElement | ( | const std::string & | name | ) |
THE most important part. Getting the pointer to a given element type.
If this is called with a DDXMLElementRegistry pointer, it will simply return a pointer if already registered or NULL, no instantiating.
Definition at line 75 of file DDLElementRegistry.cc.
References DCOUT_V, mergeVDriftHistosByStation::name, NULL, and registry_.
Referenced by DDLBooleanSolid::dumpBooleanSolid(), DDLAlgorithm::preProcessElement(), DDLReflectionSolid::preProcessElement(), DDLBooleanSolid::preProcessElement(), DDLRotationSequence::preProcessElement(), DDLPosPart::preProcessElement(), DDLShapelessSolid::preProcessElement(), DDLPolyGenerator::preProcessElement(), DDLCompositeMaterial::preProcessElement(), DDLLogicalPart::preProcessElement(), DDLSpecPar::processElement(), DDLReflectionSolid::processElement(), DDLAlgorithm::processElement(), DDLAlgoPosPart::processElement(), DDLPolyGenerator::processElement(), DDLRotationSequence::processElement(), DDLBooleanSolid::processElement(), DDLPosPart::processElement(), DDLRotationByAxis::processElement(), DDLCompositeMaterial::processElement(), DDLLogicalPart::processElement(), DDLMaterial::setReference(), and DDLSolid::setReference().
const std::string & DDLElementRegistry::getElementName | ( | DDXMLElement * | theElement | ) | const |
void DDLElementRegistry::registerElement | ( | const std::string & | name, |
DDXMLElement * | |||
) |
This allows other Elements to register themselves with the static registry.
|
private |
Definition at line 68 of file DDLElementRegistry.h.
Referenced by getElement(), getElementName(), and ~DDLElementRegistry().