CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Types | Public Member Functions | Protected Attributes
ecaldqm::MESetMulti Class Reference

#include <MESetMulti.h>

Inheritance diagram for ecaldqm::MESetMulti:
ecaldqm::MESet

Public Types

typedef std::map< std::string,
std::vector< std::string > > 
ReplCandidates
 
- Public Types inherited from ecaldqm::MESet
typedef dqm::legacy::DQMStore DQMStore
 
typedef dqm::legacy::MonitorElement MonitorElement
 
typedef std::map< std::string,
std::string > 
PathReplacements
 

Public Member Functions

const_iterator begin (EcalElectronicsMapping const *electronicsMap) const override
 
iterator begin (EcalElectronicsMapping const *electronicsMap) override
 
const_iterator beginChannel (EcalElectronicsMapping const *electronicsMap) const override
 
iterator beginChannel (EcalElectronicsMapping const *electronicsMap) override
 
void book (DQMStore::IBooker &, EcalElectronicsMapping const *) override
 
void clear () const override
 
MESetclone (std::string const &="") const override
 
const_iterator end (EcalElectronicsMapping const *electronicsMap) const override
 
iterator end (EcalElectronicsMapping const *electronicsMap) override
 
void fill (EcalDQMSetupObjects const edso, DetId const &_id, double _xyw=1., double _yw=1., double _w=1.) override
 
void fill (EcalDQMSetupObjects const edso, EcalElectronicsId const &_id, double _xyw=1., double _yw=1., double _w=1.) override
 
void fill (EcalDQMSetupObjects const edso, int _dcctccid, double _xyw=1., double _yw=1., double _w=1.) override
 
void fill (EcalDQMSetupObjects const edso, double _x, double _yw=1., double _w=1.) override
 
double getBinContent (EcalDQMSetupObjects const edso, DetId const &_id, int _bin=0) const override
 
double getBinContent (EcalDQMSetupObjects const edso, EcalElectronicsId const &_id, int _bin=0) const override
 
double getBinContent (EcalDQMSetupObjects const edso, int _dcctccid, int _bin=0) const override
 
double getBinEntries (EcalDQMSetupObjects const edso, DetId const &_id, int _bin=0) const override
 
double getBinEntries (EcalDQMSetupObjects const edso, EcalElectronicsId const &_id, int _bin=0) const override
 
double getBinEntries (EcalDQMSetupObjects const edso, int _dcctccid, int _bin=0) const override
 
double getBinError (EcalDQMSetupObjects const edso, DetId const &_id, int _bin=0) const override
 
double getBinError (EcalDQMSetupObjects const edso, EcalElectronicsId const &_id, int _bin=0) const override
 
double getBinError (EcalDQMSetupObjects const edso, int _dcctccid, int _bin=0) const override
 
MESetgetCurrent () const
 
unsigned getIndex (PathReplacements const &) const
 
MonitorElement const * getME (unsigned _iME) const override
 
MonitorElementgetME (unsigned _iME) override
 
unsigned getMultiplicity () const
 
std::string const & getPath () const override
 
bool isVariableBinning () const override
 
bool maskMatches (DetId const &_id, uint32_t _mask, StatusManager const *_statusManager, EcalTrigTowerConstituentsMap const *trigTowerMap) const override
 
 MESetMulti (MESet const &, ReplCandidates const &)
 
 MESetMulti (MESetMulti const &)
 
MESetoperator= (MESet const &) override
 
void reset (EcalElectronicsMapping const *, double=0., double=0., double=0.) override
 
void resetAll (double=0., double=0., double=0.) override
 
bool retrieve (EcalElectronicsMapping const *, DQMStore::IGetter &, std::string *=nullptr) const override
 
void setBinContent (EcalDQMSetupObjects const edso, DetId const &_id, double _content) override
 
void setBinContent (EcalDQMSetupObjects const edso, EcalElectronicsId const &_id, double _content) override
 
void setBinContent (EcalDQMSetupObjects const edso, int _dcctccid, double _content) override
 
void setBinContent (EcalDQMSetupObjects const edso, DetId const &_id, int _bin, double _content) override
 
void setBinContent (EcalDQMSetupObjects const edso, EcalElectronicsId const &_id, int _bin, double _content) override
 
void setBinContent (EcalDQMSetupObjects const edso, int _dcctccid, int _bin, double _content) override
 
void setBinEntries (EcalDQMSetupObjects const edso, DetId const &_id, double _entries) override
 
void setBinEntries (EcalDQMSetupObjects const edso, EcalElectronicsId const &_id, double _entries) override
 
void setBinEntries (EcalDQMSetupObjects const edso, int _dcctccid, double _entries) override
 
void setBinEntries (EcalDQMSetupObjects const edso, DetId const &_id, int _bin, double _entries) override
 
void setBinEntries (EcalDQMSetupObjects const edso, EcalElectronicsId const &_id, int _bin, double _entries) override
 
void setBinEntries (EcalDQMSetupObjects const edso, int _dcctccid, int _bin, double _entries) override
 
void setBinError (EcalDQMSetupObjects const edso, DetId const &_id, double _error) override
 
void setBinError (EcalDQMSetupObjects const edso, EcalElectronicsId const &_id, double _error) override
 
void setBinError (EcalDQMSetupObjects const edso, int _dcctccid, double _error) override
 
void setBinError (EcalDQMSetupObjects const edso, DetId const &_id, int _bin, double _error) override
 
void setBinError (EcalDQMSetupObjects const edso, EcalElectronicsId const &_id, int _bin, double _error) override
 
void setBinError (EcalDQMSetupObjects const edso, int _dcctccid, int _bin, double _error) override
 
void use (unsigned) const
 
 ~MESetMulti () override
 
- Public Member Functions inherited from ecaldqm::MESet
std::string formPath (PathReplacements const &) const
 
bool getBatchMode () const
 
binning::BinningType getBinType () const
 
MonitorElement::Kind getKind () const
 
bool getLumiFlag () const
 
binning::ObjectType getObjType () const
 
bool isActive () const
 
 MESet ()
 
 MESet (std::string const &, binning::ObjectType, binning::BinningType, MonitorElement::Kind)
 
 MESet (MESet const &)
 
virtual void setAxisTitle (std::string const &, int=1)
 
void setBatchMode ()
 
void setLumiFlag ()
 
virtual ~MESet ()
 

Protected Attributes

MESetcurrent_
 
ReplCandidates replCandidates_
 
std::vector< MESet * > sets_
 
- Protected Attributes inherited from ecaldqm::MESet
bool active_
 
bool batchMode_
 
binning::BinningType btype_
 
MonitorElement::Kind kind_
 
bool lumiFlag_
 
std::vector< MonitorElement * > mes_
 
binning::ObjectType otype_
 
std::string path_
 

Additional Inherited Members

- Protected Member Functions inherited from ecaldqm::MESet
virtual void checkME_ (unsigned _iME) const
 
virtual void fill_ (unsigned, int, double)
 
virtual void fill_ (unsigned, int, double, double)
 
virtual void fill_ (unsigned, double, double, double)
 
void throw_ (std::string const &_message) const
 

Detailed Description

Definition at line 13 of file MESetMulti.h.

Member Typedef Documentation

typedef std::map<std::string, std::vector<std::string> > ecaldqm::MESetMulti::ReplCandidates

Definition at line 15 of file MESetMulti.h.

Constructor & Destructor Documentation

ecaldqm::MESetMulti::MESetMulti ( MESet const &  _seed,
ReplCandidates const &  _replCandidates 
)

Definition at line 4 of file MESetMulti.cc.

References ecaldqm::MESet::clone(), current_, ecaldqm::MESet::formPath(), dqmdumpme::indices, dqmdumpme::last, replCandidates_, and sets_.

Referenced by clone().

5  : MESet(_seed), current_(nullptr), sets_(), replCandidates_(_replCandidates) {
6  PathReplacements replacements;
7  std::map<std::string, unsigned> indices;
8  // recursive function to set replacements
9  // indices gives the multi index in each dimension
10  // dimensions are alphanumerically ordered from the use of std::map
11  std::function<bool(typename ReplCandidates::const_iterator &)> setReplacements(
12  [&setReplacements, &replacements, &indices, this](typename ReplCandidates::const_iterator &_rItr) {
13  unsigned &index(indices[_rItr->first]);
14  replacements[_rItr->first] = _rItr->second[index];
15  // one dimension set, go to next
16  ++_rItr;
17  if (_rItr == this->replCandidates_.end()) {
18  // this is the last dimension. Increment the index and retutn to the
19  // first
20  _rItr = this->replCandidates_.begin();
21  ++index;
22  } else if (setReplacements(_rItr))
23  ++index;
24 
25  if (index != _rItr->second.size())
26  return false;
27  // index has counted to the maximum of this dimension, carry over
28  index = 0;
29  return true;
30  });
31 
32  // [dim0 = 0, dim1 = 0] -> 0, [dim0 = 0, dim1 = 1] -> 1, ...
33  unsigned iM(0);
34  while (true) {
35  replacements.clear();
36  typename ReplCandidates::const_iterator rItr(replCandidates_.begin());
37  bool last(setReplacements(rItr));
38  sets_.push_back(_seed.clone(formPath(replacements)));
39  if (last)
40  break;
41  ++iM;
42  }
43 
44  current_ = sets_[0];
45  }
std::string formPath(PathReplacements const &) const
Definition: MESet.cc:153
std::vector< MESet * > sets_
Definition: MESetMulti.h:183
ReplCandidates replCandidates_
Definition: MESetMulti.h:184
tuple last
Definition: dqmdumpme.py:56
list indices
Definition: dqmdumpme.py:50
std::map< std::string, std::string > PathReplacements
Definition: MESet.h:46
ecaldqm::MESetMulti::MESetMulti ( MESetMulti const &  _orig)

Definition at line 47 of file MESetMulti.cc.

References current_, and sets_.

48  : MESet(_orig), current_(nullptr), sets_(_orig.sets_.size(), nullptr), replCandidates_(_orig.replCandidates_) {
49  if (sets_.empty())
50  return;
51 
52  for (unsigned iS(0); iS < sets_.size(); ++iS) {
53  if (!_orig.sets_[iS])
54  continue;
55  sets_[iS] = _orig.sets_[iS]->clone();
56  if (_orig.sets_[iS] == _orig.current_)
57  current_ = sets_[iS];
58  }
59  }
std::vector< MESet * > sets_
Definition: MESetMulti.h:183
ReplCandidates replCandidates_
Definition: MESetMulti.h:184
ecaldqm::MESetMulti::~MESetMulti ( )
override

Definition at line 61 of file MESetMulti.cc.

References sets_.

61  {
62  for (unsigned iS(0); iS < sets_.size(); ++iS)
63  delete sets_[iS];
64  }
std::vector< MESet * > sets_
Definition: MESetMulti.h:183

Member Function Documentation

const_iterator ecaldqm::MESetMulti::begin ( EcalElectronicsMapping const *  electronicsMap) const
inlineoverridevirtual

Reimplemented from ecaldqm::MESet.

Definition at line 162 of file MESetMulti.h.

References current_.

162  {
163  return const_iterator(electronicsMap, *current_);
164  }
iterator ecaldqm::MESetMulti::begin ( EcalElectronicsMapping const *  electronicsMap)
inlineoverridevirtual

Reimplemented from ecaldqm::MESet.

Definition at line 171 of file MESetMulti.h.

References current_.

171  {
172  return iterator(electronicsMap, *current_);
173  }
const_iterator ecaldqm::MESetMulti::beginChannel ( EcalElectronicsMapping const *  electronicsMap) const
inlineoverridevirtual

Reimplemented from ecaldqm::MESet.

Definition at line 168 of file MESetMulti.h.

References ecaldqm::MESet::beginChannel(), and current_.

Referenced by ecaldqm::LaserClient::producePlots(), ecaldqm::TestPulseClient::producePlots(), ecaldqm::PedestalClient::producePlots(), and ecaldqm::LedClient::producePlots().

168  {
169  return current_->beginChannel(electronicsMap);
170  }
virtual const_iterator beginChannel(EcalElectronicsMapping const *electronicsMap) const
Definition: MESet.h:358
iterator ecaldqm::MESetMulti::beginChannel ( EcalElectronicsMapping const *  electronicsMap)
inlineoverridevirtual

Reimplemented from ecaldqm::MESet.

Definition at line 177 of file MESetMulti.h.

References ecaldqm::MESet::beginChannel(), and current_.

177  {
178  return current_->beginChannel(electronicsMap);
179  }
virtual const_iterator beginChannel(EcalElectronicsMapping const *electronicsMap) const
Definition: MESet.h:358
void ecaldqm::MESetMulti::book ( DQMStore::IBooker _ibooker,
EcalElectronicsMapping const *  electronicsMap 
)
overridevirtual

Reimplemented from ecaldqm::MESet.

Definition at line 97 of file MESetMulti.cc.

References ecaldqm::MESet::active_, and sets_.

97  {
98  for (unsigned iS(0); iS < sets_.size(); ++iS)
99  sets_[iS]->book(_ibooker, electronicsMap);
100 
101  active_ = true;
102  }
std::vector< MESet * > sets_
Definition: MESetMulti.h:183
bool active_
Definition: MESet.h:161
void book(DQMStore::IBooker &, EcalElectronicsMapping const *) override
Definition: MESetMulti.cc:97
void ecaldqm::MESetMulti::clear ( void  ) const
overridevirtual

Reimplemented from ecaldqm::MESet.

Definition at line 115 of file MESetMulti.cc.

References ecaldqm::MESet::active_, and sets_.

115  {
116  for (unsigned iS(0); iS < sets_.size(); ++iS)
117  sets_[iS]->clear();
118 
119  active_ = false;
120  }
std::vector< MESet * > sets_
Definition: MESetMulti.h:183
bool active_
Definition: MESet.h:161
void clear() const override
Definition: MESetMulti.cc:115
MESet * ecaldqm::MESetMulti::clone ( std::string const &  _path = "") const
overridevirtual

Reimplemented from ecaldqm::MESet.

Definition at line 88 of file MESetMulti.cc.

References filterCSVwithJSON::copy, MESetMulti(), fed_dqm_sourceclient-live_cfg::path, ecaldqm::MESet::path_, and AlCaHLTBitMon_QueryRunRegistry::string.

88  {
90  if (!_path.empty())
91  path_ = _path;
92  MESet *copy(new MESetMulti(*this));
93  path_ = path;
94  return copy;
95  }
MESetMulti(MESet const &, ReplCandidates const &)
Definition: MESetMulti.cc:4
std::string path_
Definition: MESet.h:153
const_iterator ecaldqm::MESetMulti::end ( EcalElectronicsMapping const *  electronicsMap) const
inlineoverridevirtual
iterator ecaldqm::MESetMulti::end ( EcalElectronicsMapping const *  electronicsMap)
inlineoverridevirtual

Reimplemented from ecaldqm::MESet.

Definition at line 174 of file MESetMulti.h.

References current_.

Referenced by Types.LuminosityBlockRange::cppID(), and Types.EventRange::cppID().

174  {
175  return iterator(electronicsMap, *current_, -1, -1);
176  }
void ecaldqm::MESetMulti::fill ( EcalDQMSetupObjects const  edso,
DetId const &  _id,
double  _xyw = 1.,
double  _yw = 1.,
double  _w = 1. 
)
inlineoverridevirtual
void ecaldqm::MESetMulti::fill ( EcalDQMSetupObjects const  edso,
EcalElectronicsId const &  _id,
double  _xyw = 1.,
double  _yw = 1.,
double  _w = 1. 
)
inlineoverridevirtual

Reimplemented from ecaldqm::MESet.

Definition at line 33 of file MESetMulti.h.

References current_, and ecaldqm::MESet::fill().

37  {
38  current_->fill(edso, _id, _xyw, _yw, _w);
39  }
virtual void fill(EcalDQMSetupObjects const, DetId const &, double=1., double=1., double=1.)
Definition: MESet.h:74
void ecaldqm::MESetMulti::fill ( EcalDQMSetupObjects const  edso,
int  _dcctccid,
double  _xyw = 1.,
double  _yw = 1.,
double  _w = 1. 
)
inlineoverridevirtual

Reimplemented from ecaldqm::MESet.

Definition at line 40 of file MESetMulti.h.

References current_, and ecaldqm::MESet::fill().

41  {
42  current_->fill(edso, _dcctccid, _xyw, _yw, _w);
43  }
virtual void fill(EcalDQMSetupObjects const, DetId const &, double=1., double=1., double=1.)
Definition: MESet.h:74
void ecaldqm::MESetMulti::fill ( EcalDQMSetupObjects const  edso,
double  _x,
double  _yw = 1.,
double  _w = 1. 
)
inlineoverridevirtual

Reimplemented from ecaldqm::MESet.

Definition at line 44 of file MESetMulti.h.

References current_, and ecaldqm::MESet::fill().

44  {
45  current_->fill(edso, _x, _yw, _w);
46  }
virtual void fill(EcalDQMSetupObjects const, DetId const &, double=1., double=1., double=1.)
Definition: MESet.h:74
double ecaldqm::MESetMulti::getBinContent ( EcalDQMSetupObjects const  edso,
DetId const &  _id,
int  _bin = 0 
) const
inlineoverridevirtual

Reimplemented from ecaldqm::MESet.

Definition at line 111 of file MESetMulti.h.

References current_, and ecaldqm::MESet::getBinContent().

Referenced by ecaldqm::LaserClient::producePlots(), ecaldqm::TestPulseClient::producePlots(), ecaldqm::PedestalClient::producePlots(), ecaldqm::LedClient::producePlots(), and ecaldqm::CalibrationSummaryClient::producePlots().

111  {
112  return current_->getBinContent(edso, _id, _bin);
113  }
virtual double getBinContent(EcalDQMSetupObjects const, DetId const &, int=0) const
Definition: MESet.h:100
double ecaldqm::MESetMulti::getBinContent ( EcalDQMSetupObjects const  edso,
EcalElectronicsId const &  _id,
int  _bin = 0 
) const
inlineoverridevirtual

Reimplemented from ecaldqm::MESet.

Definition at line 114 of file MESetMulti.h.

References current_, and ecaldqm::MESet::getBinContent().

114  {
115  return current_->getBinContent(edso, _id, _bin);
116  }
virtual double getBinContent(EcalDQMSetupObjects const, DetId const &, int=0) const
Definition: MESet.h:100
double ecaldqm::MESetMulti::getBinContent ( EcalDQMSetupObjects const  edso,
int  _dcctccid,
int  _bin = 0 
) const
inlineoverridevirtual

Reimplemented from ecaldqm::MESet.

Definition at line 117 of file MESetMulti.h.

References current_, and ecaldqm::MESet::getBinContent().

117  {
118  return current_->getBinContent(edso, _dcctccid, _bin);
119  }
virtual double getBinContent(EcalDQMSetupObjects const, DetId const &, int=0) const
Definition: MESet.h:100
double ecaldqm::MESetMulti::getBinEntries ( EcalDQMSetupObjects const  edso,
DetId const &  _id,
int  _bin = 0 
) const
inlineoverridevirtual

Reimplemented from ecaldqm::MESet.

Definition at line 131 of file MESetMulti.h.

References current_, and ecaldqm::MESet::getBinEntries().

Referenced by ecaldqm::LaserClient::producePlots(), ecaldqm::TestPulseClient::producePlots(), ecaldqm::PedestalClient::producePlots(), and ecaldqm::LedClient::producePlots().

131  {
132  return current_->getBinEntries(edso, _id, _bin);
133  }
virtual double getBinEntries(EcalDQMSetupObjects const, DetId const &, int=0) const
Definition: MESet.h:108
double ecaldqm::MESetMulti::getBinEntries ( EcalDQMSetupObjects const  edso,
EcalElectronicsId const &  _id,
int  _bin = 0 
) const
inlineoverridevirtual

Reimplemented from ecaldqm::MESet.

Definition at line 134 of file MESetMulti.h.

References current_, and ecaldqm::MESet::getBinEntries().

134  {
135  return current_->getBinEntries(edso, _id, _bin);
136  }
virtual double getBinEntries(EcalDQMSetupObjects const, DetId const &, int=0) const
Definition: MESet.h:108
double ecaldqm::MESetMulti::getBinEntries ( EcalDQMSetupObjects const  edso,
int  _dcctccid,
int  _bin = 0 
) const
inlineoverridevirtual

Reimplemented from ecaldqm::MESet.

Definition at line 137 of file MESetMulti.h.

References current_, and ecaldqm::MESet::getBinEntries().

137  {
138  return current_->getBinEntries(edso, _dcctccid, _bin);
139  }
virtual double getBinEntries(EcalDQMSetupObjects const, DetId const &, int=0) const
Definition: MESet.h:108
double ecaldqm::MESetMulti::getBinError ( EcalDQMSetupObjects const  edso,
DetId const &  _id,
int  _bin = 0 
) const
inlineoverridevirtual

Reimplemented from ecaldqm::MESet.

Definition at line 121 of file MESetMulti.h.

References current_, and ecaldqm::MESet::getBinError().

Referenced by ecaldqm::LaserClient::producePlots(), ecaldqm::TestPulseClient::producePlots(), ecaldqm::PedestalClient::producePlots(), and ecaldqm::LedClient::producePlots().

121  {
122  return current_->getBinError(edso, _id, _bin);
123  }
virtual double getBinError(EcalDQMSetupObjects const, DetId const &, int=0) const
Definition: MESet.h:104
double ecaldqm::MESetMulti::getBinError ( EcalDQMSetupObjects const  edso,
EcalElectronicsId const &  _id,
int  _bin = 0 
) const
inlineoverridevirtual

Reimplemented from ecaldqm::MESet.

Definition at line 124 of file MESetMulti.h.

References current_, and ecaldqm::MESet::getBinError().

124  {
125  return current_->getBinError(edso, _id, _bin);
126  }
virtual double getBinError(EcalDQMSetupObjects const, DetId const &, int=0) const
Definition: MESet.h:104
double ecaldqm::MESetMulti::getBinError ( EcalDQMSetupObjects const  edso,
int  _dcctccid,
int  _bin = 0 
) const
inlineoverridevirtual

Reimplemented from ecaldqm::MESet.

Definition at line 127 of file MESetMulti.h.

References current_, and ecaldqm::MESet::getBinError().

127  {
128  return current_->getBinError(edso, _dcctccid, _bin);
129  }
virtual double getBinError(EcalDQMSetupObjects const, DetId const &, int=0) const
Definition: MESet.h:104
MESet* ecaldqm::MESetMulti::getCurrent ( ) const
inline

Definition at line 158 of file MESetMulti.h.

References current_.

158 { return current_; }
unsigned ecaldqm::MESetMulti::getIndex ( PathReplacements const &  _replacements) const

Definition at line 142 of file MESetMulti.cc.

References newFWLiteAna::base, replCandidates_, and ecaldqm::MESet::throw_().

Referenced by ecaldqm::LaserWriter::LaserWriter(), ecaldqm::LedWriter::LedWriter(), ecaldqm::PedestalWriter::PedestalWriter(), ecaldqm::PedestalClient::setParams(), ecaldqm::TestPulseClient::setParams(), ecaldqm::LedClient::setParams(), ecaldqm::LaserClient::setParams(), ecaldqm::CalibrationSummaryClient::setParams(), ecaldqm::PedestalTask::setParams(), ecaldqm::TestPulseTask::setParams(), ecaldqm::LedTask::setParams(), ecaldqm::LaserTask::setParams(), ecaldqm::ClusterTask::setParams(), and ecaldqm::TestPulseWriter::TestPulseWriter().

142  {
143  unsigned index(0);
144  unsigned base(1);
145  for (typename ReplCandidates::const_reverse_iterator cItr(replCandidates_.rbegin()); cItr != replCandidates_.rend();
146  ++cItr) {
147  typename PathReplacements::const_iterator rItr(_replacements.find(cItr->first));
148  if (rItr == _replacements.end())
149  throw_(cItr->first + " not given in the key for getIndex");
150  unsigned nC(cItr->second.size());
151  unsigned iR(0);
152  for (; iR != nC; ++iR)
153  if (rItr->second == cItr->second[iR])
154  break;
155  if (iR == nC)
156  throw_(rItr->second + " not found in replacement candidates");
157  index += iR * base;
158  base *= nC;
159  }
160 
161  return index;
162  }
tuple base
Main Program
Definition: newFWLiteAna.py:92
void throw_(std::string const &_message) const
Definition: MESet.h:149
ReplCandidates replCandidates_
Definition: MESetMulti.h:184
MonitorElement const* ecaldqm::MESetMulti::getME ( unsigned  _iME) const
inlineoverridevirtual

Reimplemented from ecaldqm::MESet.

Definition at line 154 of file MESetMulti.h.

References current_, and ecaldqm::MESet::getME().

154 { return current_->getME(_iME); }
virtual MonitorElement const * getME(unsigned _iME) const
Definition: MESet.h:126
MonitorElement* ecaldqm::MESetMulti::getME ( unsigned  _iME)
inlineoverridevirtual

Reimplemented from ecaldqm::MESet.

Definition at line 155 of file MESetMulti.h.

References current_, and ecaldqm::MESet::getME().

155 { return current_->getME(_iME); }
virtual MonitorElement const * getME(unsigned _iME) const
Definition: MESet.h:126
unsigned ecaldqm::MESetMulti::getMultiplicity ( ) const
inline

Definition at line 159 of file MESetMulti.h.

References sets_.

Referenced by ecaldqm::DQWorkerClient::resetMEs().

159 { return sets_.size(); }
std::vector< MESet * > sets_
Definition: MESetMulti.h:183
std::string const& ecaldqm::MESetMulti::getPath ( ) const
inlineoverridevirtual

Reimplemented from ecaldqm::MESet.

Definition at line 153 of file MESetMulti.h.

References current_, and ecaldqm::MESet::getPath().

153 { return current_->getPath(); }
virtual std::string const & getPath() const
Definition: MESet.h:120
bool ecaldqm::MESetMulti::isVariableBinning ( ) const
inlineoverridevirtual

Reimplemented from ecaldqm::MESet.

Definition at line 151 of file MESetMulti.h.

References current_, and ecaldqm::MESet::isVariableBinning().

151 { return current_->isVariableBinning(); }
virtual bool isVariableBinning() const
Definition: MESet.h:125
bool ecaldqm::MESetMulti::maskMatches ( DetId const &  _id,
uint32_t  _mask,
StatusManager const *  _statusManager,
EcalTrigTowerConstituentsMap const *  trigTowerMap 
) const
inlineoverridevirtual

Reimplemented from ecaldqm::MESet.

Definition at line 144 of file MESetMulti.h.

References current_, and ecaldqm::MESet::maskMatches().

Referenced by ecaldqm::LaserClient::producePlots(), ecaldqm::TestPulseClient::producePlots(), ecaldqm::PedestalClient::producePlots(), and ecaldqm::LedClient::producePlots().

147  {
148  return current_ && current_->maskMatches(_id, _mask, _statusManager, trigTowerMap);
149  }
virtual bool maskMatches(DetId const &, uint32_t, StatusManager const *, EcalTrigTowerConstituentsMap const *) const
Definition: MESet.cc:170
MESet & ecaldqm::MESetMulti::operator= ( MESet const &  _rhs)
overridevirtual

Reimplemented from ecaldqm::MESet.

Definition at line 66 of file MESetMulti.cc.

References current_, ecaldqm::MESet::operator=(), replCandidates_, and sets_.

66  {
67  for (unsigned iS(0); iS < sets_.size(); ++iS)
68  delete sets_[iS];
69  sets_.clear();
70  current_ = nullptr;
71 
72  MESetMulti const *pRhs(dynamic_cast<MESetMulti const *>(&_rhs));
73  if (pRhs) {
74  sets_.assign(pRhs->sets_.size(), nullptr);
75 
76  for (unsigned iS(0); iS < pRhs->sets_.size(); ++iS) {
77  sets_[iS] = pRhs->sets_[iS]->clone();
78  if (pRhs->sets_[iS] == pRhs->current_)
79  current_ = sets_[iS];
80  }
81 
82  replCandidates_ = pRhs->replCandidates_;
83  }
84 
85  return MESet::operator=(_rhs);
86  }
std::vector< MESet * > sets_
Definition: MESetMulti.h:183
MESetMulti(MESet const &, ReplCandidates const &)
Definition: MESetMulti.cc:4
virtual MESet & operator=(MESet const &)
Definition: MESet.cc:64
ReplCandidates replCandidates_
Definition: MESetMulti.h:184
void ecaldqm::MESetMulti::reset ( EcalElectronicsMapping const *  electronicsMap,
double  _content = 0.,
double  _error = 0.,
double  _entries = 0. 
)
overridevirtual

Reimplemented from ecaldqm::MESet.

Definition at line 122 of file MESetMulti.cc.

References sets_.

Referenced by ecaldqm::DQWorkerClient::resetMEs().

125  {
126  for (unsigned iS(0); iS < sets_.size(); ++iS)
127  sets_[iS]->reset(electronicsMap, _content, _error, _entries);
128  }
std::vector< MESet * > sets_
Definition: MESetMulti.h:183
void reset(EcalElectronicsMapping const *, double=0., double=0., double=0.) override
Definition: MESetMulti.cc:122
void ecaldqm::MESetMulti::resetAll ( double  _content = 0.,
double  _error = 0.,
double  _entries = 0. 
)
overridevirtual

Reimplemented from ecaldqm::MESet.

Definition at line 130 of file MESetMulti.cc.

References sets_.

Referenced by ecaldqm::DQWorkerClient::resetMEs().

130  {
131  for (unsigned iS(0); iS < sets_.size(); ++iS)
132  sets_[iS]->resetAll(_content, _error, _entries);
133  }
void resetAll(double=0., double=0., double=0.) override
Definition: MESetMulti.cc:130
std::vector< MESet * > sets_
Definition: MESetMulti.h:183
bool ecaldqm::MESetMulti::retrieve ( EcalElectronicsMapping const *  electronicsMap,
DQMStore::IGetter _igetter,
std::string *  _failedPath = nullptr 
) const
overridevirtual

Reimplemented from ecaldqm::MESet.

Definition at line 104 of file MESetMulti.cc.

References ecaldqm::MESet::active_, and sets_.

106  {
107  for (unsigned iS(0); iS < sets_.size(); ++iS)
108  if (!sets_[iS]->retrieve(electronicsMap, _igetter, _failedPath))
109  return false;
110 
111  active_ = true;
112  return true;
113  }
bool retrieve(EcalElectronicsMapping const *, DQMStore::IGetter &, std::string *=nullptr) const override
Definition: MESetMulti.cc:104
std::vector< MESet * > sets_
Definition: MESetMulti.h:183
bool active_
Definition: MESet.h:161
void ecaldqm::MESetMulti::setBinContent ( EcalDQMSetupObjects const  edso,
DetId const &  _id,
double  _content 
)
inlineoverridevirtual

Reimplemented from ecaldqm::MESet.

Definition at line 48 of file MESetMulti.h.

References current_, and ecaldqm::MESet::setBinContent().

Referenced by ecaldqm::LaserClient::producePlots(), ecaldqm::TestPulseClient::producePlots(), ecaldqm::PedestalClient::producePlots(), and ecaldqm::LedClient::producePlots().

48  {
49  current_->setBinContent(edso, _id, _content);
50  }
virtual void setBinContent(EcalDQMSetupObjects const, DetId const &, double)
Definition: MESet.h:79
void ecaldqm::MESetMulti::setBinContent ( EcalDQMSetupObjects const  edso,
EcalElectronicsId const &  _id,
double  _content 
)
inlineoverridevirtual

Reimplemented from ecaldqm::MESet.

Definition at line 51 of file MESetMulti.h.

References current_, and ecaldqm::MESet::setBinContent().

51  {
52  current_->setBinContent(edso, _id, _content);
53  }
virtual void setBinContent(EcalDQMSetupObjects const, DetId const &, double)
Definition: MESet.h:79
void ecaldqm::MESetMulti::setBinContent ( EcalDQMSetupObjects const  edso,
int  _dcctccid,
double  _content 
)
inlineoverridevirtual

Reimplemented from ecaldqm::MESet.

Definition at line 54 of file MESetMulti.h.

References current_, and ecaldqm::MESet::setBinContent().

54  {
55  current_->setBinContent(edso, _dcctccid, _content);
56  }
virtual void setBinContent(EcalDQMSetupObjects const, DetId const &, double)
Definition: MESet.h:79
void ecaldqm::MESetMulti::setBinContent ( EcalDQMSetupObjects const  edso,
DetId const &  _id,
int  _bin,
double  _content 
)
inlineoverridevirtual

Reimplemented from ecaldqm::MESet.

Definition at line 57 of file MESetMulti.h.

References current_, and ecaldqm::MESet::setBinContent().

57  {
58  current_->setBinContent(edso, _id, _bin, _content);
59  }
virtual void setBinContent(EcalDQMSetupObjects const, DetId const &, double)
Definition: MESet.h:79
void ecaldqm::MESetMulti::setBinContent ( EcalDQMSetupObjects const  edso,
EcalElectronicsId const &  _id,
int  _bin,
double  _content 
)
inlineoverridevirtual

Reimplemented from ecaldqm::MESet.

Definition at line 60 of file MESetMulti.h.

References current_, and ecaldqm::MESet::setBinContent().

63  {
64  current_->setBinContent(edso, _id, _bin, _content);
65  }
virtual void setBinContent(EcalDQMSetupObjects const, DetId const &, double)
Definition: MESet.h:79
void ecaldqm::MESetMulti::setBinContent ( EcalDQMSetupObjects const  edso,
int  _dcctccid,
int  _bin,
double  _content 
)
inlineoverridevirtual

Reimplemented from ecaldqm::MESet.

Definition at line 66 of file MESetMulti.h.

References current_, and ecaldqm::MESet::setBinContent().

66  {
67  current_->setBinContent(edso, _dcctccid, _bin, _content);
68  }
virtual void setBinContent(EcalDQMSetupObjects const, DetId const &, double)
Definition: MESet.h:79
void ecaldqm::MESetMulti::setBinEntries ( EcalDQMSetupObjects const  edso,
DetId const &  _id,
double  _entries 
)
inlineoverridevirtual

Reimplemented from ecaldqm::MESet.

Definition at line 89 of file MESetMulti.h.

References current_, and ecaldqm::MESet::setBinEntries().

89  {
90  current_->setBinEntries(edso, _id, _entries);
91  }
virtual void setBinEntries(EcalDQMSetupObjects const, DetId const &, double)
Definition: MESet.h:93
void ecaldqm::MESetMulti::setBinEntries ( EcalDQMSetupObjects const  edso,
EcalElectronicsId const &  _id,
double  _entries 
)
inlineoverridevirtual

Reimplemented from ecaldqm::MESet.

Definition at line 92 of file MESetMulti.h.

References current_, and ecaldqm::MESet::setBinEntries().

92  {
93  current_->setBinEntries(edso, _id, _entries);
94  }
virtual void setBinEntries(EcalDQMSetupObjects const, DetId const &, double)
Definition: MESet.h:93
void ecaldqm::MESetMulti::setBinEntries ( EcalDQMSetupObjects const  edso,
int  _dcctccid,
double  _entries 
)
inlineoverridevirtual

Reimplemented from ecaldqm::MESet.

Definition at line 95 of file MESetMulti.h.

References current_, and ecaldqm::MESet::setBinEntries().

95  {
96  current_->setBinEntries(edso, _dcctccid, _entries);
97  }
virtual void setBinEntries(EcalDQMSetupObjects const, DetId const &, double)
Definition: MESet.h:93
void ecaldqm::MESetMulti::setBinEntries ( EcalDQMSetupObjects const  edso,
DetId const &  _id,
int  _bin,
double  _entries 
)
inlineoverridevirtual

Reimplemented from ecaldqm::MESet.

Definition at line 98 of file MESetMulti.h.

References current_, and ecaldqm::MESet::setBinEntries().

98  {
99  current_->setBinEntries(edso, _id, _bin, _entries);
100  }
virtual void setBinEntries(EcalDQMSetupObjects const, DetId const &, double)
Definition: MESet.h:93
void ecaldqm::MESetMulti::setBinEntries ( EcalDQMSetupObjects const  edso,
EcalElectronicsId const &  _id,
int  _bin,
double  _entries 
)
inlineoverridevirtual

Reimplemented from ecaldqm::MESet.

Definition at line 101 of file MESetMulti.h.

References current_, and ecaldqm::MESet::setBinEntries().

104  {
105  current_->setBinEntries(edso, _id, _bin, _entries);
106  }
virtual void setBinEntries(EcalDQMSetupObjects const, DetId const &, double)
Definition: MESet.h:93
void ecaldqm::MESetMulti::setBinEntries ( EcalDQMSetupObjects const  edso,
int  _dcctccid,
int  _bin,
double  _entries 
)
inlineoverridevirtual

Reimplemented from ecaldqm::MESet.

Definition at line 107 of file MESetMulti.h.

References current_, and ecaldqm::MESet::setBinEntries().

107  {
108  current_->setBinEntries(edso, _dcctccid, _bin, _entries);
109  }
virtual void setBinEntries(EcalDQMSetupObjects const, DetId const &, double)
Definition: MESet.h:93
void ecaldqm::MESetMulti::setBinError ( EcalDQMSetupObjects const  edso,
DetId const &  _id,
double  _error 
)
inlineoverridevirtual

Reimplemented from ecaldqm::MESet.

Definition at line 70 of file MESetMulti.h.

References current_, and ecaldqm::MESet::setBinError().

70  {
71  current_->setBinError(edso, _id, _error);
72  }
virtual void setBinError(EcalDQMSetupObjects const, DetId const &, double)
Definition: MESet.h:86
void ecaldqm::MESetMulti::setBinError ( EcalDQMSetupObjects const  edso,
EcalElectronicsId const &  _id,
double  _error 
)
inlineoverridevirtual

Reimplemented from ecaldqm::MESet.

Definition at line 73 of file MESetMulti.h.

References current_, and ecaldqm::MESet::setBinError().

73  {
74  current_->setBinError(edso, _id, _error);
75  }
virtual void setBinError(EcalDQMSetupObjects const, DetId const &, double)
Definition: MESet.h:86
void ecaldqm::MESetMulti::setBinError ( EcalDQMSetupObjects const  edso,
int  _dcctccid,
double  _error 
)
inlineoverridevirtual

Reimplemented from ecaldqm::MESet.

Definition at line 76 of file MESetMulti.h.

References current_, and ecaldqm::MESet::setBinError().

76  {
77  current_->setBinError(edso, _dcctccid, _error);
78  }
virtual void setBinError(EcalDQMSetupObjects const, DetId const &, double)
Definition: MESet.h:86
void ecaldqm::MESetMulti::setBinError ( EcalDQMSetupObjects const  edso,
DetId const &  _id,
int  _bin,
double  _error 
)
inlineoverridevirtual

Reimplemented from ecaldqm::MESet.

Definition at line 79 of file MESetMulti.h.

References current_, and ecaldqm::MESet::setBinError().

79  {
80  current_->setBinError(edso, _id, _bin, _error);
81  }
virtual void setBinError(EcalDQMSetupObjects const, DetId const &, double)
Definition: MESet.h:86
void ecaldqm::MESetMulti::setBinError ( EcalDQMSetupObjects const  edso,
EcalElectronicsId const &  _id,
int  _bin,
double  _error 
)
inlineoverridevirtual

Reimplemented from ecaldqm::MESet.

Definition at line 82 of file MESetMulti.h.

References current_, and ecaldqm::MESet::setBinError().

82  {
83  current_->setBinError(edso, _id, _bin, _error);
84  }
virtual void setBinError(EcalDQMSetupObjects const, DetId const &, double)
Definition: MESet.h:86
void ecaldqm::MESetMulti::setBinError ( EcalDQMSetupObjects const  edso,
int  _dcctccid,
int  _bin,
double  _error 
)
inlineoverridevirtual

Reimplemented from ecaldqm::MESet.

Definition at line 85 of file MESetMulti.h.

References current_, and ecaldqm::MESet::setBinError().

85  {
86  current_->setBinError(edso, _dcctccid, _bin, _error);
87  }
virtual void setBinError(EcalDQMSetupObjects const, DetId const &, double)
Definition: MESet.h:86
void ecaldqm::MESetMulti::use ( unsigned  _iSet) const

Definition at line 135 of file MESetMulti.cc.

References current_, sets_, and ecaldqm::MESet::throw_().

Referenced by ecaldqm::LaserClient::producePlots(), ecaldqm::LedClient::producePlots(), ecaldqm::PedestalClient::producePlots(), ecaldqm::TestPulseClient::producePlots(), ecaldqm::CalibrationSummaryClient::producePlots(), and ecaldqm::DQWorkerClient::resetMEs().

135  {
136  if (_iSet >= sets_.size())
137  throw_("MESetMulti index out of range");
138 
139  current_ = sets_[_iSet];
140  }
void throw_(std::string const &_message) const
Definition: MESet.h:149
std::vector< MESet * > sets_
Definition: MESetMulti.h:183

Member Data Documentation

MESet* ecaldqm::MESetMulti::current_
mutableprotected
ReplCandidates ecaldqm::MESetMulti::replCandidates_
protected

Definition at line 184 of file MESetMulti.h.

Referenced by getIndex(), MESetMulti(), and operator=().

std::vector<MESet *> ecaldqm::MESetMulti::sets_
protected