CMS 3D CMS Logo

MESet.h
Go to the documentation of this file.
1 #ifndef MESet_H
2 #define MESet_H
3 
5 
7 
10 
15 
17 
18 #include <string>
19 #include <map>
20 #include <memory>
21 #include <vector>
22 
23 namespace ecaldqm {
24  /*
25  class MESet
26  Base class for MonitorElement wrappers
27  Interface between ME bins and DetId
28 */
29 
30  // struct made to simplify passing multiple setup
31  // variables (see DQWorker.h for implementation)
32  // to MESet functions
38  };
39 
40  class StatusManager;
41 
42  class MESet {
43  public:
46  typedef std::map<std::string, std::string> PathReplacements;
47 
48  MESet();
50  MESet(MESet const &);
51  virtual ~MESet();
52 
53  virtual MESet &operator=(MESet const &);
54 
55  virtual MESet *clone(std::string const & = "") const;
56 
57  virtual void book(DQMStore::IBooker &, EcalElectronicsMapping const *) {}
58  virtual bool retrieve(EcalElectronicsMapping const *, DQMStore::IGetter &, std::string * = nullptr) const {
59  return false;
60  }
61  virtual void clear() const;
62 
63  // Overloaded functions deal with different ids or
64  // inputs to fill, setBinContent, etc and each determines
65  // the correct bin to fill based on what is passed.
66  //
67  // Note: not every fill, setBinContent, etc necessarily uses
68  // EcalDQMSetupObjects, but they are passed one anyway to
69  // avoid accidentally casting a DetId or a EcalElectronicsId
70  // to an int or a double and have it exercute the wrong function.
71  // This would be tricky to debug if this error is made, so it
72  // makes more sense for these functions to look consistent in
73  // terms of passing EcalDQMSetupObjects.
74  virtual void fill(EcalDQMSetupObjects const, DetId const &, double = 1., double = 1., double = 1.) {}
75  virtual void fill(EcalDQMSetupObjects const, EcalElectronicsId const &, double = 1., double = 1., double = 1.) {}
76  virtual void fill(EcalDQMSetupObjects const, int, double = 1., double = 1., double = 1.) {}
77  virtual void fill(EcalDQMSetupObjects const, double, double = 1., double = 1.) {}
78 
79  virtual void setBinContent(EcalDQMSetupObjects const, DetId const &, double) {}
80  virtual void setBinContent(EcalDQMSetupObjects const, EcalElectronicsId const &, double) {}
81  virtual void setBinContent(EcalDQMSetupObjects const, int, double) {}
82  virtual void setBinContent(EcalDQMSetupObjects const, DetId const &, int, double) {}
83  virtual void setBinContent(EcalDQMSetupObjects const, EcalElectronicsId const &, int, double) {}
84  virtual void setBinContent(EcalDQMSetupObjects const, int, int, double) {}
85 
86  virtual void setBinError(EcalDQMSetupObjects const, DetId const &, double) {}
87  virtual void setBinError(EcalDQMSetupObjects const, EcalElectronicsId const &, double) {}
88  virtual void setBinError(EcalDQMSetupObjects const, int, double) {}
89  virtual void setBinError(EcalDQMSetupObjects const, DetId const &, int, double) {}
90  virtual void setBinError(EcalDQMSetupObjects const, EcalElectronicsId const &, int, double) {}
91  virtual void setBinError(EcalDQMSetupObjects const, int, int, double) {}
92 
93  virtual void setBinEntries(EcalDQMSetupObjects const, DetId const &, double) {}
94  virtual void setBinEntries(EcalDQMSetupObjects const, EcalElectronicsId const &, double) {}
95  virtual void setBinEntries(EcalDQMSetupObjects const, int, double) {}
96  virtual void setBinEntries(EcalDQMSetupObjects const, DetId const &, int, double) {}
97  virtual void setBinEntries(EcalDQMSetupObjects const, EcalElectronicsId const &, int, double) {}
98  virtual void setBinEntries(EcalDQMSetupObjects const, int, int, double) {}
99 
100  virtual double getBinContent(EcalDQMSetupObjects const, DetId const &, int = 0) const { return 0.; }
101  virtual double getBinContent(EcalDQMSetupObjects const, EcalElectronicsId const &, int = 0) const { return 0.; }
102  virtual double getBinContent(EcalDQMSetupObjects const, int, int = 0) const { return 0.; }
103 
104  virtual double getBinError(EcalDQMSetupObjects const, DetId const &, int = 0) const { return 0.; }
105  virtual double getBinError(EcalDQMSetupObjects const, EcalElectronicsId const &, int = 0) const { return 0.; }
106  virtual double getBinError(EcalDQMSetupObjects const, int, int = 0) const { return 0.; }
107 
108  virtual double getBinEntries(EcalDQMSetupObjects const, DetId const &, int = 0) const { return 0.; }
109  virtual double getBinEntries(EcalDQMSetupObjects const, EcalElectronicsId const &, int = 0) const { return 0.; }
110  virtual double getBinEntries(EcalDQMSetupObjects const, int, int = 0) const { return 0.; }
111 
112  // title, axis
113  virtual void setAxisTitle(std::string const &, int = 1);
114 
115  virtual void reset(EcalElectronicsMapping const *, double = 0., double = 0., double = 0.);
116  virtual void resetAll(double = 0., double = 0., double = 0.);
117 
118  virtual bool maskMatches(DetId const &, uint32_t, StatusManager const *, EcalTrigTowerConstituentsMap const *) const;
119 
120  virtual std::string const &getPath() const { return path_; }
123  MonitorElement::Kind getKind() const { return kind_; }
124  bool isActive() const { return active_; } // booked or retrieved
125  virtual bool isVariableBinning() const { return false; }
126  virtual MonitorElement const *getME(unsigned _iME) const { return (_iME < mes_.size() ? mes_[_iME] : nullptr); }
127  virtual MonitorElement *getME(unsigned _iME) { return (_iME < mes_.size() ? mes_[_iME] : nullptr); }
128 
129  std::string formPath(PathReplacements const &) const;
130 
131  void setLumiFlag() { lumiFlag_ = true; };
132  bool getLumiFlag() const { return lumiFlag_; }
133  void setBatchMode() { batchMode_ = true; }
134  bool getBatchMode() const { return batchMode_; }
135 
136  protected:
137  virtual void fill_(unsigned, int, double);
138  virtual void fill_(unsigned, int, double, double);
139  virtual void fill_(unsigned, double, double, double);
140 
141  virtual void checkME_(unsigned _iME) const {
142  if (!getME(_iME)) {
143  std::stringstream ss;
144  ss << "ME does not exist at index " << _iME;
145  throw_(ss.str());
146  }
147  }
148 
149  void throw_(std::string const &_message) const { throw cms::Exception("EcalDQM") << path_ << ": " << _message; }
150 
151  mutable std::vector<MonitorElement *> mes_;
152 
157  bool lumiFlag_; // when true, histograms will be saved every lumi section
158  // (default false)
159  bool batchMode_; // when true, histograms are not GUI-ready (default false)
160 
161  mutable bool active_;
162 
163  public:
164  struct ConstBin {
165  protected:
166  MESet const *meSet_;
167 
168  public:
169  unsigned iME;
170  int iBin;
172 
173  ConstBin() : meSet_(nullptr), iME(-1), iBin(-1), otype(binning::nObjType) {}
174  ConstBin(MESet const &, unsigned = 0, int = 1);
175  ConstBin(ConstBin const &_orig) : meSet_(_orig.meSet_), iME(_orig.iME), iBin(_orig.iBin), otype(_orig.otype) {}
176  ConstBin &operator=(ConstBin const &);
177  bool operator==(ConstBin const &_rhs) const {
178  return meSet_ != nullptr && meSet_ == _rhs.meSet_ && iME == _rhs.iME && iBin == _rhs.iBin;
179  }
180  bool isChannel(EcalElectronicsMapping const *electronicsMap) const {
181  if (meSet_)
182  return binning::isValidIdBin(electronicsMap, otype, meSet_->getBinType(), iME, iBin);
183  else
184  return false;
185  }
186  uint32_t getId() const {
187  if (meSet_)
189  else
190  return 0;
191  }
192  double getBinContent() const {
193  if (meSet_ && iME != unsigned(-1))
194  return meSet_->getME(iME)->getBinContent(iBin);
195  else
196  return 0.;
197  }
198  double getBinError() const {
199  if (meSet_ && iME != unsigned(-1))
200  return meSet_->getME(iME)->getBinError(iBin);
201  else
202  return 0.;
203  }
204  double getBinEntries() const {
205  if (meSet_ && iME != unsigned(-1))
206  return meSet_->getME(iME)->getBinEntries(iBin);
207  else
208  return 0.;
209  }
210  MonitorElement const *getME() const {
211  if (meSet_ && iME != unsigned(-1))
212  return meSet_->getME(iME);
213  else
214  return nullptr;
215  }
216  void setMESet(MESet const &_meSet) { meSet_ = &_meSet; }
217  MESet const *getMESet() const { return meSet_; }
218  };
219 
220  struct Bin : public ConstBin {
221  protected:
223 
224  public:
225  Bin() : ConstBin(), meSet_(nullptr) {}
226  Bin(MESet &_set, unsigned _iME = 0, int _iBin = 1) : ConstBin(_set, _iME, _iBin), meSet_(&_set) {}
227  Bin(Bin const &_orig) : ConstBin(_orig), meSet_(_orig.meSet_) {}
228  ConstBin &operator=(Bin const &_rhs) {
229  bool wasNull(ConstBin::meSet_ == nullptr);
230  ConstBin::operator=(_rhs);
231  if (wasNull)
232  meSet_ = _rhs.meSet_;
233  return *this;
234  }
235  void fill(double _w = 1.) {
236  if (meSet_)
237  meSet_->fill_(iME, iBin, _w);
238  }
239  void fill(double _y, double _w = 1.) {
240  if (meSet_)
241  meSet_->fill_(iME, iBin, _y, _w);
242  }
243  void setBinContent(double _content) {
244  if (meSet_ && iME != unsigned(-1))
246  }
247  void setBinError(double _error) {
248  if (meSet_ && iME != unsigned(-1))
249  meSet_->getME(iME)->setBinError(iBin, _error);
250  }
251  void setBinEntries(double _entries) {
252  if (meSet_ && iME != unsigned(-1))
253  meSet_->getME(iME)->setBinEntries(iBin, _entries);
254  }
256  if (meSet_ && iME != unsigned(-1))
257  return meSet_->getME(iME);
258  else
259  return nullptr;
260  }
261  void setMESet(MESet &_meSet) {
262  ConstBin::meSet_ = &_meSet;
263  meSet_ = &_meSet;
264  }
265  MESet *getMESet() const { return meSet_; }
266  };
267 
268  /* const_iterator
269  iterates over bins
270  supports automatic transition between MEs in the same set
271  underflow -> bin == 0 overflow -> bin == -1
272  */
273  struct const_iterator {
275  const_iterator(EcalElectronicsMapping const *, MESet const &_meSet, unsigned _iME = 0, int _iBin = 1)
276  : bin_(_meSet, _iME, _iBin) {}
277  const_iterator(EcalElectronicsMapping const *, MESet const &, DetId const &);
278  const_iterator(const_iterator const &_orig) : bin_(_orig.bin_) {}
280  bin_ = _rhs.bin_;
281  return *this;
282  }
283  bool operator==(const_iterator const &_rhs) const { return bin_ == _rhs.bin_; }
284  bool operator!=(const_iterator const &_rhs) const { return !(bin_ == _rhs.bin_); }
285  ConstBin const *operator->() const { return &bin_; }
288  bool up();
289  bool down();
290  bool left();
291  bool right();
292 
293  protected:
295  };
296 
297  struct iterator : public const_iterator {
299  iterator(EcalElectronicsMapping const *electronicsMap, MESet &_meSet, unsigned _iME = 0, int _iBin = 1)
300  : const_iterator(electronicsMap, _meSet, _iME, _iBin), bin_(_meSet) {
301  bin_.ConstBin::operator=(const_iterator::bin_);
302  }
303  iterator(EcalElectronicsMapping const *electronicsMap, MESet &_meSet, DetId const &_id)
304  : const_iterator(electronicsMap, _meSet, _id), bin_(_meSet) {
305  bin_.ConstBin::operator=(const_iterator::bin_);
306  }
307  iterator(iterator const &_orig) : const_iterator(_orig), bin_(_orig.bin_) {}
310  bin_.ConstBin::operator=(const_iterator::bin_);
311  return *this;
312  }
313  Bin *operator->() { return &bin_; }
314  Bin const *operator->() const { return &bin_; }
317  bin_.ConstBin::operator=(const_iterator::bin_);
318  return *this;
319  }
321  const_iterator::toNextChannel(electronicsMap);
322  bin_.ConstBin::operator=(const_iterator::bin_);
323  return *this;
324  }
325  bool up() {
326  bool res(const_iterator::up());
327  bin_.ConstBin::operator=(const_iterator::bin_);
328  return res;
329  }
330  bool down() {
331  bool res(const_iterator::down());
332  bin_.ConstBin::operator=(const_iterator::bin_);
333  return res;
334  }
335  bool left() {
336  bool res(const_iterator::left());
337  bin_.ConstBin::operator=(const_iterator::bin_);
338  return res;
339  }
340  bool right() {
341  bool res(const_iterator::right());
342  bin_.ConstBin::operator=(const_iterator::bin_);
343  return res;
344  }
345 
346  private:
348  };
349 
350  virtual const_iterator begin(EcalElectronicsMapping const *electronicsMap) const {
351  return const_iterator(electronicsMap, *this);
352  }
353 
354  virtual const_iterator end(EcalElectronicsMapping const *electronicsMap) const {
355  return const_iterator(electronicsMap, *this, -1, -1);
356  }
357 
358  virtual const_iterator beginChannel(EcalElectronicsMapping const *electronicsMap) const {
359  const_iterator itr(electronicsMap, *this, 0, 0);
360  return itr.toNextChannel(electronicsMap);
361  }
362 
363  virtual iterator begin(EcalElectronicsMapping const *electronicsMap) { return iterator(electronicsMap, *this); }
364 
365  virtual iterator end(EcalElectronicsMapping const *electronicsMap) {
366  return iterator(electronicsMap, *this, -1, -1);
367  }
368 
369  virtual iterator beginChannel(EcalElectronicsMapping const *electronicsMap) {
370  iterator itr(electronicsMap, *this, 0, 0);
371  itr.toNextChannel(electronicsMap);
372  return itr;
373  }
374  };
375 
376 } // namespace ecaldqm
377 
378 namespace ecaldqm {
379 
381  using MESetColletionType = std::map<std::string, std::unique_ptr<MESet>>;
382 
383  public:
384  using iterator = MESetColletionType::iterator;
385  using const_iterator = MESetColletionType::const_iterator;
386 
387  void insert(const std::string &key, MESet *ptr) { _MESetColletion.emplace(key, ptr); }
388  void insert(const std::string &&key, MESet *ptr) { _MESetColletion.emplace(key, ptr); }
389 
390  void erase(const std::string &key) { _MESetColletion.erase(key); }
391 
392  auto begin() { return _MESetColletion.begin(); }
393  auto end() const { return _MESetColletion.end(); }
394 
395  const_iterator find(const std::string &key) const { return _MESetColletion.find(key); }
396  iterator find(const std::string &key) { return _MESetColletion.find(key); }
397 
398  //return a reference, but this collection still has the ownership
399  MESet &at(const std::string &key) { return *(_MESetColletion.at(key).get()); }
400 
401  private:
403  };
404 
405 } // namespace ecaldqm
406 
407 #endif
ecaldqm::MESet::const_iterator::operator=
const_iterator & operator=(const_iterator const &_rhs)
Definition: MESet.h:279
ecaldqm::MESet::getBinError
virtual double getBinError(EcalDQMSetupObjects const, DetId const &, int=0) const
Definition: MESet.h:104
ecaldqm::MESet::fill
virtual void fill(EcalDQMSetupObjects const, EcalElectronicsId const &, double=1., double=1., double=1.)
Definition: MESet.h:75
ecaldqm::MESet::setBinEntries
virtual void setBinEntries(EcalDQMSetupObjects const, int, int, double)
Definition: MESet.h:98
MESetBinningUtils.h
EcalElectronicsMapping
Definition: EcalElectronicsMapping.h:28
ecaldqm::MESet::const_iterator::operator!=
bool operator!=(const_iterator const &_rhs) const
Definition: MESet.h:284
dqm::impl::MonitorElement::getBinEntries
virtual double getBinEntries(int bin) const
get # of bin entries (for profiles)
Definition: MonitorElement.cc:645
ecaldqm::MESet::iterator::iterator
iterator(iterator const &_orig)
Definition: MESet.h:307
EcalElectronicsId.h
ecaldqm::MESetCollection::_MESetColletion
MESetColletionType _MESetColletion
Definition: MESet.h:402
ecaldqm::MESet::throw_
void throw_(std::string const &_message) const
Definition: MESet.h:149
ecaldqm::MESet::batchMode_
bool batchMode_
Definition: MESet.h:159
ecaldqm
Definition: DQWorker.h:37
ecaldqm::MESet::getObjType
binning::ObjectType getObjType() const
Definition: MESet.h:121
ecaldqm::MESet::fill_
virtual void fill_(unsigned, int, double)
Definition: MESet.cc:252
ecaldqm::MESet::ConstBin::getBinContent
double getBinContent() const
Definition: MESet.h:192
ecaldqm::MESet::getME
virtual const MonitorElement * getME(unsigned _iME) const
Definition: MESet.h:126
ecaldqm::MESet::const_iterator::up
bool up()
Definition: MESet.cc:423
ecaldqm::MESet::iterator::toNextChannel
const_iterator & toNextChannel(EcalElectronicsMapping const *electronicsMap)
Definition: MESet.h:320
ecaldqm::MESet::ConstBin::getMESet
const MESet * getMESet() const
Definition: MESet.h:217
ecaldqm::EcalDQMSetupObjects::topology
const CaloTopology * topology
Definition: MESet.h:37
ecaldqm::MESet::getBinError
virtual double getBinError(EcalDQMSetupObjects const, EcalElectronicsId const &, int=0) const
Definition: MESet.h:105
ecaldqm::MESet::const_iterator::down
bool down()
Definition: MESet.cc:442
ecaldqm::MESet::const_iterator::operator++
const_iterator & operator++()
Definition: MESet.cc:363
ecaldqm::MESet::const_iterator::right
bool right()
Definition: MESet.cc:480
ecaldqm::MESet::const_iterator::toNextChannel
const_iterator & toNextChannel(EcalElectronicsMapping const *)
Definition: MESet.cc:413
ecaldqm::MESetCollection::const_iterator
MESetColletionType::const_iterator const_iterator
Definition: MESet.h:385
ecaldqm::MESet::setBinContent
virtual void setBinContent(EcalDQMSetupObjects const, DetId const &, double)
Definition: MESet.h:79
ecaldqm::MESet::setLumiFlag
void setLumiFlag()
Definition: MESet.h:131
ecaldqm::MESet::getBinContent
virtual double getBinContent(EcalDQMSetupObjects const, DetId const &, int=0) const
Definition: MESet.h:100
ecaldqm::MESet::iterator::left
bool left()
Definition: MESet.h:335
ecaldqm::MESet::book
virtual void book(DQMStore::IBooker &, EcalElectronicsMapping const *)
Definition: MESet.h:57
ecaldqm::MESet::operator=
virtual MESet & operator=(MESet const &)
Definition: MESet.cc:64
ecaldqm::MESet::ConstBin::getId
uint32_t getId() const
Definition: MESet.h:186
ecaldqm::MESet::fill
virtual void fill(EcalDQMSetupObjects const, DetId const &, double=1., double=1., double=1.)
Definition: MESet.h:74
ecaldqm::MESetCollection::find
const_iterator find(const std::string &key) const
Definition: MESet.h:395
ecaldqm::binning::idFromBin
uint32_t idFromBin(ObjectType, BinningType, unsigned, int)
Definition: MESetBinningUtils.cc:752
ecaldqm::MESet::setBinContent
virtual void setBinContent(EcalDQMSetupObjects const, DetId const &, int, double)
Definition: MESet.h:82
ecaldqm::MESet::setBatchMode
void setBatchMode()
Definition: MESet.h:133
ecaldqm::MESet::iterator::down
bool down()
Definition: MESet.h:330
ecaldqm::MESet::PathReplacements
std::map< std::string, std::string > PathReplacements
Definition: MESet.h:46
ecaldqm::MESet::ConstBin::ConstBin
ConstBin()
Definition: MESet.h:173
ecaldqm::MESet::fill
virtual void fill(EcalDQMSetupObjects const, int, double=1., double=1., double=1.)
Definition: MESet.h:76
DQMStore.h
dqm::legacy::MonitorElement
Definition: MonitorElement.h:462
ecaldqm::MESet::DQMStore
dqm::legacy::DQMStore DQMStore
Definition: MESet.h:44
ecaldqm::MESet::const_iterator::operator->
const ConstBin * operator->() const
Definition: MESet.h:285
ecaldqm::MESet::ConstBin::isChannel
bool isChannel(EcalElectronicsMapping const *electronicsMap) const
Definition: MESet.h:180
ecaldqm::MESet::setBinEntries
virtual void setBinEntries(EcalDQMSetupObjects const, int, double)
Definition: MESet.h:95
ecaldqm::MESet::Bin::fill
void fill(double _y, double _w=1.)
Definition: MESet.h:239
ecaldqm::MESet::Bin::Bin
Bin(MESet &_set, unsigned _iME=0, int _iBin=1)
Definition: MESet.h:226
ecaldqm::MESet::ConstBin::otype
binning::ObjectType otype
Definition: MESet.h:171
ecaldqm::MESet::iterator::operator=
iterator & operator=(const_iterator const &_rhs)
Definition: MESet.h:308
CaloTopology
Definition: CaloTopology.h:19
ecaldqm::MESet::setBinError
virtual void setBinError(EcalDQMSetupObjects const, int, double)
Definition: MESet.h:88
ecaldqm::MESet::getBinType
binning::BinningType getBinType() const
Definition: MESet.h:122
ecaldqm::MESet::maskMatches
virtual bool maskMatches(DetId const &, uint32_t, StatusManager const *, EcalTrigTowerConstituentsMap const *) const
Definition: MESet.cc:170
ecaldqm::MESet::ConstBin::meSet_
const MESet * meSet_
Definition: MESet.h:166
ecaldqm::MESet::getME
virtual MonitorElement * getME(unsigned _iME)
Definition: MESet.h:127
ecaldqm::MESet::ConstBin::iBin
int iBin
Definition: MESet.h:170
contentValuesCheck.ss
ss
Definition: contentValuesCheck.py:33
ecaldqm::MESet::begin
virtual iterator begin(EcalElectronicsMapping const *electronicsMap)
Definition: MESet.h:363
DetId
Definition: DetId.h:17
ecaldqm::MESet::Bin::setBinContent
void setBinContent(double _content)
Definition: MESet.h:243
CaloGeometry
Definition: CaloGeometry.h:21
ecaldqm::MESet::ConstBin::ConstBin
ConstBin(ConstBin const &_orig)
Definition: MESet.h:175
ecaldqm::MESetCollection::end
auto end() const
Definition: MESet.h:393
ecaldqm::MESet::setBinEntries
virtual void setBinEntries(EcalDQMSetupObjects const, EcalElectronicsId const &, double)
Definition: MESet.h:94
ecaldqm::MESet::getBinEntries
virtual double getBinEntries(EcalDQMSetupObjects const, DetId const &, int=0) const
Definition: MESet.h:108
ecaldqm::MESet::reset
virtual void reset(EcalElectronicsMapping const *, double=0., double=0., double=0.)
Definition: MESet.cc:98
dqm::legacy::DQMStore
Definition: DQMStore.h:728
ecaldqm::MESet::getBinContent
virtual double getBinContent(EcalDQMSetupObjects const, EcalElectronicsId const &, int=0) const
Definition: MESet.h:101
ecaldqm::MESet::iterator::right
bool right()
Definition: MESet.h:340
ecaldqm::MESet::beginChannel
virtual iterator beginChannel(EcalElectronicsMapping const *electronicsMap)
Definition: MESet.h:369
ecaldqm::MESet::clone
virtual MESet * clone(std::string const &="") const
Definition: MESet.cc:75
ecaldqm::MESet::fill
virtual void fill(EcalDQMSetupObjects const, double, double=1., double=1.)
Definition: MESet.h:77
ecaldqm::MESet::setAxisTitle
virtual void setAxisTitle(std::string const &, int=1)
Definition: MESet.cc:89
ecaldqm::MESet::Bin::Bin
Bin(Bin const &_orig)
Definition: MESet.h:227
ecaldqm::MESet::Bin::Bin
Bin()
Definition: MESet.h:225
ecaldqm::MESet::Bin::getME
MonitorElement * getME() const
Definition: MESet.h:255
ecaldqm::MESet::getBinContent
virtual double getBinContent(EcalDQMSetupObjects const, int, int=0) const
Definition: MESet.h:102
ecaldqm::MESet::begin
virtual const_iterator begin(EcalElectronicsMapping const *electronicsMap) const
Definition: MESet.h:350
ecaldqm::MESet::setBinEntries
virtual void setBinEntries(EcalDQMSetupObjects const, DetId const &, int, double)
Definition: MESet.h:96
ecaldqm::MESet::iterator::up
bool up()
Definition: MESet.h:325
ecaldqm::MESet::otype_
binning::ObjectType otype_
Definition: MESet.h:154
ecaldqm::MESetCollection::find
iterator find(const std::string &key)
Definition: MESet.h:396
ecaldqm::MESet::~MESet
virtual ~MESet()
Definition: MESet.cc:62
ecaldqm::MESet::iterator::iterator
iterator(EcalElectronicsMapping const *electronicsMap, MESet &_meSet, DetId const &_id)
Definition: MESet.h:303
EcalElectronicsId
Ecal readout channel identification [32:20] Unused (so far) [19:13] DCC id [12:6] tower [5:3] strip [...
Definition: EcalElectronicsId.h:18
ecaldqm::MESet::active_
bool active_
Definition: MESet.h:161
ecaldqm::MESet::const_iterator::const_iterator
const_iterator(EcalElectronicsMapping const *, MESet const &_meSet, unsigned _iME=0, int _iBin=1)
Definition: MESet.h:275
ecaldqm::MESet::const_iterator::const_iterator
const_iterator()
Definition: MESet.h:274
EcalTrigTowerConstituentsMap
Definition: EcalTrigTowerConstituentsMap.h:19
ecaldqm::MESet::ConstBin::operator==
bool operator==(ConstBin const &_rhs) const
Definition: MESet.h:177
ecaldqm::MESet::ConstBin::getBinEntries
double getBinEntries() const
Definition: MESet.h:204
ecaldqm::MESet::iterator::iterator
iterator(EcalElectronicsMapping const *electronicsMap, MESet &_meSet, unsigned _iME=0, int _iBin=1)
Definition: MESet.h:299
ecaldqm::MESet::end
virtual const_iterator end(EcalElectronicsMapping const *electronicsMap) const
Definition: MESet.h:354
ecaldqm::MESet::const_iterator::const_iterator
const_iterator(const_iterator const &_orig)
Definition: MESet.h:278
ecaldqm::MESetCollection::insert
void insert(const std::string &key, MESet *ptr)
Definition: MESet.h:387
ecaldqm::MESet::setBinError
virtual void setBinError(EcalDQMSetupObjects const, DetId const &, int, double)
Definition: MESet.h:89
listHistos.binning
binning
Definition: listHistos.py:43
ecaldqm::binning::ObjectType
ObjectType
Definition: MESetBinningUtils.h:18
ecaldqm::MESetCollection
Definition: MESet.h:380
ecaldqm::EcalDQMSetupObjects
Definition: MESet.h:33
ecaldqm::MESet::btype_
binning::BinningType btype_
Definition: MESet.h:155
MonitorElementData::Kind
Kind
Definition: MonitorElementCollection.h:129
ecaldqm::MESetCollection::at
MESet & at(const std::string &key)
Definition: MESet.h:399
ecaldqm::MESet::const_iterator::operator==
bool operator==(const_iterator const &_rhs) const
Definition: MESet.h:283
ecaldqm::EcalDQMSetupObjects::geometry
const CaloGeometry * geometry
Definition: MESet.h:36
ecaldqm::MESet::iterator
Definition: MESet.h:297
EcalElectronicsMapping.h
ecaldqm::MESet::path_
std::string path_
Definition: MESet.h:153
ecaldqm::MESet::isVariableBinning
virtual bool isVariableBinning() const
Definition: MESet.h:125
ecaldqm::MESet::Bin::fill
void fill(double _w=1.)
Definition: MESet.h:235
ecaldqm::MESet::setBinError
virtual void setBinError(EcalDQMSetupObjects const, int, int, double)
Definition: MESet.h:91
ecaldqm::MESet::getBinEntries
virtual double getBinEntries(EcalDQMSetupObjects const, EcalElectronicsId const &, int=0) const
Definition: MESet.h:109
dqm::impl::MonitorElement::setBinEntries
virtual void setBinEntries(int bin, double nentries)
set # of bin entries (to be used for profiles)
Definition: MonitorElement.cc:727
ecaldqm::MESetCollection::erase
void erase(const std::string &key)
Definition: MESet.h:390
ecaldqm::MESet::Bin::setMESet
void setMESet(MESet &_meSet)
Definition: MESet.h:261
ecaldqm::MESetCollection::MESetColletionType
std::map< std::string, std::unique_ptr< MESet > > MESetColletionType
Definition: MESet.h:381
ecaldqm::MESetCollection::begin
auto begin()
Definition: MESet.h:392
ecaldqm::MESet::setBinEntries
virtual void setBinEntries(EcalDQMSetupObjects const, DetId const &, double)
Definition: MESet.h:93
res
Definition: Electron.h:6
ecaldqm::MESet::getLumiFlag
bool getLumiFlag() const
Definition: MESet.h:132
AlCaHLTBitMon_QueryRunRegistry.string
string string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
ecaldqm::EcalDQMSetupObjects::trigtowerMap
const EcalTrigTowerConstituentsMap * trigtowerMap
Definition: MESet.h:35
ecaldqm::MESet::iterator::operator->
const Bin * operator->() const
Definition: MESet.h:314
ecaldqm::MESet::mes_
std::vector< MonitorElement * > mes_
Definition: MESet.h:151
CaloTopology.h
ecaldqm::MESet::setBinContent
virtual void setBinContent(EcalDQMSetupObjects const, int, int, double)
Definition: MESet.h:84
ecaldqm::MESetCollection::insert
void insert(const std::string &&key, MESet *ptr)
Definition: MESet.h:388
ecaldqm::MESet::Bin::getMESet
MESet * getMESet() const
Definition: MESet.h:265
ecaldqm::MESet::ConstBin
Definition: MESet.h:164
ecaldqm::MESet::getBinError
virtual double getBinError(EcalDQMSetupObjects const, int, int=0) const
Definition: MESet.h:106
ecaldqm::StatusManager
Definition: StatusManager.h:16
ecaldqm::MESet::setBinError
virtual void setBinError(EcalDQMSetupObjects const, DetId const &, double)
Definition: MESet.h:86
dqm::impl::MonitorElement::setBinContent
virtual void setBinContent(int binx, double content)
set content of bin (1-D)
Definition: MonitorElement.cc:691
EcalTrigTowerConstituentsMap.h
ecaldqm::MESet::iterator::iterator
iterator()
Definition: MESet.h:298
ecaldqm::EcalDQMSetupObjects::electronicsMap
const EcalElectronicsMapping * electronicsMap
Definition: MESet.h:34
ecaldqm::MESet::Bin
Definition: MESet.h:220
ecaldqm::MESet::ConstBin::getME
const MonitorElement * getME() const
Definition: MESet.h:210
ecaldqm::MESet::const_iterator
Definition: MESet.h:273
ecaldqm::MESet::clear
virtual void clear() const
Definition: MESet.cc:84
ecaldqm::MESet::const_iterator::bin_
ConstBin bin_
Definition: MESet.h:294
ecaldqm::MESet::iterator::bin_
Bin bin_
Definition: MESet.h:347
ecaldqm::MESet::ConstBin::iME
unsigned iME
Definition: MESet.h:169
ecaldqm::MESet::ConstBin::operator=
ConstBin & operator=(ConstBin const &)
Definition: MESet.cc:329
DetId.h
ecaldqm::binning::nObjType
Definition: MESetBinningUtils.h:38
dqm::implementation::IGetter
Definition: DQMStore.h:484
ecaldqm::MESet::Bin::setBinError
void setBinError(double _error)
Definition: MESet.h:247
ecaldqm::MESet::checkME_
virtual void checkME_(unsigned _iME) const
Definition: MESet.h:141
ecaldqm::MESet::setBinContent
virtual void setBinContent(EcalDQMSetupObjects const, EcalElectronicsId const &, int, double)
Definition: MESet.h:83
Exception
Definition: hltDiff.cc:245
ecaldqm::MESet::formPath
std::string formPath(PathReplacements const &) const
Definition: MESet.cc:153
CaloGeometry.h
ecaldqm::MESet::beginChannel
virtual const_iterator beginChannel(EcalElectronicsMapping const *electronicsMap) const
Definition: MESet.h:358
ecaldqm::MESet::MESet
MESet()
Definition: MESet.cc:14
dqm::impl::MonitorElement::setBinError
virtual void setBinError(int binx, double error)
set uncertainty on content of bin (1-D)
Definition: MonitorElement.cc:709
ecaldqm::MESet::const_iterator::left
bool left()
Definition: MESet.cc:461
ecaldqm::MESet::Bin::operator=
ConstBin & operator=(Bin const &_rhs)
Definition: MESet.h:228
Exception.h
ecaldqm::MESet::setBinError
virtual void setBinError(EcalDQMSetupObjects const, EcalElectronicsId const &, double)
Definition: MESet.h:87
ecaldqm::MESet::getPath
virtual const std::string & getPath() const
Definition: MESet.h:120
dqm::implementation::IBooker
Definition: DQMStore.h:43
ecaldqm::MESet::getBatchMode
bool getBatchMode() const
Definition: MESet.h:134
ecaldqm::MESet::setBinContent
virtual void setBinContent(EcalDQMSetupObjects const, int, double)
Definition: MESet.h:81
ecaldqm::MESet::getBinEntries
virtual double getBinEntries(EcalDQMSetupObjects const, int, int=0) const
Definition: MESet.h:110
ecaldqm::MESet::retrieve
virtual bool retrieve(EcalElectronicsMapping const *, DQMStore::IGetter &, std::string *=nullptr) const
Definition: MESet.h:58
ecaldqm::MESetCollection::iterator
MESetColletionType::iterator iterator
Definition: MESet.h:384
ecaldqm::MESet::iterator::operator->
Bin * operator->()
Definition: MESet.h:313
ecaldqm::binning::BinningType
BinningType
Definition: MESetBinningUtils.h:41
dqm::impl::MonitorElement::getBinError
virtual double getBinError(int binx) const
get uncertainty on content of bin (1-D) - See TH1::GetBinError for details
Definition: MonitorElement.cc:610
ecaldqm::MESet::iterator::operator++
const_iterator & operator++()
Definition: MESet.h:315
ecaldqm::MESet::resetAll
virtual void resetAll(double=0., double=0., double=0.)
Definition: MESet.cc:108
ecaldqm::MESet::kind_
MonitorElement::Kind kind_
Definition: MESet.h:156
btvTracks_cfi._content
_content
Definition: btvTracks_cfi.py:5
crabWrapper.key
key
Definition: crabWrapper.py:19
ecaldqm::MESet::getKind
MonitorElement::Kind getKind() const
Definition: MESet.h:123
dqm::impl::MonitorElement::getBinContent
virtual double getBinContent(int binx) const
get content of bin (1-D)
Definition: MonitorElement.cc:592
ecaldqm::binning::isValidIdBin
bool isValidIdBin(EcalElectronicsMapping const *, ObjectType, BinningType, unsigned, int)
Definition: MESetBinningUtils.cc:562
ecaldqm::MESet::setBinContent
virtual void setBinContent(EcalDQMSetupObjects const, EcalElectronicsId const &, double)
Definition: MESet.h:80
ecaldqm::MESet::Bin::meSet_
MESet * meSet_
Definition: MESet.h:222
ecaldqm::MESet::setBinError
virtual void setBinError(EcalDQMSetupObjects const, EcalElectronicsId const &, int, double)
Definition: MESet.h:90
ecaldqm::MESet::MonitorElement
dqm::legacy::MonitorElement MonitorElement
Definition: MESet.h:45
ecaldqm::MESet::end
virtual iterator end(EcalElectronicsMapping const *electronicsMap)
Definition: MESet.h:365
ecaldqm::MESet::ConstBin::setMESet
void setMESet(MESet const &_meSet)
Definition: MESet.h:216
ecaldqm::MESet::setBinEntries
virtual void setBinEntries(EcalDQMSetupObjects const, EcalElectronicsId const &, int, double)
Definition: MESet.h:97
ecaldqm::MESet::isActive
bool isActive() const
Definition: MESet.h:124
ecaldqm::MESet::lumiFlag_
bool lumiFlag_
Definition: MESet.h:157
ecaldqm::MESet
Definition: MESet.h:42
ecaldqm::MESet::Bin::setBinEntries
void setBinEntries(double _entries)
Definition: MESet.h:251
ecaldqm::MESet::ConstBin::getBinError
double getBinError() const
Definition: MESet.h:198