CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
TriggerMenuXmlParser.h
Go to the documentation of this file.
1 #ifndef L1TGlobal_TriggerMenuXmlParser_h
2 #define L1TGlobal_TriggerMenuXmlParser_h
3 
21 // system include files
22 #include <string>
23 #include <vector>
24 
25 #include <boost/cstdint.hpp>
26 
27 #include <xercesc/sax/HandlerBase.hpp>
28 #include <xercesc/dom/DOM.hpp>
29 #include <xercesc/parsers/XercesDOMParser.hpp>
30 
31 // user include files
32 // base class
34 
37 
43 
45 
46 #include "L1Trigger/L1TGlobal/src/L1TMenuEditor/L1TriggerMenu.hxx"
47 
48 #include "tmEventSetup/tmEventSetup.hh"
49 #include "tmEventSetup/esTriggerMenu.hh"
50 #include "tmEventSetup/esAlgorithm.hh"
51 #include "tmEventSetup/esCondition.hh"
52 #include "tmEventSetup/esObject.hh"
53 #include "tmEventSetup/esCut.hh"
54 #include "tmEventSetup/esScale.hh"
55 #include "tmGrammar/Algorithm.hh"
56 
57 // forward declarations
58 class GtCondition;
59 class L1GtAlgorithm;
60 
61 namespace l1t {
62 
63 // class declaration
65 {
66 
67 public:
68 
72 
74  virtual ~TriggerMenuXmlParser();
75 
76 public:
77 
79  inline const unsigned int gtNumberConditionChips() const {
81  }
82 
83  void setGtNumberConditionChips(const unsigned int&);
84 
86  inline const unsigned int gtPinsOnConditionChip() const {
87  return m_pinsOnConditionChip;
88  }
89 
90  void setGtPinsOnConditionChip(const unsigned int&);
91 
94  inline std::vector<int> gtOrderConditionChip() const {
95  return m_orderConditionChip;
96  }
97 
98  void setGtOrderConditionChip(const std::vector<int>&);
99 
101  inline const unsigned int gtNumberPhysTriggers() const {
102  return m_numberPhysTriggers;
103  }
104 
105  void setGtNumberPhysTriggers(const unsigned int&);
106 
107 /*
109  inline const unsigned int gtNumberTechTriggers() const {
110  return m_numberTechTriggers;
111  }
112 
113  void setGtNumberTechTriggers(const unsigned int&);
114 */
115 
116 
117 
118 public:
119 
121  inline const std::vector<ConditionMap>& gtConditionMap() const {
122  return m_conditionMap;
123  }
124 
125  void setGtConditionMap(const std::vector<ConditionMap>&);
126 
128  inline const std::string& gtTriggerMenuInterface() const {
129  return m_triggerMenuInterface;
130  }
131 
133 
134  //
135  inline const std::string& gtTriggerMenuName() const {
136  return m_triggerMenuName;
137  }
138 
139  void setGtTriggerMenuName(const std::string&);
140 
141  //
142  inline const std::string& gtTriggerMenuImplementation() const {
144  }
145 
147 
149  inline const std::string& gtScaleDbKey() const {
150  return m_scaleDbKey;
151  }
152 
154  inline const L1TGlobalScales& gtScales() const {
155  return m_gtScales;
156  }
157 
158  void setGtScaleDbKey(const std::string&);
159 
161  inline const std::vector<std::vector<MuonTemplate> >& vecMuonTemplate() const {
162  return m_vecMuonTemplate;
163  }
164  void setVecMuonTemplate(const std::vector<std::vector<MuonTemplate> >&);
165 
166  //
167  inline const std::vector<std::vector<CaloTemplate> >& vecCaloTemplate() const {
168  return m_vecCaloTemplate;
169  }
170 
171  void setVecCaloTemplate(const std::vector<std::vector<CaloTemplate> >&);
172 
173  //
174  inline const std::vector<std::vector<EnergySumTemplate> >& vecEnergySumTemplate() const {
175 
176  return m_vecEnergySumTemplate;
177  }
178 
180  const std::vector<std::vector<EnergySumTemplate> >&);
181 
182  //
183 
184  inline const std::vector<std::vector<ExternalTemplate> >&
186 
187  return m_vecExternalTemplate;
188  }
189 
191  const std::vector<std::vector<ExternalTemplate> >&);
192 
193  //
194  inline const std::vector<std::vector<CorrelationTemplate> >& vecCorrelationTemplate() const {
195 
197  }
198 
200  const std::vector<std::vector<CorrelationTemplate> >&);
201 
202  // get / set the vectors containing the conditions for correlation templates
203  //
204  inline const std::vector<std::vector<MuonTemplate> >& corMuonTemplate() const {
205  return m_corMuonTemplate;
206  }
207 
208  void setCorMuonTemplate(const std::vector<std::vector<MuonTemplate> >&);
209 
210  //
211  inline const std::vector<std::vector<CaloTemplate> >& corCaloTemplate() const {
212  return m_corCaloTemplate;
213  }
214 
215  void setCorCaloTemplate(const std::vector<std::vector<CaloTemplate> >&);
216 
217  //
218  inline const std::vector<std::vector<EnergySumTemplate> >& corEnergySumTemplate() const {
219 
220  return m_corEnergySumTemplate;
221  }
222 
224  const std::vector<std::vector<EnergySumTemplate> >&);
225 
227  inline const AlgorithmMap& gtAlgorithmMap() const {
228  return m_algorithmMap;
229  }
230 
231  void setGtAlgorithmMap(const AlgorithmMap&);
232 
234  inline const AlgorithmMap& gtAlgorithmAliasMap() const {
235  return m_algorithmAliasMap;
236  }
237 
239 /*
241  inline const AlgorithmMap& gtTechnicalTriggerMap() const {
242  return m_technicalTriggerMap;
243  }
244 
245 // void setGtTechnicalTriggerMap(const AlgorithmMap&);
246 */
247 
248 public:
249 
251  void parseXmlFile(const std::string& defXmlFile,
252  const std::string& vmeXmlFile);
253 
254 
255  void parseXmlFileV2(const std::string& defXmlFile);
256 
257 public:
258 
260  inline const std::string& gtTriggerMenuInterfaceDate() const {
262  }
263 
265 
268  }
269 
271 
274  }
275 
277 
278  //
279 
280  inline const std::string& gtTriggerMenuDate() const {
281  return m_triggerMenuDate;
282  }
283 
284  void setGtTriggerMenuDate(const std::string&);
285 
286  inline const std::string& gtTriggerMenuAuthor() const {
287  return m_triggerMenuAuthor;
288  }
289 
290  void setGtTriggerMenuAuthor(const std::string&);
291 
292  inline const std::string& gtTriggerMenuDescription() const {
294  }
295 
297 
298 
299  inline const std::string& gtAlgorithmImplementation() const {
301  }
302 
304 
305 
306 private:
307 
308  // XML methods
309 
311  XERCES_CPP_NAMESPACE::XercesDOMParser* initXML(const std::string& xmlFile);
312 
314  XERCES_CPP_NAMESPACE::DOMNode* findXMLChild(
315  XERCES_CPP_NAMESPACE::DOMNode* startChild,
316  const std::string& tagName, bool beginOnly = false,
317  std::string* rest = 0);
318 
320  std::string getXMLAttribute(const XERCES_CPP_NAMESPACE::DOMNode* node,
321  const std::string& name);
322 
324  std::string getXMLTextValue(XERCES_CPP_NAMESPACE::DOMNode* node);
325 
327  bool hexString2UInt128(const std::string& hexString, boost::uint64_t& dstL,
328  boost::uint64_t& dstH);
329 
331  bool getXMLHexTextValue128Old(XERCES_CPP_NAMESPACE::DOMNode* node,
332  boost::uint64_t& dstL, boost::uint64_t& dstH);
333  bool getXMLHexTextValue128(const std::string& childName,
334  boost::uint64_t& dstL, boost::uint64_t& dstH);
335 
337  bool getXMLHexTextValueOld(XERCES_CPP_NAMESPACE::DOMNode* node,
338  boost::uint64_t& dst);
339  bool getXMLHexTextValue(const std::string& childName,
340  boost::uint64_t& dst);
341 
343  bool countConditionChildMaxBits(const std::string& childName,
344  unsigned int& dst);
345 
347  bool getConditionChildValuesOld(XERCES_CPP_NAMESPACE::DOMNode* node,
348  const std::string& childName, unsigned int num,
349  std::vector<boost::uint64_t>& dst);
350 
352  void cleanupXML(XERCES_CPP_NAMESPACE::XercesDOMParser* parser);
353 
354 
355 private:
356 
357  // methods for the VME file
358 
360  bool parseVmeXML(XERCES_CPP_NAMESPACE::XercesDOMParser* parser);
361 
362 private:
363 
364  // methods for conditions and algorithms
365 
368  void clearMaps();
369 
372  bool insertConditionIntoMap(GtCondition& cond, const int chipNr);
373 
375  bool insertAlgorithmIntoMap(const L1GtAlgorithm& alg);
376 
378  //bool insertTechTriggerIntoMap(const L1GtAlgorithm& alg);
379 
383 
385  int getNumFromType(const std::string& type);
386 
388  int getBitFromNode(XERCES_CPP_NAMESPACE::DOMNode* node);
389 
391  int getGEqFlag(XERCES_CPP_NAMESPACE::DOMNode* node,
392  const std::string& nodeName);
393 
395  bool getMuonMipIsoBits(XERCES_CPP_NAMESPACE::DOMNode* node,
396  unsigned int num, std::vector<bool>& mipDst,
397  std::vector<bool>& isoEnDst, std::vector<bool>& isoReqDst);
398 
399  template <typename T> std::string l1t2string( T );
400  std::string l1tDateTime2string( l1t::DateTime );
401  int l1t2int( l1t::RelativeBx );
402  int l1tstr2int( const std::string data );
403 
404 
406 /* bool parseScale(tmeventsetup::esScale scale); */
407 // bool parseScales( tmeventsetup::esScale scale);
408  bool parseScales(std::map<std::string, tmeventsetup::esScale> scaleMap);
409 
411 /* bool parseMuon(XERCES_CPP_NAMESPACE::DOMNode* node, */
412 /* const std::string& name, unsigned int chipNr = 0, */
413 /* const bool corrFlag = false); */
414  bool parseMuon( l1t::MuonCondition condMu,
415  unsigned int chipNr = 0, const bool corrFlag = false);
416 
418 /* bool parseMuon(XERCES_CPP_NAMESPACE::DOMNode* node, */
419 /* const std::string& name, unsigned int chipNr = 0, */
420 /* const bool corrFlag = false); */
421  bool parseMuonV2( tmeventsetup::esCondition condMu,
422  unsigned int chipNr = 0, const bool corrFlag = false);
423 
424  bool parseMuonCorr(const tmeventsetup::esObject* condMu,
425  unsigned int chipNr = 0);
426 
427 
429 /* bool parseCalo(XERCES_CPP_NAMESPACE::DOMNode* node, */
430 /* const std::string& name, unsigned int chipNr = 0, */
431 /* const bool corrFlag = false); */
432  bool parseCalo( l1t::CalorimeterCondition condCalo,
433  unsigned int chipNr = 0, const bool corrFlag = false);
434 
436 /* bool parseCalo(XERCES_CPP_NAMESPACE::DOMNode* node, */
437 /* const std::string& name, unsigned int chipNr = 0, */
438 /* const bool corrFlag = false); */
439  bool parseCaloV2( tmeventsetup::esCondition condCalo,
440  unsigned int chipNr = 0, const bool corrFlag = false);
441 
442  bool parseCaloCorr(const tmeventsetup::esObject* corrCalo,
443  unsigned int chipNr = 0);
444 
446  /* bool parseEnergySum(XERCES_CPP_NAMESPACE::DOMNode* node, */
447  /* const std::string& name, unsigned int chipNr = 0, */
448  /* const bool corrFlag = false); */
449 
450  bool parseEnergySum( l1t::EnergySumsCondition condEnergySums,
451  unsigned int chipNr = 0, const bool corrFlag = false);
452 
454  /* bool parseEnergySum(XERCES_CPP_NAMESPACE::DOMNode* node, */
455  /* const std::string& name, unsigned int chipNr = 0, */
456  /* const bool corrFlag = false); */
457 
458  bool parseEnergySumV2( tmeventsetup::esCondition condEnergySums,
459  unsigned int chipNr = 0, const bool corrFlag = false);
460 
461 
462  bool parseEnergySumCorr(const tmeventsetup::esObject* corrESum,
463  unsigned int chipNr = 0);
464 
465 
467 /*
468  bool parseExternal(XERCES_CPP_NAMESPACE::DOMNode* node,
469  const std::string& name, unsigned int chipNr = 0);
470 */
471  bool parseExternalV2(tmeventsetup::esCondition condExt,
472  unsigned int chipNr = 0);
473 
474 
476  bool parseCorrelation(XERCES_CPP_NAMESPACE::DOMNode* node,
477  const std::string& name, unsigned int chipNr = 0);
478 
480  bool parseCorrelationV2(tmeventsetup::esCondition corrCond, unsigned int chipNr = 0);
481 
483  //bool parseId(XERCES_CPP_NAMESPACE::XercesDOMParser* parser);
484  bool parseId( std::auto_ptr<l1t::L1TriggerMenu> tm );
485  bool parseId( l1t::Meta meta );
486 
488  bool workCondition(XERCES_CPP_NAMESPACE::DOMNode* node,
489  const std::string& name, unsigned int chipNr);
490 
492  //bool parseConditions(XERCES_CPP_NAMESPACE::XercesDOMParser* parser);
493  //bool parseConditions( std::auto_ptr<l1t::L1TriggerMenu> tm );
494  bool parseConditions( l1t::ConditionList conditions );
495 
497 /* bool workAlgorithm(XERCES_CPP_NAMESPACE::DOMNode* node, */
498 /* const std::string& name, unsigned int chipNr); */
499  bool workAlgorithm( l1t::Algorithm algorithm,
500  unsigned int chipNr);
501 
503  //bool parseAlgorithms(XERCES_CPP_NAMESPACE::XercesDOMParser* parser);
504  bool parseAlgorithms( l1t::AlgorithmList algorithms );
505 
507  //bool parseAlgorithms(XERCES_CPP_NAMESPACE::XercesDOMParser* parser);
508  bool parseAlgorithmV2( tmeventsetup::esAlgorithm algorithm,
509  unsigned int chipNr = 0 );
510 
511 
513 // bool workTechTrigger(XERCES_CPP_NAMESPACE::DOMNode* node,
514 // const std::string& name);
515 
517 // bool parseTechTriggers(XERCES_CPP_NAMESPACE::XercesDOMParser* parser);
518 
520  //bool workXML(XERCES_CPP_NAMESPACE::XercesDOMParser* parser);
521  bool workXML( std::auto_ptr<l1t::L1TriggerMenu> tm );
522 
523 private:
524 
526  XERCES_CPP_NAMESPACE::ErrorHandler* m_xmlErrHandler;
527 
529 
532 
534  unsigned int m_pinsOnConditionChip;
535 
538  std::vector<int> m_orderConditionChip;
539 
541  unsigned int m_numberPhysTriggers;
542 
544  //unsigned int m_numberTechTriggers;
545 
546 
547 private:
548 
550 
554 
558 
560 
561 
562 private:
563 
565  std::vector<ConditionMap> m_conditionMap;
566 
567 private:
568 
573 
576 
579  std::vector<std::vector<MuonTemplate> > m_vecMuonTemplate;
580  std::vector<std::vector<CaloTemplate> > m_vecCaloTemplate;
581  std::vector<std::vector<EnergySumTemplate> > m_vecEnergySumTemplate;
582  std::vector<std::vector<ExternalTemplate> > m_vecExternalTemplate;
583 
584  std::vector<std::vector<CorrelationTemplate> > m_vecCorrelationTemplate;
585  std::vector<std::vector<MuonTemplate> > m_corMuonTemplate;
586  std::vector<std::vector<CaloTemplate> > m_corCaloTemplate;
587  std::vector<std::vector<EnergySumTemplate> > m_corEnergySumTemplate;
588 
591 
594 
596 // AlgorithmMap m_technicalTriggerMap;
597 
598  // class containing the scales from the L1 Menu XML
600 
601 };
602 
603 }
604 #endif /*L1TGlobal_TriggerMenuXmlParser_h*/
type
Definition: HCALResponse.h:21
const std::string & gtScaleDbKey() const
menu associated scale key
bool workXML(std::auto_ptr< l1t::L1TriggerMenu > tm)
parse an algorithm and insert it into algorithm map.
unsigned int m_numberConditionChips
hardware limits
bool insertConditionIntoMap(GtCondition &cond, const int chipNr)
const std::vector< std::vector< CorrelationTemplate > > & vecCorrelationTemplate() const
bool workAlgorithm(l1t::Algorithm algorithm, unsigned int chipNr)
parse an algorithm and insert it into algorithm map.
GtConditionType
Definition: GtDefinitions.h:99
void setGtAlgorithmAliasMap(const AlgorithmMap &)
bool parseCaloV2(tmeventsetup::esCondition condCalo, unsigned int chipNr=0, const bool corrFlag=false)
parse a calorimeter condition
void setVecEnergySumTemplate(const std::vector< std::vector< EnergySumTemplate > > &)
bool parseEnergySum(l1t::EnergySumsCondition condEnergySums, unsigned int chipNr=0, const bool corrFlag=false)
parse an &quot;energy sum&quot; condition
std::vector< std::vector< CaloTemplate > > m_vecCaloTemplate
std::vector< std::vector< EnergySumTemplate > > m_vecEnergySumTemplate
AlgorithmMap m_algorithmAliasMap
map containing the physics algorithms (by alias)
std::string l1tDateTime2string(l1t::DateTime)
bool parseConditions(l1t::ConditionList conditions)
parse all conditions
bool parseVmeXML(XERCES_CPP_NAMESPACE::XercesDOMParser *parser)
parse the vme xml file
const std::string & gtTriggerMenuAuthor() const
const unsigned int gtPinsOnConditionChip() const
get / set the number of pins on the GTL condition chips
const AlgorithmMap & gtAlgorithmAliasMap() const
get / set the algorithm map (by alias)
std::vector< std::vector< CorrelationTemplate > > m_vecCorrelationTemplate
const unsigned int gtNumberPhysTriggers() const
get / set the number of physics trigger algorithms
void setGtAlgorithmMap(const AlgorithmMap &)
std::string m_scaleDbKey
menu associated scale key
bool parseCalo(l1t::CalorimeterCondition condCalo, unsigned int chipNr=0, const bool corrFlag=false)
parse a calorimeter condition
void setGtOrderConditionChip(const std::vector< int > &)
std::vector< int > m_orderConditionChip
bool parseMuonV2(tmeventsetup::esCondition condMu, unsigned int chipNr=0, const bool corrFlag=false)
parse a muon condition
int l1tstr2int(const std::string data)
std::vector< std::vector< CaloTemplate > > m_corCaloTemplate
const std::vector< std::vector< EnergySumTemplate > > & corEnergySumTemplate() const
void setGtTriggerMenuImplementation(const std::string &)
bool insertAlgorithmIntoMap(const L1GtAlgorithm &alg)
insert an algorithm into algorithm map
bool parseId(std::auto_ptr< l1t::L1TriggerMenu > tm)
parse all parse all identification attributes (trigger menu names, scale DB key, etc) ...
bool parseExternalV2(tmeventsetup::esCondition condExt, unsigned int chipNr=0)
parse an External condition
const std::string & gtTriggerMenuDate() const
void setGtNumberPhysTriggers(const unsigned int &)
bool getMuonMipIsoBits(XERCES_CPP_NAMESPACE::DOMNode *node, unsigned int num, std::vector< bool > &mipDst, std::vector< bool > &isoEnDst, std::vector< bool > &isoReqDst)
get MIP and Isolation bits from a muon
bool hexString2UInt128(const std::string &hexString, boost::uint64_t &dstL, boost::uint64_t &dstH)
convert a hexadecimal string with up to 128 to 2 boost::uint64_t
void setGtTriggerMenuInterfaceDescription(const std::string &)
bool getXMLHexTextValue(const std::string &childName, boost::uint64_t &dst)
void parseXmlFile(const std::string &defXmlFile, const std::string &vmeXmlFile)
parse def.xml and vme.xml files
void setGtTriggerMenuName(const std::string &)
void setGtScaleDbKey(const std::string &)
const std::string & gtAlgorithmImplementation() const
const std::string & gtTriggerMenuDescription() const
int getBitFromNode(XERCES_CPP_NAMESPACE::DOMNode *node)
get bit from a bit node
bool parseEnergySumCorr(const tmeventsetup::esObject *corrESum, unsigned int chipNr=0)
XERCES_CPP_NAMESPACE::ErrorHandler * m_xmlErrHandler
error handler for xml-parser
void setGtTriggerMenuInterfaceAuthor(const std::string &)
AlgorithmMap m_algorithmMap
map containing the physics algorithms (by name)
const std::vector< std::vector< CaloTemplate > > & vecCaloTemplate() const
bool parseMuon(l1t::MuonCondition condMu, unsigned int chipNr=0, const bool corrFlag=false)
parse a muon condition
const std::string & gtTriggerMenuInterfaceDescription() const
bool parseMuonCorr(const tmeventsetup::esObject *condMu, unsigned int chipNr=0)
std::vector< ConditionMap > m_conditionMap
map containing the conditions (per condition chip) - transient
std::string getXMLAttribute(const XERCES_CPP_NAMESPACE::DOMNode *node, const std::string &name)
get a named attribute for an xml node as string
bool getXMLHexTextValue128Old(XERCES_CPP_NAMESPACE::DOMNode *node, boost::uint64_t &dstL, boost::uint64_t &dstH)
get a hexadecimal value of a xml node containing text with up to 128 bit
void setVecMuonTemplate(const std::vector< std::vector< MuonTemplate > > &)
unsigned int m_numberPhysTriggers
number of physics trigger algorithms
bool workCondition(XERCES_CPP_NAMESPACE::DOMNode *node, const std::string &name, unsigned int chipNr)
choose the parser for a particular condition
bool parseScales(std::map< std::string, tmeventsetup::esScale > scaleMap)
parse scales
std::map< std::string, L1GtAlgorithm > AlgorithmMap
map containing the algorithms
bool getXMLHexTextValue128(const std::string &childName, boost::uint64_t &dstL, boost::uint64_t &dstH)
const unsigned int gtNumberConditionChips() const
get / set the number of condition chips in GTL
const std::string & gtTriggerMenuInterface() const
get / set the trigger menu names
std::vector< std::vector< MuonTemplate > > m_vecMuonTemplate
const std::vector< std::vector< EnergySumTemplate > > & vecEnergySumTemplate() const
const std::string & gtTriggerMenuName() const
const std::vector< ConditionMap > & gtConditionMap() const
get / set / build the condition maps
bool parseCaloCorr(const tmeventsetup::esObject *corrCalo, unsigned int chipNr=0)
bool getConditionChildValuesOld(XERCES_CPP_NAMESPACE::DOMNode *node, const std::string &childName, unsigned int num, std::vector< boost::uint64_t > &dst)
get values from a child of a condition
l1t::GtConditionType getTypeFromType(const std::string &type)
insert a technical trigger into technical trigger map
const std::vector< std::vector< MuonTemplate > > & vecMuonTemplate() const
get / set the vectors containing the conditions
std::string m_triggerMenuInterface
menu names
void setGtConditionMap(const std::vector< ConditionMap > &)
unsigned long long uint64_t
Definition: Time.h:15
bool countConditionChildMaxBits(const std::string &childName, unsigned int &dst)
get the number of bits in the max attribute of a condition child
std::vector< std::vector< ExternalTemplate > > m_vecExternalTemplate
const L1TGlobalScales & gtScales() const
menu associated scales
void setGtTriggerMenuDescription(const std::string &)
bool xmlFile(const std::string fParam)
std::vector< std::vector< MuonTemplate > > m_corMuonTemplate
void setVecExternalTemplate(const std::vector< std::vector< ExternalTemplate > > &)
const std::string & gtTriggerMenuInterfaceAuthor() const
void setGtPinsOnConditionChip(const unsigned int &)
L1TGlobalScales m_gtScales
map containing the technical triggers
std::string m_triggerMenuInterfaceDate
number of technical triggers
XERCES_CPP_NAMESPACE::DOMNode * findXMLChild(XERCES_CPP_NAMESPACE::DOMNode *startChild, const std::string &tagName, bool beginOnly=false, std::string *rest=0)
find a named child of a xml node
const std::string & gtTriggerMenuImplementation() const
char data[epos_bytes_allocation]
Definition: EPOS_Wrapper.h:82
void setGtTriggerMenuInterfaceDate(const std::string &)
void setVecCaloTemplate(const std::vector< std::vector< CaloTemplate > > &)
std::vector< int > gtOrderConditionChip() const
virtual ~TriggerMenuXmlParser()
destructor
void setCorEnergySumTemplate(const std::vector< std::vector< EnergySumTemplate > > &)
void setGtNumberConditionChips(const unsigned int &)
void setGtAlgorithmImplementation(const std::string &)
void cleanupXML(XERCES_CPP_NAMESPACE::XercesDOMParser *parser)
shutdown the xml utils and deallocate parser and error handler
XERCES_CPP_NAMESPACE::XercesDOMParser * initXML(const std::string &xmlFile)
init xml system
std::vector< std::vector< EnergySumTemplate > > m_corEnergySumTemplate
bool parseAlgorithmV2(tmeventsetup::esAlgorithm algorithm, unsigned int chipNr=0)
parse all algorithms
unsigned int m_pinsOnConditionChip
number of pins on the GTL condition chips
bool parseCorrelation(XERCES_CPP_NAMESPACE::DOMNode *node, const std::string &name, unsigned int chipNr=0)
parse a correlation condition
std::string getXMLTextValue(XERCES_CPP_NAMESPACE::DOMNode *node)
get the text value of a xml node as string
bool parseEnergySumV2(tmeventsetup::esCondition condEnergySums, unsigned int chipNr=0, const bool corrFlag=false)
parse an &quot;energy sum&quot; condition
bool parseAlgorithms(l1t::AlgorithmList algorithms)
parse all algorithms
void setCorCaloTemplate(const std::vector< std::vector< CaloTemplate > > &)
void setCorMuonTemplate(const std::vector< std::vector< MuonTemplate > > &)
void setVecCorrelationTemplate(const std::vector< std::vector< CorrelationTemplate > > &)
long double T
void setGtTriggerMenuInterface(const std::string &)
const std::vector< std::vector< CaloTemplate > > & corCaloTemplate() const
const std::vector< std::vector< MuonTemplate > > & corMuonTemplate() const
void setGtTriggerMenuDate(const std::string &)
void setGtTriggerMenuAuthor(const std::string &)
const AlgorithmMap & gtAlgorithmMap() const
get / set the algorithm map (by name)
bool getXMLHexTextValueOld(XERCES_CPP_NAMESPACE::DOMNode *node, boost::uint64_t &dst)
get a hexadecimal value of a xml node containing text
const std::vector< std::vector< ExternalTemplate > > & vecExternalTemplate() const
void parseXmlFileV2(const std::string &defXmlFile)
int getGEqFlag(XERCES_CPP_NAMESPACE::DOMNode *node, const std::string &nodeName)
getGEqFlag - get the &quot;greater or equal flag&quot; from a condition
int getNumFromType(const std::string &type)
get number of particles from condition type
const std::string & gtTriggerMenuInterfaceDate() const
get / set the XML parser creation date, author, description for menu interface, menu ...
bool parseCorrelationV2(tmeventsetup::esCondition corrCond, unsigned int chipNr=0)
parse a correlation condition