#include <DetectorDescription/Parser/src/DDLBox.h>
Public Member Functions | |
DDLBox () | |
Constructor. | |
void | processElement (const std::string &name, const std::string &nmspace) |
Processing the element. | |
~DDLBox () | |
Destructor. |
DDLBox.h - description ------------------- begin: Wed Oct 24 2001 email: case@ucdhep.ucdavis.edu
This is the Box element processor.
Definition at line 24 of file DDLBox.h.
void DDLBox::processElement | ( | const std::string & | name, | |
const std::string & | nmspace | |||
) | [virtual] |
Processing the element.
The processElement method completes any necessary work to process the XML element.
For example, this can be used to call the DDCore to make the geometry in memory. There is a default for this so that if not declared in the inheriting class, no processing is done.
Reimplemented from DDXMLElement.
Definition at line 44 of file DDLBox.cc.
References DDSolidFactory::box(), DCOUT_V, ddbox, ExprEvalInterface::eval(), DDXMLElement::getAttributeSet(), DDXMLElement::getDDName(), DDI::Singleton< I >::instance(), and DDLSolid::setReference().
00045 { 00046 DCOUT_V('P', "DDLBox::processElement started"); 00047 00048 ExprEvalInterface & ev = ExprEvalSingleton::instance(); 00049 DDXMLAttribute atts = getAttributeSet(); 00050 00051 DDName ddname = getDDName(nmspace); 00052 DDSolid ddbox = DDSolidFactory::box(ddname 00053 , ev.eval(nmspace, atts.find("dx")->second) 00054 , ev.eval(nmspace, atts.find("dy")->second) 00055 , ev.eval(nmspace, atts.find("dz")->second)); 00056 // Attempt to make sure Solid elements can be in LogicalPart elements. 00057 DDLSolid::setReference(nmspace); 00058 00059 DCOUT_V('P', "DDLBox::processElement completed"); 00060 }