CMS 3D CMS Logo

DDLNumeric.cc
Go to the documentation of this file.
6 
7 #include <map>
8 #include <utility>
9 
10 class DDCompactView;
11 
13 
15 
17  if (parent() == "ConstantsSection" || parent() == "DDDefinition") {
18  DDNumeric ddnum(
19  getDDName(nmspace),
20  std::make_unique<double>(myRegistry_->evaluator().eval(nmspace, getAttributeSet().find("value")->second)));
21  clear();
22  } // else, save it, don't clear it, because some other element (parent node) will use it.
23 }
DDLElementRegistry * myRegistry_
Definition: DDXMLElement.h:173
void find(edm::Handle< EcalRecHitCollection > &hits, DetId thisDet, std::vector< EcalRecHitCollection::const_iterator > &hit, bool debug=false)
Definition: FindCaloHit.cc:19
Compact representation of the geometrical detector hierarchy.
Definition: DDCompactView.h:81
U second(std::pair< T, U > const &p)
ClhepEvaluator & evaluator()
virtual const DDXMLAttribute & getAttributeSet(size_t aIndex=0) const
Get a "row" of attributes, i.e. one attribute set.
Definition: DDXMLElement.cc:54
DDLNumeric(DDLElementRegistry *myreg)
Definition: DDLNumeric.cc:12
This is a base class for processing XML elements in the DDD.
Definition: DDXMLElement.h:48
void preProcessElement(const std::string &name, const std::string &nmspace, DDCompactView &cpv) override
Called by loadAttributes AFTER attributes are loaded.
Definition: DDLNumeric.cc:14
const std::string & parent(void) const
access to parent element name
double eval(const std::string &ns, const std::string &expr)
The main class for processing parsed elements.
virtual void clear(void)
clear this element&#39;s contents.
Definition: DDXMLElement.cc:40
a named constant corresponding to the DDL-XML tag <Constant> and <ConstantsVector> ...
Definition: DDConstant.h:18
virtual const DDName getDDName(const std::string &defaultNS, const std::string &attname=std::string("name"), size_t aIndex=0)
Definition: DDXMLElement.cc:56
void processElement(const std::string &name, const std::string &nmspace, DDCompactView &cpv) override
Processing the element.
Definition: DDLNumeric.cc:16