CMS 3D CMS Logo

MuonsGrabber.h
Go to the documentation of this file.
1 #ifndef L1Trigger_RPCTrigger_MuonsGrabber_h
2 #define L1Trigger_RPCTrigger_MuonsGrabber_h
3 // -*- C++ -*-
4 //
5 // Package: RPCTrigger
6 // Class : MuonsGrabber
7 //
16 //
17 // Original Author:
18 // Created: Thu Sep 17 14:20:56 CEST 2009
19 // $Id$
20 //
21 
22 // system include files
23 
24 // user include files
25 
26 // forward declarations
27 
30 
31 #include <map>
32 #include <vector>
33 
34 //#include "Utilities/Xerces/interface/Xerces.h"
35 //#include <xercesc/util/XMLString.hpp>
36 #include <xercesc/dom/DOM.hpp>
37 //#include <xercesc/framework/LocalFileFormatTarget.hpp>
38 
40  RPCMuonExtraStruct(signed char l, signed char r, signed char h, signed char i, RPCTBMuon& mu)
41  : _level(l), _region(r), _hsHalf(h), _index(i), _mu(mu){};
42  signed char _level;
43  signed char _region; // brl/endcap
44  signed char _hsHalf; // Determines which halfsorter
45  signed char _index;
47  static bool lvlCompare(const RPCMuonExtraStruct& a, const RPCMuonExtraStruct& b) { return a._level > b._level; };
48 };
49 
50 class MuonsGrabber {
51  MuonsGrabber();
52  virtual ~MuonsGrabber();
53 
54 public:
55  static MuonsGrabber& Instance();
56 
58 
59  void startNewEvent(int event, int bx);
60  void writeDataForRelativeBX(int bx);
61  void addMuon(RPCTBMuon& mu, int lvl, int region, int hs, int index);
62 
63 private:
64  MuonsGrabber(const MuonsGrabber&) = delete; // stop default
65 
66  const MuonsGrabber& operator=(const MuonsGrabber&) = delete; // stop default
68 
69  // ---------- member data --------------------------------
70  //std::map<int, std::vector< RPCTBMuon > > m_muons;
71  std::vector<RPCMuonExtraStruct> m_muons;
73 
76  XERCES_CPP_NAMESPACE::DOMImplementation* m_dom;
77  XERCES_CPP_NAMESPACE::DOMDocument* m_doc;
78  XERCES_CPP_NAMESPACE::DOMElement* m_rootElem;
79  XERCES_CPP_NAMESPACE::DOMElement* m_currEvent;
80 };
81 
82 #endif
MuonsGrabber::m_trigConfig
RPCBasicTrigConfig * m_trigConfig
Definition: MuonsGrabber.h:72
MuonsGrabber
Definition: MuonsGrabber.h:50
RPCTBMuon
Definition: RPCTBMuon.h:17
mps_fire.i
i
Definition: mps_fire.py:428
RPCMuonExtraStruct
Definition: MuonsGrabber.h:39
amptDefaultParameters_cff.mu
mu
Definition: amptDefaultParameters_cff.py:16
MuonsGrabber::operator=
const MuonsGrabber & operator=(const MuonsGrabber &)=delete
l1GtPatternGenerator_cfi.bx
bx
Definition: l1GtPatternGenerator_cfi.py:18
MuonsGrabber::m_doc
XERCES_CPP_NAMESPACE::DOMDocument * m_doc
Definition: MuonsGrabber.h:77
MuonsGrabber::Instance
static MuonsGrabber & Instance()
Definition: MuonsGrabber.cc:48
MuonsGrabber::m_dom
XERCES_CPP_NAMESPACE::DOMImplementation * m_dom
Definition: MuonsGrabber.h:76
MuonsGrabber::startNewEvent
void startNewEvent(int event, int bx)
Definition: MuonsGrabber.cc:107
RPCMuonExtraStruct::_mu
RPCTBMuon _mu
Definition: MuonsGrabber.h:46
MuonsGrabber::m_currentEvent
int m_currentEvent
Definition: MuonsGrabber.h:74
RPCMuonExtraStruct::_level
signed char _level
Definition: MuonsGrabber.h:41
RPCBasicTrigConfig.h
RPCMuonExtraStruct::lvlCompare
static bool lvlCompare(const RPCMuonExtraStruct &a, const RPCMuonExtraStruct &b)
Definition: MuonsGrabber.h:47
MuonsGrabber::m_currentBX
int m_currentBX
Definition: MuonsGrabber.h:75
MuonsGrabber::m_currEvent
XERCES_CPP_NAMESPACE::DOMElement * m_currEvent
Definition: MuonsGrabber.h:79
MuonsGrabber::writeDataForRelativeBX
void writeDataForRelativeBX(int bx)
Definition: MuonsGrabber.cc:123
h
b
double b
Definition: hdecay.h:118
AlCaHLTBitMon_QueryRunRegistry.string
string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
RPCBasicTrigConfig
Definition: RPCBasicTrigConfig.h:14
a
double a
Definition: hdecay.h:119
MuonsGrabber::m_muons
std::vector< RPCMuonExtraStruct > m_muons
Definition: MuonsGrabber.h:71
HLT_FULL_cff.region
region
Definition: HLT_FULL_cff.py:88271
RPCMuonExtraStruct::RPCMuonExtraStruct
RPCMuonExtraStruct(signed char l, signed char r, signed char h, signed char i, RPCTBMuon &mu)
Definition: MuonsGrabber.h:40
MuonsGrabber::IntToString
std::string IntToString(int i)
Definition: MuonsGrabber.cc:277
cmsLHEtoEOSManager.l
l
Definition: cmsLHEtoEOSManager.py:204
alignCSCRings.r
r
Definition: alignCSCRings.py:93
RPCMuonExtraStruct::_index
signed char _index
Definition: MuonsGrabber.h:45
MuonsGrabber::addMuon
void addMuon(RPCTBMuon &mu, int lvl, int region, int hs, int index)
Definition: MuonsGrabber.cc:118
RPCMuonExtraStruct::_region
signed char _region
Definition: MuonsGrabber.h:43
AlignmentPI::index
index
Definition: AlignmentPayloadInspectorHelper.h:46
MuonsGrabber::setRPCBasicTrigConfig
void setRPCBasicTrigConfig(RPCBasicTrigConfig *c)
Definition: MuonsGrabber.h:57
MuonsGrabber::MuonsGrabber
MuonsGrabber()
Definition: MuonsGrabber.cc:56
RPCMuonExtraStruct::_hsHalf
signed char _hsHalf
Definition: MuonsGrabber.h:44
c
auto & c
Definition: CAHitNtupletGeneratorKernelsImpl.h:46
RPCTBMuon.h
event
Definition: event.py:1
MuonsGrabber::m_rootElem
XERCES_CPP_NAMESPACE::DOMElement * m_rootElem
Definition: MuonsGrabber.h:78
MuonsGrabber::~MuonsGrabber
virtual ~MuonsGrabber()
Definition: MuonsGrabber.cc:82