CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
RPCEfficiency.h
Go to the documentation of this file.
1 
15 
19 
20 
21 
22 
25 
27 
31 
32 #include<string>
33 #include<map>
34 
35 
37 public:
39  DTStationIndex(int region, int wheel, int sector, int station) :
40  _region(region),
41  _wheel(wheel),
42  _sector(sector),
43  _station(station){}
45  int region() const {return _region;}
46  int wheel() const {return _wheel;}
47  int sector() const {return _sector;}
48  int station() const {return _station;}
49  bool operator<(const DTStationIndex& dtind) const{
50  if(dtind.region()!=this->region())
51  return dtind.region()<this->region();
52  else if(dtind.wheel()!=this->wheel())
53  return dtind.wheel()<this->wheel();
54  else if(dtind.sector()!=this->sector())
55  return dtind.sector()<this->sector();
56  else if(dtind.station()!=this->station())
57  return dtind.station()<this->station();
58  return false;
59  }
60 private:
61  int _region;
62  int _wheel;
63  int _sector;
64  int _station;
65 };
66 
67 
69 public:
71  CSCStationIndex(int region, int station, int ring, int chamber):
72  _region(region),
73  _station(station),
74  _ring(ring),
75  _chamber(chamber){}
77  int region() const {return _region;}
78  int station() const {return _station;}
79  int ring() const {return _ring;}
80  int chamber() const {return _chamber;}
81  bool operator<(const CSCStationIndex& cscind) const{
82  if(cscind.region()!=this->region())
83  return cscind.region()<this->region();
84  else if(cscind.station()!=this->station())
85  return cscind.station()<this->station();
86  else if(cscind.ring()!=this->ring())
87  return cscind.ring()<this->ring();
88  else if(cscind.chamber()!=this->chamber())
89  return cscind.chamber()<this->chamber();
90  return false;
91  }
92 
93 private:
94  int _region;
95  int _station;
96  int _ring;
97  int _chamber;
98 };
99 
100 
102  public:
103  explicit RPCEfficiency(const edm::ParameterSet&);
104  ~RPCEfficiency();
105  virtual void beginJob() ;
106  virtual void beginRun(const edm::Run&, const edm::EventSetup&);
107  virtual void analyze(const edm::Event&, const edm::EventSetup&);
108  virtual void endJob() ;
109  void bookDetUnitSeg(RPCDetId & detId,int nstrips, std::string folder, std::map<std::string, MonitorElement*> & );
110  virtual void endRun(const edm::Run& r, const edm::EventSetup& iSetup);
111  std::map<DTStationIndex,std::set<RPCDetId> > rollstoreDT;
112  std::map<CSCStationIndex,std::set<RPCDetId> > rollstoreCSC;
113 
114  /* edm::ESHandle<RPCGeometry> rpcGeo; */
115  /* edm::ESHandle<DTGeometry> dtGeo; */
116  /* edm::ESHandle<CSCGeometry> cscGeo; */
117 
119 
120  //Distance Strip
121 
122 
123 
124  //Residuals
128 
129  //Endcap
136 
143 
150 
151  private:
152  std::vector<std::map<RPCDetId, int> > counter;
153  std::vector<int> totalcounter;
154  // std::ofstream ofrej;
155  bool incldt;
156  bool incldtMB4;
157  bool inclcsc;
158  bool debug;
159  // bool paper;
160  bool inves;
161  double rangestrips;
163  double MinCosAng;
164  double MaxD;
165  double MaxDrb4;
166  int dupli;
167 
171 
174 
175  std::map<int, std::map<std::string, MonitorElement*> > meCollection;
176 
180 };
int chamber() const
Definition: RPCEfficiency.h:80
int wheel() const
Definition: RPCEfficiency.h:46
virtual void endJob()
MonitorElement * hGlobalResClu1R2A
RPCEfficiency(const edm::ParameterSet &)
MonitorElement * hGlobalResClu1R3A
MonitorElement * hGlobalResClu3R2C
MonitorElement * hGlobalResClu2La[6]
MonitorElement * hGlobalResClu3R3C
virtual void beginJob()
std::map< int, std::map< std::string, MonitorElement * > > meCollection
CSCStationIndex(int region, int station, int ring, int chamber)
Definition: RPCEfficiency.h:71
int station() const
Definition: RPCEfficiency.h:78
DQMStore * dbe
std::string EffRootFileName
edm::EDGetTokenT< RPCRecHitCollection > RPCRecHitLabel_
MonitorElement * hGlobalResClu3La[6]
void bookDetUnitSeg(RPCDetId &detId, int nstrips, std::string folder, std::map< std::string, MonitorElement * > &)
virtual void endRun(const edm::Run &r, const edm::EventSetup &iSetup)
DTStationIndex(int region, int wheel, int sector, int station)
Definition: RPCEfficiency.h:39
std::string folderPath
int ring() const
Definition: RPCEfficiency.h:79
MonitorElement * hGlobalResClu3R2A
double rangestripsRB4
std::vector< int > totalcounter
MonitorElement * hGlobalResClu1R3B
MonitorElement * hGlobalResClu1R2C
MonitorElement * hGlobalResClu2R3C
MonitorElement * hGlobalResClu3R3A
std::map< CSCStationIndex, std::set< RPCDetId > > rollstoreCSC
MonitorElement * statistics
edm::EDGetTokenT< CSCSegmentCollection > cscSegments
std::map< DTStationIndex, std::set< RPCDetId > > rollstoreDT
edm::EDGetTokenT< DTRecSegment4DCollection > dt4DSegments
MonitorElement * hGlobalResClu2R2A
MonitorElement * hGlobalResClu2R3A
std::vector< std::map< RPCDetId, int > > counter
MonitorElement * hGlobalResClu1La[6]
int station() const
Definition: RPCEfficiency.h:48
int region() const
Definition: RPCEfficiency.h:45
bool operator<(const CSCStationIndex &cscind) const
Definition: RPCEfficiency.h:81
double rangestrips
bool operator<(const DTStationIndex &dtind) const
Definition: RPCEfficiency.h:49
int region() const
Definition: RPCEfficiency.h:77
virtual void analyze(const edm::Event &, const edm::EventSetup &)
MonitorElement * hGlobalResClu1R3C
MonitorElement * hGlobalResClu2R2B
int sector() const
Definition: RPCEfficiency.h:47
MonitorElement * hGlobalResClu3R3B
std::string rollseff
virtual void beginRun(const edm::Run &, const edm::EventSetup &)
MonitorElement * hGlobalResClu3R2B
MonitorElement * hGlobalResClu2R3B
MonitorElement * hGlobalResClu1R2B
MonitorElement * hGlobalResClu2R2C
Definition: Run.h:41