CMS 3D CMS Logo

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

#include <LaserClient.h>

Inheritance diagram for ecaldqm::LaserClient:
ecaldqm::DQWorkerClient ecaldqm::DQWorker

Public Types

enum  Constants { nWL = LaserTask::nWL, nPNGain = LaserTask::nPNGain }
 
enum  MESets {
  kQuality, kAmplitudeMean = kQuality + nWL, kAmplitudeRMS = kAmplitudeMean + nWL, kTimingMean = kAmplitudeRMS + nWL,
  kTimingRMS = kTimingMean + nWL, kPNAmplitudeMean = kTimingRMS + nWL, kPNAmplitudeRMS = kPNAmplitudeMean + nWL * nPNGain, kQualitySummary = kPNAmplitudeRMS + nWL * nPNGain,
  kPNQualitySummary = kQualitySummary + nWL, nMESets = kPNQualitySummary + nWL
}
 
enum  Sources { sAmplitude, sTiming = sAmplitude + nWL, sPNAmplitude = sTiming + nWL, nSources = sPNAmplitude + nWL * nPNGain }
 
- Public Types inherited from ecaldqm::DQWorkerClient
enum  Sources { nSources }
 
- Public Types inherited from ecaldqm::DQWorker
enum  MESets { nMESets }
 

Public Member Functions

void beginRun (const edm::Run &, const edm::EventSetup &) override
 
void bookMEs () override
 
void initialize () override
 
 LaserClient (const edm::ParameterSet &, const edm::ParameterSet &)
 
void producePlots () override
 
 ~LaserClient ()
 
- Public Member Functions inherited from ecaldqm::DQWorkerClient
 DQWorkerClient (const edm::ParameterSet &, const edm::ParameterSet &, std::string const &)
 
virtual void endLuminosityBlock (const edm::LuminosityBlock &, const edm::EventSetup &)
 
void reset ()
 
virtual ~DQWorkerClient ()
 
- Public Member Functions inherited from ecaldqm::DQWorker
virtual void beginLuminosityBlock (const edm::LuminosityBlock &, const edm::EventSetup &)
 
 DQWorker (const edm::ParameterSet &, const edm::ParameterSet &, std::string const &)
 
virtual void endRun (const edm::Run &, const edm::EventSetup &)
 
const std::vector< MESet * > & getMEs ()
 
virtual std::string const & getName ()
 
virtual bool isInitialized ()
 
virtual void setInitialized (bool _init)
 
virtual void setVerbosity (int _verbosity)
 
virtual ~DQWorker ()
 

Static Public Member Functions

static void setMEData (std::vector< MEData > &)
 
- Static Public Member Functions inherited from ecaldqm::DQWorker
static void setMEData (std::vector< MEData > &)
 

Protected Attributes

std::map< std::pair< unsigned,
int >, float > 
ampCorrections_
 
std::vector< double > amplitudeRMSThreshold_
 
std::vector< double > amplitudeThreshold_
 
std::vector< double > expectedAmplitude_
 
std::vector< double > expectedPNAmplitude_
 
std::vector< double > expectedTiming_
 
std::vector< int > laserWavelengths_
 
std::vector< int > MGPAGainsPN_
 
int minChannelEntries_
 
std::vector< double > pnAmplitudeRMSThreshold_
 
std::vector< double > pnAmplitudeThreshold_
 
std::vector< double > timingRMSThreshold_
 
std::vector< double > timingThreshold_
 
float towerThreshold_
 
- Protected Attributes inherited from ecaldqm::DQWorkerClient
std::vector< MESet const * > sources_
 
- Protected Attributes inherited from ecaldqm::DQWorker
bool initialized_
 
std::vector< MESet * > MEs_
 
std::string name_
 
int verbosity_
 

Additional Inherited Members

- Static Public Attributes inherited from ecaldqm::DQWorkerClient
static EcalDQMChannelStatus const * channelStatus
 
static EcalDQMTowerStatus const * towerStatus
 
- Static Public Attributes inherited from ecaldqm::DQWorker
static std::map< std::string,
std::vector< MEData > > 
meData
 
- Protected Member Functions inherited from ecaldqm::DQWorkerClient
void fillQuality_ (unsigned, DetId const &, uint32_t, float)
 
void source_ (unsigned, std::string const &, unsigned, edm::ParameterSet const &)
 
- Protected Member Functions inherited from ecaldqm::DQWorker
MESetcreateMESet_ (std::string const &, MEData const &, bool _readOnly=false) const
 
void meSet_ (unsigned, edm::ParameterSet const &)
 

Detailed Description

Definition at line 10 of file LaserClient.h.

Member Enumeration Documentation

Enumerator
kQuality 
kAmplitudeMean 
kAmplitudeRMS 
kTimingMean 
kTimingRMS 
kPNAmplitudeMean 
kPNAmplitudeRMS 
kQualitySummary 
kPNQualitySummary 
nMESets 

Definition at line 28 of file LaserClient.h.

Enumerator
sAmplitude 
sTiming 
sPNAmplitude 
nSources 

Definition at line 43 of file LaserClient.h.

Constructor & Destructor Documentation

ecaldqm::LaserClient::LaserClient ( const edm::ParameterSet _params,
const edm::ParameterSet _paths 
)

Definition at line 11 of file LaserClient.cc.

References amplitudeRMSThreshold_, amplitudeThreshold_, edm::hlt::Exception, expectedAmplitude_, expectedPNAmplitude_, expectedTiming_, edm::ParameterSet::getUntrackedParameterSet(), ecaldqm::LaserTask::kAmplitude, kAmplitudeMean, kAmplitudeRMS, ecaldqm::LaserTask::kPNAmplitude, kPNAmplitudeMean, kPNAmplitudeRMS, kPNQualitySummary, kQuality, kQualitySummary, ecaldqm::LaserTask::kTiming, kTimingMean, kTimingRMS, laserWavelengths_, ecaldqm::DQWorker::MEs_, MGPAGainsPN_, minChannelEntries_, ecaldqm::DQWorker::name_, nPNGain, nWL, evf::evtn::offset(), pnAmplitudeRMSThreshold_, pnAmplitudeThreshold_, sAmplitude, ecaldqm::DQWorkerClient::source_(), ecaldqm::DQWorkerClient::sources_, sPNAmplitude, sTiming, timingRMSThreshold_, timingThreshold_, and towerThreshold_.

11  :
12  DQWorkerClient(_params, _paths, "LaserClient"),
14  MGPAGainsPN_(),
26  {
27  using namespace std;
28 
29  edm::ParameterSet const& commonParams(_params.getUntrackedParameterSet("Common"));
30  MGPAGainsPN_ = commonParams.getUntrackedParameter<vector<int> >("MGPAGainsPN");
31 
32  edm::ParameterSet const& taskParams(_params.getUntrackedParameterSet(name_));
33  laserWavelengths_ = taskParams.getUntrackedParameter<vector<int> >("laserWavelengths");
34  minChannelEntries_ = taskParams.getUntrackedParameter<int>("minChannelEntries");
35  expectedAmplitude_ = taskParams.getUntrackedParameter<vector<double> >("expectedAmplitude");
36  amplitudeThreshold_ = taskParams.getUntrackedParameter<vector<double> >("amplitudeThreshold");
37  amplitudeRMSThreshold_ = taskParams.getUntrackedParameter<vector<double> >("amplitudeRMSThreshold");
38  expectedTiming_ = taskParams.getUntrackedParameter<vector<double> >("expectedTiming");
39  timingThreshold_ = taskParams.getUntrackedParameter<vector<double> >("timingThreshold");
40  timingRMSThreshold_ = taskParams.getUntrackedParameter<vector<double> >("timingRMSThreshold");
41  expectedPNAmplitude_ = taskParams.getUntrackedParameter<vector<double> >("expectedPNAmplitude");
42  pnAmplitudeThreshold_ = taskParams.getUntrackedParameter<vector<double> >("pnAmplitudeThreshold");
43  pnAmplitudeRMSThreshold_ = taskParams.getUntrackedParameter<vector<double> >("pnAmplitudeRMSThreshold");
44  towerThreshold_ = taskParams.getUntrackedParameter<double>("towerThreshold");
45 
46  for(vector<int>::iterator wlItr(laserWavelengths_.begin()); wlItr != laserWavelengths_.end(); ++wlItr)
47  if(*wlItr <= 0 || *wlItr >= 5) throw cms::Exception("InvalidConfiguration") << "Laser Wavelength" << endl;
48 
49  for(vector<int>::iterator gainItr(MGPAGainsPN_.begin()); gainItr != MGPAGainsPN_.end(); ++gainItr)
50  if(*gainItr != 1 && *gainItr != 16) throw cms::Exception("InvalidConfiguration") << "PN diode gain" << endl;
51 
52  if(expectedAmplitude_.size() != nWL ||
53  amplitudeThreshold_.size() != nWL ||
54  amplitudeRMSThreshold_.size() != nWL ||
55  expectedTiming_.size() != nWL ||
56  timingThreshold_.size() != nWL ||
57  timingRMSThreshold_.size() != nWL ||
58  expectedPNAmplitude_.size() != nWL * nPNGain ||
59  pnAmplitudeThreshold_.size() != nWL * nPNGain ||
61  throw cms::Exception("InvalidConfiguration") << "Size of quality cut parameter vectors" << endl;
62 
63  map<string, string> replacements;
64  stringstream ss;
65 
66  edm::ParameterSet const& sources(_params.getUntrackedParameterSet("sources"));
67  for(vector<int>::iterator wlItr(laserWavelengths_.begin()); wlItr != laserWavelengths_.end(); ++wlItr){
68  ss.str("");
69  ss << *wlItr;
70  replacements["wl"] = ss.str();
71 
72  unsigned offset(*wlItr - 1);
73  source_(sAmplitude + offset, "LaserTask", LaserTask::kAmplitude + offset, sources);
74  source_(sTiming + offset, "LaserTask", LaserTask::kTiming + offset, sources);
75 
76  sources_[sAmplitude + offset]->name(replacements);
77  sources_[sTiming + offset]->name(replacements);
78 
79  for(vector<int>::iterator gainItr(MGPAGainsPN_.begin()); gainItr != MGPAGainsPN_.end(); ++gainItr){
80  ss.str("");
81  ss << *gainItr;
82  replacements["pngain"] = ss.str();
83 
84  offset = (*wlItr - 1) * nPNGain + (*gainItr == 1 ? 0 : 1);
85  source_(sPNAmplitude + offset, "LaserTask", LaserTask::kPNAmplitude, sources);
86 
87  sources_[sPNAmplitude + offset]->name(replacements);
88  }
89  }
90 
92 
93  for(vector<int>::iterator wlItr(laserWavelengths_.begin()); wlItr != laserWavelengths_.end(); ++wlItr){
94  ss.str("");
95  ss << *wlItr;
96  replacements["wl"] = ss.str();
97 
98  unsigned offset(*wlItr - 1);
99 
100  MEs_[kQuality + offset]->name(replacements);
101  MEs_[kQualitySummary + offset]->name(replacements);
102  MEs_[kAmplitudeMean + offset]->name(replacements);
103  MEs_[kAmplitudeRMS + offset]->name(replacements);
104  MEs_[kTimingMean + offset]->name(replacements);
105  MEs_[kTimingRMS + offset]->name(replacements);
106  MEs_[kPNQualitySummary + offset]->name(replacements);
107 
108  for(vector<int>::iterator gainItr(MGPAGainsPN_.begin()); gainItr != MGPAGainsPN_.end(); ++gainItr){
109  ss.str("");
110  ss << *gainItr;
111  replacements["pngain"] = ss.str();
112 
113  offset = (*wlItr - 1) * nPNGain + (*gainItr == 1 ? 0 : 1);
114 
115  MEs_[kPNAmplitudeMean + offset]->name(replacements);
116  MEs_[kPNAmplitudeRMS + offset]->name(replacements);
117  }
118  }
119  }
std::vector< int > laserWavelengths_
Definition: LaserClient.h:51
std::vector< double > expectedAmplitude_
Definition: LaserClient.h:55
ParameterSet getUntrackedParameterSet(std::string const &name, ParameterSet const &defaultValue) const
void source_(unsigned, std::string const &, unsigned, edm::ParameterSet const &)
std::vector< double > timingThreshold_
Definition: LaserClient.h:59
std::vector< double > expectedTiming_
Definition: LaserClient.h:58
DQWorkerClient(const edm::ParameterSet &, const edm::ParameterSet &, std::string const &)
unsigned int offset(bool)
std::vector< MESet * > MEs_
Definition: DQWorker.h:56
std::vector< double > pnAmplitudeThreshold_
Definition: LaserClient.h:62
std::vector< double > expectedPNAmplitude_
Definition: LaserClient.h:61
std::vector< double > amplitudeThreshold_
Definition: LaserClient.h:56
std::vector< MESet const * > sources_
std::vector< double > amplitudeRMSThreshold_
Definition: LaserClient.h:57
std::vector< double > timingRMSThreshold_
Definition: LaserClient.h:60
std::vector< int > MGPAGainsPN_
Definition: LaserClient.h:52
std::string name_
Definition: DQWorker.h:55
std::vector< double > pnAmplitudeRMSThreshold_
Definition: LaserClient.h:63
ecaldqm::LaserClient::~LaserClient ( )
inline

Definition at line 13 of file LaserClient.h.

13 {}

Member Function Documentation

void ecaldqm::LaserClient::beginRun ( const edm::Run ,
const edm::EventSetup  
)
overridevirtual

Reimplemented from ecaldqm::DQWorker.

Definition at line 164 of file LaserClient.cc.

References kPNQualitySummary, kQuality, kQualitySummary, laserWavelengths_, ecaldqm::DQWorker::MEs_, MGPAGainsPN_, nPNGain, and evf::evtn::offset().

165  {
166  for(std::vector<int>::iterator wlItr(laserWavelengths_.begin()); wlItr != laserWavelengths_.end(); ++wlItr){
167  unsigned offset(*wlItr - 1);
168  MEs_[kQuality + offset]->resetAll(-1.);
169  MEs_[kQualitySummary + offset]->resetAll(-1.);
170 
171  for(std::vector<int>::iterator gainItr(MGPAGainsPN_.begin()); gainItr != MGPAGainsPN_.end(); ++gainItr){
172  offset = (*wlItr - 1) * nPNGain + (*gainItr == 1 ? 0 : 1);
173  MEs_[kPNQualitySummary + offset]->resetAll(-1.);
174  }
175  }
176  }
std::vector< int > laserWavelengths_
Definition: LaserClient.h:51
unsigned int offset(bool)
std::vector< MESet * > MEs_
Definition: DQWorker.h:56
std::vector< int > MGPAGainsPN_
Definition: LaserClient.h:52
void ecaldqm::LaserClient::bookMEs ( )
overridevirtual

Reimplemented from ecaldqm::DQWorker.

Definition at line 141 of file LaserClient.cc.

References kAmplitudeMean, kAmplitudeRMS, kPNAmplitudeMean, kPNAmplitudeRMS, kPNQualitySummary, kQuality, kQualitySummary, kTimingMean, kTimingRMS, laserWavelengths_, ecaldqm::DQWorker::MEs_, MGPAGainsPN_, nPNGain, and evf::evtn::offset().

142  {
143  for(std::vector<int>::iterator wlItr(laserWavelengths_.begin()); wlItr != laserWavelengths_.end(); ++wlItr){
144  unsigned offset(*wlItr - 1);
145 
146  MEs_[kQuality + offset]->book();
147  MEs_[kQualitySummary + offset]->book();
148  MEs_[kAmplitudeMean + offset]->book();
149  MEs_[kAmplitudeRMS + offset]->book();
150  MEs_[kTimingMean + offset]->book();
151  MEs_[kTimingRMS + offset]->book();
152  MEs_[kPNQualitySummary + offset]->book();
153 
154  for(std::vector<int>::iterator gainItr(MGPAGainsPN_.begin()); gainItr != MGPAGainsPN_.end(); ++gainItr){
155  offset = (*wlItr - 1) * nPNGain + (*gainItr == 1 ? 0 : 1);
156 
157  MEs_[kPNAmplitudeMean + offset]->book();
158  MEs_[kPNAmplitudeRMS + offset]->book();
159  }
160  }
161  }
std::vector< int > laserWavelengths_
Definition: LaserClient.h:51
unsigned int offset(bool)
std::vector< MESet * > MEs_
Definition: DQWorker.h:56
std::vector< int > MGPAGainsPN_
Definition: LaserClient.h:52
void ecaldqm::LaserClient::initialize ( )
overridevirtual

Reimplemented from ecaldqm::DQWorkerClient.

Definition at line 122 of file LaserClient.cc.

References ecaldqm::DQWorker::initialized_, laserWavelengths_, MGPAGainsPN_, nPNGain, evf::evtn::offset(), sAmplitude, ecaldqm::DQWorkerClient::sources_, sPNAmplitude, and sTiming.

123  {
124  initialized_ = true;
125 
126  for(std::vector<int>::iterator wlItr(laserWavelengths_.begin()); wlItr != laserWavelengths_.end(); ++wlItr){
127  unsigned offset(*wlItr - 1);
128 
129  initialized_ &= sources_[sAmplitude + offset]->retrieve();
130  initialized_ &= sources_[sTiming + offset]->retrieve();
131 
132  for(std::vector<int>::iterator gainItr(MGPAGainsPN_.begin()); gainItr != MGPAGainsPN_.end(); ++gainItr){
133  offset = (*wlItr - 1) * nPNGain + (*gainItr == 1 ? 0 : 1);
134 
135  initialized_ &= sources_[sPNAmplitude + offset]->retrieve();
136  }
137  }
138  }
std::vector< int > laserWavelengths_
Definition: LaserClient.h:51
unsigned int offset(bool)
std::vector< MESet const * > sources_
std::vector< int > MGPAGainsPN_
Definition: LaserClient.h:52
void ecaldqm::LaserClient::producePlots ( )
overridevirtual

Implements ecaldqm::DQWorkerClient.

Definition at line 179 of file LaserClient.cc.

References funct::abs(), amplitudeRMSThreshold_, amplitudeThreshold_, cond::ecalcond::bad(), EcalBarrel, EcalEndcap, expectedAmplitude_, expectedPNAmplitude_, expectedTiming_, ecaldqm::getElectronicsMap(), ecaldqm::getNSuperCrystals(), kAmplitudeMean, kAmplitudeRMS, kPNAmplitudeMean, kPNAmplitudeRMS, kPNQualitySummary, kQuality, kQualitySummary, kTimingMean, kTimingRMS, laserWavelengths_, ecaldqm::DQWorker::MEs_, MGPAGainsPN_, minChannelEntries_, nPNGain, evf::evtn::offset(), pnAmplitudeRMSThreshold_, pnAmplitudeThreshold_, sAmplitude, ecaldqm::DQWorkerClient::sources_, sPNAmplitude, mathSSE::sqrt(), sTiming, timingRMSThreshold_, timingThreshold_, and towerThreshold_.

180  {
181  using namespace std;
182 
183  for(vector<int>::iterator wlItr(laserWavelengths_.begin()); wlItr != laserWavelengths_.end(); ++wlItr){
184 
185  unsigned offset(*wlItr - 1);
186 
187  MEs_[kQuality + offset]->reset(2.);
188  MEs_[kQualitySummary + offset]->reset(2.);
189  MEs_[kPNQualitySummary + offset]->reset(2.);
190 
191  MEs_[kAmplitudeMean + offset]->reset();
192  MEs_[kAmplitudeRMS + offset]->reset();
193  MEs_[kTimingMean + offset]->reset();
194  MEs_[kTimingRMS + offset]->reset();
195 
196  for(vector<int>::iterator gainItr(MGPAGainsPN_.begin()); gainItr != MGPAGainsPN_.end(); ++gainItr){
197  unsigned suboffset((*wlItr - 1) * nPNGain + (*gainItr == 1 ? 0 : 1));
198 
199  MEs_[kPNAmplitudeMean + suboffset]->reset();
200  MEs_[kPNAmplitudeRMS + suboffset]->reset();
201  }
202 
203  for(unsigned dccid(1); dccid <= 54; dccid++){
204 
205  for(unsigned tower(1); tower <= getNSuperCrystals(dccid); tower++){
206  std::vector<DetId> ids(getElectronicsMap()->dccTowerConstituents(dccid, tower));
207 
208  if(ids.size() == 0) continue;
209 
210  float nBad(0.);
211 
212  for(std::vector<DetId>::iterator idItr(ids.begin()); idItr != ids.end(); ++idItr){
213  float aEntries(sources_[sAmplitude + offset]->getBinEntries(*idItr));
214 
215  if(aEntries < minChannelEntries_) continue;
216 
217  float aMean(sources_[sAmplitude + offset]->getBinContent(*idItr));
218  float aRms(sources_[sAmplitude + offset]->getBinError(*idItr) * std::sqrt(aEntries));
219 
220  MEs_[kAmplitudeMean + offset]->fill(*idItr, aMean);
221  MEs_[kAmplitudeRMS + offset]->fill(*idItr, aRms);
222 
223  float tEntries(sources_[sTiming + offset]->getBinEntries(*idItr));
224 
225  if(tEntries < minChannelEntries_) continue;
226 
227  float tMean(sources_[sTiming + offset]->getBinContent(*idItr));
228  float tRms(sources_[sTiming + offset]->getBinError(*idItr) * std::sqrt(tEntries));
229 
230  MEs_[kTimingMean + offset]->fill(*idItr, tMean);
231  MEs_[kTimingRMS + offset]->fill(*idItr, tRms);
232 
233  if(std::abs(aMean - expectedAmplitude_[offset]) > amplitudeThreshold_[offset] || aRms > amplitudeRMSThreshold_[offset] ||
234  std::abs(tMean - expectedTiming_[offset]) > timingThreshold_[offset] || tRms > timingRMSThreshold_[offset]){
235  MEs_[kQuality + offset]->setBinContent(*idItr, 0.);
236  nBad += 1.;
237  }
238  else
239  MEs_[kQuality + offset]->setBinContent(*idItr, 1.);
240  }
241 
242  if(nBad / ids.size() > towerThreshold_)
243  MEs_[kQualitySummary + offset]->setBinContent(ids[0], 0.);
244  else
245  MEs_[kQualitySummary + offset]->setBinContent(ids[0], 1.);
246  }
247 
248  unsigned subdet;
249  if(dccid <= 9 || dccid >= 46) subdet = EcalEndcap;
250  else subdet = EcalBarrel;
251 
252  for(unsigned pn(1); pn <= 10; pn++){
253  EcalPnDiodeDetId pnid(subdet, dccid, pn);
254 
255  bool bad(false);
256  for(vector<int>::iterator gainItr(MGPAGainsPN_.begin()); gainItr != MGPAGainsPN_.end(); ++gainItr){
257  unsigned suboffset((*wlItr - 1) * nPNGain + (*gainItr == 1 ? 0 : 1));
258 
259  float pEntries(sources_[sPNAmplitude + suboffset]->getBinEntries(pnid));
260 
261  if(pEntries < minChannelEntries_) continue;
262 
263  float pMean(sources_[sPNAmplitude + suboffset]->getBinContent(pnid));
264  float pRms(sources_[sPNAmplitude + suboffset]->getBinError(pnid) * std::sqrt(pEntries));
265 
266  MEs_[kPNAmplitudeMean + suboffset]->fill(pnid, pMean);
267  MEs_[kPNAmplitudeRMS + suboffset]->fill(pnid, pRms);
268 
269  if(std::abs(pMean - expectedPNAmplitude_[suboffset]) > pnAmplitudeThreshold_[suboffset] || pRms > pnAmplitudeRMSThreshold_[suboffset])
270  bad = true;
271  }
272 
273  if(bad)
274  MEs_[kPNQualitySummary + offset]->setBinContent(pnid, 0.);
275  else
276  MEs_[kPNQualitySummary + offset]->setBinContent(pnid, 1.);
277  }
278 
279  }
280  }
281  }
const EcalElectronicsMapping * getElectronicsMap()
std::vector< int > laserWavelengths_
Definition: LaserClient.h:51
std::vector< double > expectedAmplitude_
Definition: LaserClient.h:55
std::vector< double > timingThreshold_
Definition: LaserClient.h:59
int bad(Items const &cont)
std::vector< double > expectedTiming_
Definition: LaserClient.h:58
T sqrt(T t)
Definition: SSEVec.h:48
Abs< T >::type abs(const T &t)
Definition: Abs.h:22
unsigned int offset(bool)
std::vector< MESet * > MEs_
Definition: DQWorker.h:56
unsigned getNSuperCrystals(unsigned)
std::vector< double > pnAmplitudeThreshold_
Definition: LaserClient.h:62
std::vector< double > expectedPNAmplitude_
Definition: LaserClient.h:61
std::vector< double > amplitudeThreshold_
Definition: LaserClient.h:56
std::vector< MESet const * > sources_
std::vector< double > amplitudeRMSThreshold_
Definition: LaserClient.h:57
std::vector< double > timingRMSThreshold_
Definition: LaserClient.h:60
std::vector< int > MGPAGainsPN_
Definition: LaserClient.h:52
std::vector< double > pnAmplitudeRMSThreshold_
Definition: LaserClient.h:63
void ecaldqm::LaserClient::setMEData ( std::vector< MEData > &  _data)
static

Definition at line 285 of file LaserClient.cc.

References MonitorElement::DQM_KIND_TH1F, MonitorElement::DQM_KIND_TH2F, EcalDQMBinningService::AxisSpecs::high, kAmplitudeMean, kAmplitudeRMS, EcalDQMBinningService::kCrystal, EcalDQMBinningService::kEcal2P, EcalDQMBinningService::kEcalMEM2P, kPNAmplitudeMean, kPNAmplitudeRMS, kPNQualitySummary, kQuality, kQualitySummary, EcalDQMBinningService::kSM, EcalDQMBinningService::kSMMEM, EcalDQMBinningService::kSuperCrystal, kTimingMean, kTimingRMS, EcalDQMBinningService::kUser, EcalDQMBinningService::AxisSpecs::low, EcalDQMBinningService::AxisSpecs::nbins, nPNGain, nWL, and evf::evtn::offset().

286  {
288 
289  for(unsigned iWL(0); iWL < nWL; iWL++){
291 
292  axis.nbins = 100;
293  axis.low = 0.;
294  axis.high = 4096.;
295  _data[kAmplitudeMean + iWL] = MEData("AmplitudeMean", BinService::kSM, BinService::kUser, MonitorElement::DQM_KIND_TH1F, &axis);
296 
297  axis.low = 0.;
298  axis.high = 400.;
299  _data[kAmplitudeRMS + iWL] = MEData("AmplitudeRMS", BinService::kSM, BinService::kUser, MonitorElement::DQM_KIND_TH1F, &axis);
300 
301  axis.low = 3.5;
302  axis.high = 5.5;
303  _data[kTimingMean + iWL] = MEData("TimingMean", BinService::kSM, BinService::kUser, MonitorElement::DQM_KIND_TH1F, &axis);
304 
305  axis.low = 0.;
306  axis.high = 0.5;
307  _data[kTimingRMS + iWL] = MEData("TimingRMS", BinService::kSM, BinService::kUser, MonitorElement::DQM_KIND_TH1F, &axis);
308 
311 
312  for(unsigned iPNGain(0); iPNGain < nPNGain; iPNGain++){
313  unsigned offset(iWL * nPNGain + iPNGain);
314 
315  axis.low = 0.;
316  axis.high = 4096.;
317  _data[kPNAmplitudeMean + offset] = MEData("PNAmplitudeMean", BinService::kSMMEM, BinService::kUser, MonitorElement::DQM_KIND_TH1F, &axis);
318 
319  axis.low = 0.;
320  axis.high = 200.;
321  _data[kPNAmplitudeRMS + offset] = MEData("PNAmplitudeRMS", BinService::kSMMEM, BinService::kUser, MonitorElement::DQM_KIND_TH1F, &axis);
322  }
323  }
324  }
unsigned int offset(bool)

Member Data Documentation

std::map<std::pair<unsigned, int>, float> ecaldqm::LaserClient::ampCorrections_
protected

Definition at line 67 of file LaserClient.h.

std::vector<double> ecaldqm::LaserClient::amplitudeRMSThreshold_
protected

Definition at line 57 of file LaserClient.h.

Referenced by LaserClient(), and producePlots().

std::vector<double> ecaldqm::LaserClient::amplitudeThreshold_
protected

Definition at line 56 of file LaserClient.h.

Referenced by LaserClient(), and producePlots().

std::vector<double> ecaldqm::LaserClient::expectedAmplitude_
protected

Definition at line 55 of file LaserClient.h.

Referenced by LaserClient(), and producePlots().

std::vector<double> ecaldqm::LaserClient::expectedPNAmplitude_
protected

Definition at line 61 of file LaserClient.h.

Referenced by LaserClient(), and producePlots().

std::vector<double> ecaldqm::LaserClient::expectedTiming_
protected

Definition at line 58 of file LaserClient.h.

Referenced by LaserClient(), and producePlots().

std::vector<int> ecaldqm::LaserClient::laserWavelengths_
protected

Definition at line 51 of file LaserClient.h.

Referenced by beginRun(), bookMEs(), initialize(), LaserClient(), and producePlots().

std::vector<int> ecaldqm::LaserClient::MGPAGainsPN_
protected

Definition at line 52 of file LaserClient.h.

Referenced by beginRun(), bookMEs(), initialize(), LaserClient(), and producePlots().

int ecaldqm::LaserClient::minChannelEntries_
protected

Definition at line 54 of file LaserClient.h.

Referenced by LaserClient(), and producePlots().

std::vector<double> ecaldqm::LaserClient::pnAmplitudeRMSThreshold_
protected

Definition at line 63 of file LaserClient.h.

Referenced by LaserClient(), and producePlots().

std::vector<double> ecaldqm::LaserClient::pnAmplitudeThreshold_
protected

Definition at line 62 of file LaserClient.h.

Referenced by LaserClient(), and producePlots().

std::vector<double> ecaldqm::LaserClient::timingRMSThreshold_
protected

Definition at line 60 of file LaserClient.h.

Referenced by LaserClient(), and producePlots().

std::vector<double> ecaldqm::LaserClient::timingThreshold_
protected

Definition at line 59 of file LaserClient.h.

Referenced by LaserClient(), and producePlots().

float ecaldqm::LaserClient::towerThreshold_
protected

Definition at line 65 of file LaserClient.h.

Referenced by LaserClient(), and producePlots().