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 
17 
19 
22 
28 
29 #include<string>
30 #include<map>
31 //#include<fstream>
32 
33 //class RPCDetId;
34 /* class TFile; */
35 /* class TH1F; */
36 /* class TFile; */
37 /* class TCanvas; */
38 /* class TH2F; */
39 /* class TString; */
40 
41 
43 public:
45  DTStationIndex(int region, int wheel, int sector, int station) :
46  _region(region),
47  _wheel(wheel),
48  _sector(sector),
49  _station(station){}
51  int region() const {return _region;}
52  int wheel() const {return _wheel;}
53  int sector() const {return _sector;}
54  int station() const {return _station;}
55  bool operator<(const DTStationIndex& dtind) const{
56  if(dtind.region()!=this->region())
57  return dtind.region()<this->region();
58  else if(dtind.wheel()!=this->wheel())
59  return dtind.wheel()<this->wheel();
60  else if(dtind.sector()!=this->sector())
61  return dtind.sector()<this->sector();
62  else if(dtind.station()!=this->station())
63  return dtind.station()<this->station();
64  return false;
65  }
66 private:
67  int _region;
68  int _wheel;
69  int _sector;
70  int _station;
71 };
72 
73 
75 public:
77  CSCStationIndex(int region, int station, int ring, int chamber):
78  _region(region),
79  _station(station),
80  _ring(ring),
81  _chamber(chamber){}
83  int region() const {return _region;}
84  int station() const {return _station;}
85  int ring() const {return _ring;}
86  int chamber() const {return _chamber;}
87  bool operator<(const CSCStationIndex& cscind) const{
88  if(cscind.region()!=this->region())
89  return cscind.region()<this->region();
90  else if(cscind.station()!=this->station())
91  return cscind.station()<this->station();
92  else if(cscind.ring()!=this->ring())
93  return cscind.ring()<this->ring();
94  else if(cscind.chamber()!=this->chamber())
95  return cscind.chamber()<this->chamber();
96  return false;
97  }
98 
99 private:
100  int _region;
101  int _station;
102  int _ring;
103  int _chamber;
104 };
105 
106 
108  public:
109  explicit RPCEfficiency(const edm::ParameterSet&);
110  ~RPCEfficiency();
111  virtual void beginJob() ;
112  virtual void beginRun(const edm::Run&, const edm::EventSetup&);
113  virtual void analyze(const edm::Event&, const edm::EventSetup&);
114  virtual void endJob() ;
115  void bookDetUnitSeg(RPCDetId & detId,int nstrips, std::string folder, std::map<std::string, MonitorElement*> & );
116  virtual void endRun(const edm::Run& r, const edm::EventSetup& iSetup);
117  std::map<DTStationIndex,std::set<RPCDetId> > rollstoreDT;
118  std::map<CSCStationIndex,std::set<RPCDetId> > rollstoreCSC;
119 
120  /* edm::ESHandle<RPCGeometry> rpcGeo; */
121  /* edm::ESHandle<DTGeometry> dtGeo; */
122  /* edm::ESHandle<CSCGeometry> cscGeo; */
123 
125 
126  //Distance Strip
127 
128 
129 
130  //Residuals
134 
135  //Endcap
142 
149 
156 
157  private:
158  std::vector<std::map<RPCDetId, int> > counter;
159  std::vector<int> totalcounter;
160  // std::ofstream ofrej;
161  bool incldt;
162  bool incldtMB4;
163  bool inclcsc;
164  bool debug;
165  // bool paper;
166  bool inves;
167  double rangestrips;
169  double MinCosAng;
170  double MaxD;
171  double MaxDrb4;
172  int dupli;
173 
174  // std::string muonRPCDigis;
178 
179  std::string folderPath;
180  // std::string rejected;
181  std::string rollseff;
182 
183  std::map<int, std::map<std::string, MonitorElement*> > meCollection;
184 
186  std::string EffRootFileName;
188 };
int chamber() const
Definition: RPCEfficiency.h:86
int wheel() const
Definition: RPCEfficiency.h:52
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:77
edm::InputTag dt4DSegments
int station() const
Definition: RPCEfficiency.h:84
DQMStore * dbe
std::string EffRootFileName
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:45
std::string folderPath
int ring() const
Definition: RPCEfficiency.h:85
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
std::map< DTStationIndex, std::set< RPCDetId > > rollstoreDT
MonitorElement * hGlobalResClu2R2A
edm::InputTag cscSegments
MonitorElement * hGlobalResClu2R3A
std::vector< std::map< RPCDetId, int > > counter
edm::InputTag RPCRecHitLabel_
MonitorElement * hGlobalResClu1La[6]
int station() const
Definition: RPCEfficiency.h:54
int region() const
Definition: RPCEfficiency.h:51
bool operator<(const CSCStationIndex &cscind) const
Definition: RPCEfficiency.h:87
double rangestrips
bool operator<(const DTStationIndex &dtind) const
Definition: RPCEfficiency.h:55
int region() const
Definition: RPCEfficiency.h:83
virtual void analyze(const edm::Event &, const edm::EventSetup &)
MonitorElement * hGlobalResClu1R3C
MonitorElement * hGlobalResClu2R2B
int sector() const
Definition: RPCEfficiency.h:53
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:33