CMS 3D CMS Logo

DDLNumeric.cc
Go to the documentation of this file.
2 
3 #include <map>
4 #include <utility>
5 
10 
11 class DDCompactView;
12 
14  : DDXMLElement( myreg )
15 {}
16 
17 void
19 {}
20 
21 void
23 {
24  if( parent() == "ConstantsSection" || parent() == "DDDefinition" )
25  {
26  DDNumeric ddnum( getDDName( nmspace ), new double( myRegistry_->evaluator().eval( nmspace, getAttributeSet().find( "value" )->second )));
27  clear();
28  } // else, save it, don't clear it, because some other element (parent node) will use it.
29 }
30 
DDLElementRegistry * myRegistry_
Definition: DDXMLElement.h:172
virtual const DDXMLAttribute & getAttributeSet(size_t aIndex=0) const
Get a "row" of attributes, i.e. one attribute set.
Definition: DDXMLElement.cc:73
const std::string & parent(void) const
access to parent element name
void find(edm::Handle< EcalRecHitCollection > &hits, DetId thisDet, std::vector< EcalRecHitCollection::const_iterator > &hit, bool debug=false)
Definition: FindCaloHit.cc:20
type of data representation of DDCompactView
Definition: DDCompactView.h:90
U second(std::pair< T, U > const &p)
ClhepEvaluator & evaluator()
DDLNumeric(DDLElementRegistry *myreg)
Definition: DDLNumeric.cc:13
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:18
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:55
a named constant corresponding to the DDL-XML tag <Constant> and <ConstantsVector> ...
Definition: DDConstant.h:16
virtual const DDName getDDName(const std::string &defaultNS, const std::string &attname=std::string("name"), size_t aIndex=0)
Definition: DDXMLElement.cc:80
void processElement(const std::string &name, const std::string &nmspace, DDCompactView &cpv) override
Processing the element.
Definition: DDLNumeric.cc:22