Go to the documentation of this file.
38 for (;
i < myNumeric->size(); ++
i) {
39 atts = myNumeric->getAttributeSet(
i);
44 for (
i = 0;
i < myString->size(); ++
i) {
45 atts = myString->getAttributeSet(
i);
46 sArgs[atts.find(
"name")->second] = atts.find(
"value")->second;
54 static_cast<DDLVector*>(myVector.get())->getMapOfVectors(),
55 static_cast<DDLMap*>(myMap.get())->getMapOfMaps(),
57 static_cast<DDLVector*>(myVector.get())->getMapOfStrVectors());
virtual void clear(void)
clear this element's contents.
DDName is used to identify DDD entities uniquely.
DDLAlgorithm(DDLElementRegistry *myreg)
The main class for processing parsed elements.
void execute(DDCompactView &)
executes the wrapped algorithm algo_; some pre- and post-processing (exception handling)
virtual const DDXMLAttribute & getAttributeSet(size_t aIndex=0) const
Get a "row" of attributes, i.e. one attribute set.
ClhepEvaluator & evaluator()
Compact representation of the geometrical detector hierarchy.
std::map< std::string, std::string > DDXMLAttribute
wrapper around a DDAlgorithm
void preProcessElement(const std::string &name, const std::string &nmspace, DDCompactView &cpv) override
Called by loadAttributes AFTER attributes are loaded.
A DDLogicalPart aggregates information concerning material, solid and sensitveness ....
This is a base class for processing XML elements in the DDD.
const virtual DDName getDDName(const std::string &defaultNS, const std::string &attname=std::string("name"), size_t aIndex=0)
std::shared_ptr< DDXMLElement > getElement(const std::string &name)
THE most important part. Getting the pointer to a given element type.
void processElement(const std::string &name, const std::string &nmspace, DDCompactView &cpv) override
Processing the element.
DDLElementRegistry * myRegistry_
void initialize(const DDName &algoName, const DDLogicalPart &parent, const DDNumericArguments &nArgs, const DDVectorArguments &vArgs, const DDMapArguments &mArgs, const DDStringArguments &sArgs, const DDStringVectorArguments &svArgs)
initializes the wrapped algorithm algo_ and does some pre- and post-processing
double eval(const std::string &ns, const std::string &expr)