CMS 3D CMS Logo

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

#include <L1TEMUEventInfoClient.h>

Inheritance diagram for L1TEMUEventInfoClient:
edm::EDAnalyzer

Public Member Functions

 L1TEMUEventInfoClient (const edm::ParameterSet &ps)
 Constructor. More...
 
virtual ~L1TEMUEventInfoClient ()
 Destructor. More...
 
- Public Member Functions inherited from edm::EDAnalyzer
 EDAnalyzer ()
 
std::string workerType () const
 
virtual ~EDAnalyzer ()
 

Protected Member Functions

void analyze (const edm::Event &e, const edm::EventSetup &c)
 Fake Analyze. More...
 
void beginJob (void)
 BeginJob. More...
 
void beginLuminosityBlock (const edm::LuminosityBlock &lumiSeg, const edm::EventSetup &context)
 
void beginRun (const edm::Run &r, const edm::EventSetup &c)
 BeginRun. More...
 
void endJob ()
 Endjob. More...
 
void endLuminosityBlock (const edm::LuminosityBlock &lumiSeg, const edm::EventSetup &c)
 DQM Client Diagnostic. More...
 
void endRun (const edm::Run &r, const edm::EventSetup &c)
 EndRun. More...
 
- Protected Member Functions inherited from edm::EDAnalyzer
CurrentProcessingContext const * currentContext () const
 

Private Types

enum  DataValue {
  data_empty, data_all, data_gt, data_muons,
  data_jets, data_taujets, data_isoem, data_nonisoem,
  data_met
}
 
enum  EmulValue {
  emul_empty, emul_all, emul_gt, emul_dtf,
  emul_dtp, emul_ctf, emul_ctp, emul_rpc,
  emul_gmt, emul_etp, emul_htp, emul_rct,
  emul_gct, emul_glt
}
 

Private Member Functions

TH1F * get1DHisto (std::string meName, DQMStore *dbi)
 
TProfile * get1DProfile (std::string meName, DQMStore *dbi)
 
TH2F * get2DHisto (std::string meName, DQMStore *dbi)
 
TProfile2D * get2DProfile (std::string meName, DQMStore *dbi)
 
void initialize ()
 
Float_t setSummary (MonitorElement *)
 
std::string StringToUpper (std::string strToConvert)
 

Private Attributes

int counterEvt_
 counter More...
 
int counterLS_
 
std::vector< std::string > dataMask
 
DQMStoredbe_
 
std::map< int, int > emulatorMap
 
std::vector< std::string > emulMask
 
std::string monitorDir_
 
int nChannels
 prescale on number of events More...
 
edm::ParameterSet parameters_
 
int prescaleEvt_
 units of lumi sections More...
 
int prescaleLS_
 counter More...
 
Float_t reportSummary
 
MonitorElementreportSummary_
 
MonitorElementreportSummaryContent_ [nsys_]
 
MonitorElementreportSummaryMap_
 
std::map< std::string, DataValues_mapDataValues
 
std::map< std::string, EmulValues_mapEmulValues
 
Float_t summaryContent [nsys_]
 
Float_t summarySum
 
std::string syslabel_ [nsysmon_]
 
std::string syslabelext_ [nsysmon_]
 
bool sysmask_ [nsysmon_]
 
bool verbose_
 

Static Private Attributes

static const int nsys_ =18
 
static const int nsysmon_ =11
 

Additional Inherited Members

- Public Types inherited from edm::EDAnalyzer
typedef EDAnalyzer ModuleType
 
typedef WorkerT< EDAnalyzerWorkerType
 
- Static Public Member Functions inherited from edm::EDAnalyzer
static const std::string & baseType ()
 
static void fillDescriptions (ConfigurationDescriptions &descriptions)
 

Detailed Description

Definition at line 22 of file L1TEMUEventInfoClient.h.

Member Enumeration Documentation

Constructor & Destructor Documentation

L1TEMUEventInfoClient::L1TEMUEventInfoClient ( const edm::ParameterSet ps)

Constructor.

Definition at line 28 of file L1TEMUEventInfoClient.cc.

29 {
30  parameters_=ps;
31  initialize();
32 }
edm::ParameterSet parameters_
L1TEMUEventInfoClient::~L1TEMUEventInfoClient ( )
virtual

Destructor.

Definition at line 34 of file L1TEMUEventInfoClient.cc.

References gather_cfg::cout.

34  {
35  if(verbose_) cout <<"[TriggerDQM]: ending... " << endl;
36 }
tuple cout
Definition: gather_cfg.py:41

Member Function Documentation

void L1TEMUEventInfoClient::analyze ( const edm::Event e,
const edm::EventSetup c 
)
protectedvirtual

Fake Analyze.

Implements edm::EDAnalyzer.

Definition at line 451 of file L1TEMUEventInfoClient.cc.

References gather_cfg::cout.

451  {
452 
453  counterEvt_++;
454  if (prescaleEvt_<1) return;
455  if (prescaleEvt_>0 && counterEvt_%prescaleEvt_ != 0) return;
456 
457  if(verbose_) cout << "L1TEMUEventInfoClient::analyze" << endl;
458 }
int prescaleEvt_
units of lumi sections
tuple cout
Definition: gather_cfg.py:41
void L1TEMUEventInfoClient::beginJob ( void  )
protectedvirtual

BeginJob.

Reimplemented from edm::EDAnalyzer.

Definition at line 118 of file L1TEMUEventInfoClient.cc.

References DQMStore::book2D(), DQMStore::bookFloat(), gather_cfg::cout, dbe_, MonitorElement::Fill(), DQMStore::get(), trackerHits::histo, gen::k, n, cmsCodeRules.cppFunctionSkipper::operator, DQMStore::removeElement(), MonitorElement::setAxisTitle(), and DQMStore::setCurrentFolder().

118  {
119 
120  if(verbose_) cout <<"[TriggerDQM]: Begin Job" << endl;
121  // get backendinterface
123 
124  dbe_->setCurrentFolder("L1TEMU/EventInfo");
125 
126 // sprintf(histo, "reportSummary");
127  if( (reportSummary_ = dbe_->get("L1TEMU/EventInfo/reportSumamry")) ){
129  }
130 
131  reportSummary_ = dbe_->bookFloat("reportSummary");
132 
133  //initialize reportSummary to 1
135 
136  dbe_->setCurrentFolder("L1TEMU/EventInfo/reportSummaryContents");
137 
138 
139  char histo[100];
140 
141  for (int n = 0; n < nsys_; n++) {
142 
143  switch(n){
144  case 0 : sprintf(histo,"L1T_MET"); break;
145  case 1 : sprintf(histo,"L1T_NonIsoEM"); break;
146  case 2 : sprintf(histo,"L1T_IsoEM"); break;
147  case 3 : sprintf(histo,"L1T_TauJets"); break;
148  case 4 : sprintf(histo,"L1T_Jets"); break;
149  case 5 : sprintf(histo,"L1T_Muons"); break;
150  case 6 : sprintf(histo,"L1T_GT"); break;
151  case 7 : sprintf(histo,"L1TEMU_GLT"); break;
152  case 8 : sprintf(histo,"L1TEMU_GMT"); break;
153  case 9 : sprintf(histo,"L1TEMU_RPC"); break;
154  case 10: sprintf(histo,"L1TEMU_CTP"); break;
155  case 11: sprintf(histo,"L1TEMU_CTF"); break;
156  case 12: sprintf(histo,"L1TEMU_DTP"); break;
157  case 13: sprintf(histo,"L1TEMU_DTF"); break;
158  case 14: sprintf(histo,"L1TEMU_HTP"); break;
159  case 15: sprintf(histo,"L1TEMU_ETP"); break;
160  case 16: sprintf(histo,"L1TEMU_GCT"); break;
161  case 17: sprintf(histo,"L1TEMU_RCT"); break;
162  }
163 
165  }
166 
167  //initialize reportSummaryContents to 0
168  for (int k = 0; k < nsys_; k++) {
169  summaryContent[k] = 0;
171  }
172 
173 
174  dbe_->setCurrentFolder("L1TEMU/EventInfo");
175 
176  if( (reportSummaryMap_ = dbe_->get("L1TEMU/EventInfo/reportSummaryMap")) ){
178  }
179 
180  reportSummaryMap_ = dbe_->book2D("reportSummaryMap", "reportSummaryMap", 2, 1, 3, 11, 1, 12);
183 
184  reportSummaryMap_->setBinLabel(1," ",1);
185  reportSummaryMap_->setBinLabel(2," ",1);
186 
187  reportSummaryMap_->setBinLabel(1," ",2);
188  reportSummaryMap_->setBinLabel(2," ",2);
189  reportSummaryMap_->setBinLabel(3," ",2);
190  reportSummaryMap_->setBinLabel(4," ",2);
191  reportSummaryMap_->setBinLabel(5," ",2);
192  reportSummaryMap_->setBinLabel(6," ",2);
193  reportSummaryMap_->setBinLabel(7," ",2);
194  reportSummaryMap_->setBinLabel(8," ",2);
195  reportSummaryMap_->setBinLabel(9," ",2);
196  reportSummaryMap_->setBinLabel(10," ",2);
197  reportSummaryMap_->setBinLabel(11," ",2);
198 
199 
200 }
const std::string & getName(void) const
get name of ME
MonitorElement * reportSummaryContent_[nsys_]
void setBinLabel(int bin, const std::string &label, int axis=1)
set bin label for x, y or z axis (axis=1, 2, 3 respectively)
tuple histo
Definition: trackerHits.py:12
MonitorElement * reportSummary_
MonitorElement * bookFloat(const char *name)
Book float.
Definition: DQMStore.cc:451
void Fill(long long x)
void removeElement(const std::string &name)
Definition: DQMStore.cc:2353
MonitorElement * get(const std::string &path) const
get ME from full pathname (e.g. &quot;my/long/dir/my_histo&quot;)
Definition: DQMStore.cc:1265
MonitorElement * reportSummaryMap_
int k[5][pyjets_maxn]
tuple cout
Definition: gather_cfg.py:41
MonitorElement * book2D(const char *name, const char *title, int nchX, double lowX, double highX, int nchY, double lowY, double highY)
Book 2D histogram.
Definition: DQMStore.cc:642
void setAxisTitle(const std::string &title, int axis=1)
set x-, y- or z-axis title (axis=1, 2, 3 respectively)
void setCurrentFolder(const std::string &fullpath)
Definition: DQMStore.cc:232
void L1TEMUEventInfoClient::beginLuminosityBlock ( const edm::LuminosityBlock lumiSeg,
const edm::EventSetup context 
)
protectedvirtual

Reimplemented from edm::EDAnalyzer.

Definition at line 207 of file L1TEMUEventInfoClient.cc.

207  {
208  // optionally reset histograms here
209 }
void L1TEMUEventInfoClient::beginRun ( const edm::Run r,
const edm::EventSetup c 
)
protectedvirtual

BeginRun.

Reimplemented from edm::EDAnalyzer.

Definition at line 203 of file L1TEMUEventInfoClient.cc.

203  {
204 }
void L1TEMUEventInfoClient::endJob ( void  )
protectedvirtual

Endjob.

Reimplemented from edm::EDAnalyzer.

Definition at line 465 of file L1TEMUEventInfoClient.cc.

465  {
466 }
void L1TEMUEventInfoClient::endLuminosityBlock ( const edm::LuminosityBlock lumiSeg,
const edm::EventSetup c 
)
protectedvirtual

DQM Client Diagnostic.

Reimplemented from edm::EDAnalyzer.

Definition at line 211 of file L1TEMUEventInfoClient.cc.

References gather_cfg::cout, dbe_, DQMStore::get(), i, gen::k, and m.

212  {
213 
214 
215  for (int k = 0; k < nsys_; k++) {
216  summaryContent[k] = 0;
218  }
219  summarySum = 0;
220 
221 
222  //
223  // Apply masks for data and emulator
224  //
225 
226  // Data Mask
227  unsigned int NumDataMask = dataMask.size();
228  std::vector<string> maskedData;
229  for( unsigned int i=0; i<NumDataMask; i++ ){
230  std::string mask_sys_tmp = dataMask[i];
231  std::string mask_sys = StringToUpper(mask_sys_tmp);
232  switch(s_mapDataValues[mask_sys])
233  {
234  case data_empty:
235  break;
236  case data_all:
237  for( int m=0; m<7; m++ ) summaryContent[m] = -1;
238  maskedData.push_back(mask_sys_tmp);
239  break;
240  case data_gt:
241  summaryContent[6]=-1;
242  maskedData.push_back(mask_sys_tmp);
243  break;
244  case data_muons:
245  summaryContent[5]=-1;
246  maskedData.push_back(mask_sys_tmp);
247  break;
248  case data_jets:
249  summaryContent[4]=-1;
250  maskedData.push_back(mask_sys_tmp);
251  break;
252  case data_taujets:
253  summaryContent[3]=-1;
254  maskedData.push_back(mask_sys_tmp);
255  break;
256  case data_isoem:
257  summaryContent[2]=-1;
258  maskedData.push_back(mask_sys_tmp);
259  break;
260  case data_nonisoem:
261  summaryContent[1]=-1;
262  maskedData.push_back(mask_sys_tmp);
263  break;
264  case data_met:
265  summaryContent[0]=-1;
266  maskedData.push_back(mask_sys_tmp);
267  break;
268  default:
269  if( verbose_ ) cout << " User input mask '" << mask_sys_tmp << "' is not recognized." << endl;
270  break;
271  }
272  }
273 
274  // Emulator Mask
275  unsigned int NumEmulMask = emulMask.size();
276  std::vector<string> maskedEmul;
277  for( unsigned int i=0; i<NumEmulMask; i++ ){
278  std::string mask_sys_tmp = emulMask[i];
279  std::string mask_sys = StringToUpper(mask_sys_tmp);
280  switch(s_mapEmulValues[mask_sys])
281  {
282  case emul_empty:
283  break;
284  case emul_all:
285  for( int m=7; m<18; m++ ) summaryContent[m] = -1;
286  maskedEmul.push_back(mask_sys_tmp);
287  break;
288  case emul_glt:
289  summaryContent[7]=-1;
290  maskedEmul.push_back(mask_sys_tmp);
291  break;
292  case emul_gmt:
293  summaryContent[8]=-1;
294  maskedEmul.push_back(mask_sys_tmp);
295  break;
296  case emul_rpc:
297  summaryContent[9]=-1;
298  maskedEmul.push_back(mask_sys_tmp);
299  break;
300  case emul_ctp:
301  summaryContent[10]=-1;
302  maskedEmul.push_back(mask_sys_tmp);
303  break;
304  case emul_ctf:
305  summaryContent[11]=-1;
306  maskedEmul.push_back(mask_sys_tmp);
307  break;
308  case emul_dtp:
309  summaryContent[12]=-1;
310  maskedEmul.push_back(mask_sys_tmp);
311  break;
312  case emul_dtf:
313  summaryContent[13]=-1;
314  maskedEmul.push_back(mask_sys_tmp);
315  break;
316  case emul_htp:
317  summaryContent[14]=-1;
318  maskedEmul.push_back(mask_sys_tmp);
319  break;
320  case emul_etp:
321  summaryContent[15]=-1;
322  maskedEmul.push_back(mask_sys_tmp);
323  break;
324  case emul_gct:
325  summaryContent[16]=-1;
326  maskedEmul.push_back(mask_sys_tmp);
327  break;
328  case emul_rct:
329  summaryContent[17]=-1;
330  maskedEmul.push_back(mask_sys_tmp);
331  break;
332  default:
333  if( verbose_ ) cout << " User input mask '" << mask_sys_tmp << "' is not recognized." << endl;
334  break;
335  }
336  }
337 
338  for( int i=0; i<nsysmon_; i++ ){
339  if( summaryContent[emulatorMap[i]]==-1 ) sysmask_[i] = 1;
340  }
341 
342 
343  MonitorElement* QHist[nsysmon_];
344  std::string lbl("");
345  for(int i=0; i<nsysmon_; i++) {
346  lbl.clear();
347  lbl+="L1TEMU/"; lbl+=syslabel_[i]; lbl+="/";
348  lbl+=syslabelext_[i]; lbl+="ErrorFlag";
349  QHist[i]=dbe_->get(lbl.data());
350  float pv = -1.;
351  if(!sysmask_[i]){
352  pv = setSummary(QHist[i]);
353  }
355  }
356 
357 
358 
359  int numUnMaskedSystems = 0;
360  for( int m=0; m<nsys_; m++ ){
361  if( summaryContent[m]!=-1){
362  if( m>6 ){
364  numUnMaskedSystems++;
365  }
366 
368  }
369  }
370 
371 
372 
373  // For now, only use L1TEMU for reportSummary value
374  reportSummary = summarySum/float(numUnMaskedSystems);
376 
377 
378  //L1T summary map
382  reportSummaryMap_->setBinContent(1,8, summaryContent[3]); // TauJets
384  reportSummaryMap_->setBinContent(1,6, summaryContent[1]); // NonIsoEM
386 
387  //L1TEMU summary map
399 
400 
401  if( verbose_ ){
402  if( maskedData.size()>0 ){
403  std::cout << " Masked Data Systems = ";
404  for( unsigned int i=0; i<maskedData.size(); i++ ){
405  if( i!=maskedData.size()-1 ){
406  std::cout << maskedData[i] << ", ";
407  }
408  else {
409  std::cout << maskedData[i] << std::endl;
410  }
411  }
412  }
413  if( maskedEmul.size()>0 ){
414  std::cout << " Masked Emul Systems = ";
415  for( unsigned int i=0; i<maskedEmul.size(); i++ ){
416  if( i!=maskedEmul.size()-1 ){
417  std::cout << maskedEmul[i] << ", ";
418  }
419  else {
420  std::cout << maskedEmul[i] << std::endl;
421  }
422  }
423  }
424 
425  std::cout << " L1T " << std::endl;
426  std::cout << " summaryContent[0] = MET = " << summaryContent[0] << std::endl;
427  std::cout << " summaryContent[1] = NonIsoEM = " << summaryContent[1] << std::endl;
428  std::cout << " summaryContent[2] = IsoEM = " << summaryContent[2] << std::endl;
429  std::cout << " summaryContent[3] = TauJets = " << summaryContent[3] << std::endl;
430  std::cout << " summaryContent[4] = Jets = " << summaryContent[4] << std::endl;
431  std::cout << " summaryContent[5] = Muons = " << summaryContent[5] << std::endl;
432  std::cout << " summaryContent[6] = GT = " << summaryContent[6] << std::endl;
433  std::cout << " L1T EMU" << std::endl;
434  std::cout << " summaryContent[7] = GLT = " << summaryContent[7] << std::endl;
435  std::cout << " summaryContent[8] = GMT = " << summaryContent[8] << std::endl;
436  std::cout << " summaryContent[9] = RPC = " << summaryContent[9] << std::endl;
437  std::cout << " summaryContent[10] = CTP = " << summaryContent[10] << std::endl;
438  std::cout << " summaryContent[11] = CTF = " << summaryContent[11] << std::endl;
439  std::cout << " summaryContent[12] = DTP = " << summaryContent[12] << std::endl;
440  std::cout << " summaryContent[13] = DTF = " << summaryContent[13] << std::endl;
441  std::cout << " summaryContent[14] = HTP = " << summaryContent[14] << std::endl;
442  std::cout << " summaryContent[15] = ETP = " << summaryContent[15] << std::endl;
443  std::cout << " summaryContent[16] = GCT = " << summaryContent[16] << std::endl;
444  std::cout << " summaryContent[17] = RCT = " << summaryContent[17] << std::endl;
445  }
446 
447 
448 }
std::string StringToUpper(std::string strToConvert)
int i
Definition: DBlmapReader.cc:9
std::vector< std::string > emulMask
void setBinContent(int binx, double content)
set content of bin (1-D)
std::string syslabelext_[nsysmon_]
std::map< std::string, EmulValue > s_mapEmulValues
MonitorElement * reportSummaryContent_[nsys_]
Float_t setSummary(MonitorElement *)
MonitorElement * reportSummary_
void Fill(long long x)
std::vector< std::string > dataMask
std::string syslabel_[nsysmon_]
MonitorElement * get(const std::string &path) const
get ME from full pathname (e.g. &quot;my/long/dir/my_histo&quot;)
Definition: DQMStore.cc:1265
MonitorElement * reportSummaryMap_
int k[5][pyjets_maxn]
std::map< std::string, DataValue > s_mapDataValues
std::map< int, int > emulatorMap
tuple cout
Definition: gather_cfg.py:41
void L1TEMUEventInfoClient::endRun ( const edm::Run r,
const edm::EventSetup c 
)
protectedvirtual

EndRun.

Reimplemented from edm::EDAnalyzer.

Definition at line 461 of file L1TEMUEventInfoClient.cc.

461  {
462 }
TH1F * L1TEMUEventInfoClient::get1DHisto ( std::string  meName,
DQMStore dbi 
)
private

Definition at line 480 of file L1TEMUEventInfoClient.cc.

References gather_cfg::cout, DQMStore::get(), MonitorElement::getTH1F(), and NULL.

481 {
482 
483  MonitorElement * me_ = dbi->get(meName);
484 
485  if (!me_) {
486  if(verbose_) cout << "ME NOT FOUND." << endl;
487  return NULL;
488  }
489 
490  return me_->getTH1F();
491 }
#define NULL
Definition: scimark2.h:8
MonitorElement * get(const std::string &path) const
get ME from full pathname (e.g. &quot;my/long/dir/my_histo&quot;)
Definition: DQMStore.cc:1265
TH1F * getTH1F(void) const
tuple cout
Definition: gather_cfg.py:41
TProfile * L1TEMUEventInfoClient::get1DProfile ( std::string  meName,
DQMStore dbi 
)
private

Definition at line 524 of file L1TEMUEventInfoClient.cc.

References gather_cfg::cout, DQMStore::get(), MonitorElement::getTProfile(), and NULL.

525 {
526 
527 
528  MonitorElement * me_ = dbi->get(meName);
529 
530  if (!me_) {
531  if(verbose_) cout << "ME NOT FOUND." << endl;
532  return NULL;
533  }
534 
535  return me_->getTProfile();
536 }
#define NULL
Definition: scimark2.h:8
MonitorElement * get(const std::string &path) const
get ME from full pathname (e.g. &quot;my/long/dir/my_histo&quot;)
Definition: DQMStore.cc:1265
TProfile * getTProfile(void) const
tuple cout
Definition: gather_cfg.py:41
TH2F * L1TEMUEventInfoClient::get2DHisto ( std::string  meName,
DQMStore dbi 
)
private

Definition at line 493 of file L1TEMUEventInfoClient.cc.

References gather_cfg::cout, DQMStore::get(), MonitorElement::getTH2F(), and NULL.

494 {
495 
496 
497  MonitorElement * me_ = dbi->get(meName);
498 
499  if (!me_) {
500  if(verbose_) cout << "ME NOT FOUND." << endl;
501  return NULL;
502  }
503 
504  return me_->getTH2F();
505 }
#define NULL
Definition: scimark2.h:8
MonitorElement * get(const std::string &path) const
get ME from full pathname (e.g. &quot;my/long/dir/my_histo&quot;)
Definition: DQMStore.cc:1265
tuple cout
Definition: gather_cfg.py:41
TH2F * getTH2F(void) const
TProfile2D * L1TEMUEventInfoClient::get2DProfile ( std::string  meName,
DQMStore dbi 
)
private

Definition at line 509 of file L1TEMUEventInfoClient.cc.

References gather_cfg::cout, DQMStore::get(), MonitorElement::getTProfile2D(), and NULL.

510 {
511 
512 
513  MonitorElement * me_ = dbi->get(meName);
514 
515  if (!me_) {
516  if(verbose_) cout << "ME NOT FOUND." << endl;
517  return NULL;
518  }
519 
520  return me_->getTProfile2D();
521 }
TProfile2D * getTProfile2D(void) const
#define NULL
Definition: scimark2.h:8
MonitorElement * get(const std::string &path) const
get ME from full pathname (e.g. &quot;my/long/dir/my_histo&quot;)
Definition: DQMStore.cc:1265
tuple cout
Definition: gather_cfg.py:41
void L1TEMUEventInfoClient::initialize ( )
private

Definition at line 39 of file L1TEMUEventInfoClient.cc.

References gather_cfg::cout, dbe_, i, and cmsCodeRules.cppFunctionSkipper::operator.

39  {
40 
41  counterLS_=0;
42  counterEvt_=0;
43 
44  // get back-end interface
46 
47  // base folder for the contents of this job
48  verbose_ = parameters_.getUntrackedParameter<bool>("verbose", false);
49 
50  monitorDir_ = parameters_.getUntrackedParameter<string>("monitorDir","");
51  if(verbose_) cout << "Monitor dir = " << monitorDir_ << endl;
52 
53  prescaleLS_ = parameters_.getUntrackedParameter<int>("prescaleLS", -1);
54  if(verbose_) cout << "DQM lumi section prescale = " << prescaleLS_ << " lumi section(s)"<< endl;
55 
56  prescaleEvt_ = parameters_.getUntrackedParameter<int>("prescaleEvt", -1);
57  if(verbose_) cout << "DQM event prescale = " << prescaleEvt_ << " events(s)"<< endl;
58 
59  //tbd should revert to regular order as defined in hardwarevalidation
60  // + use std labels defined in traits therein
61  std::string syslabel [nsysmon_]=
62  {"DTTF","DTTPG","CSCTF","CSCTPG","RPC","GMT", "ECAL","HCAL","RCT","GCT","GT"};
63  std::string syslabelext[nsysmon_]=
64  {"DTF","DTP","CTF","CTP","RPC","GMT", "ETP","HTP","RCT","GCT","GLT"};
65  std::vector<unsigned int> sysmask(0,nsysmon_);
66  sysmask = parameters_.getUntrackedParameter<std::vector<unsigned int> >("maskedSystems", sysmask);
67 
68  for(int i=0; i<nsysmon_; i++) {
69  syslabel_[i] = syslabel[i];
70  syslabelext_[i] = syslabelext[i];
71  sysmask_[i] = sysmask[i];
72  }
73 
74  std::vector<string> emptyMask;
75 
76  dataMask = parameters_.getUntrackedParameter<std::vector<string> >("dataMaskedSystems", emptyMask);
77  emulMask = parameters_.getUntrackedParameter<std::vector<string> >("emulatorMaskedSystems", emptyMask);
78 
79  s_mapDataValues["EMPTY"] = data_empty;
80  s_mapDataValues["ALL"] = data_all;
81  s_mapDataValues["GT"] = data_gt;
82  s_mapDataValues["MUONS"] = data_muons;
83  s_mapDataValues["JETS"] = data_jets;
84  s_mapDataValues["TAUJETS"] = data_taujets;
85  s_mapDataValues["ISOEM"] = data_isoem;
86  s_mapDataValues["NONISOEM"] = data_nonisoem;
87  s_mapDataValues["MET"] = data_met;
88 
89  s_mapEmulValues["EMPTY"] = emul_empty;
90  s_mapEmulValues["ALL"] = emul_all;
91  s_mapEmulValues["DTTF"] = emul_dtf;
92  s_mapEmulValues["DTTPG"] = emul_dtp;
93  s_mapEmulValues["CSCTF"] = emul_ctf;
94  s_mapEmulValues["CSCTPG"] = emul_ctp;
95  s_mapEmulValues["RPC"] = emul_rpc;
96  s_mapEmulValues["GMT"] = emul_gmt;
97  s_mapEmulValues["ECAL"] = emul_etp;
98  s_mapEmulValues["HCAL"] = emul_htp;
99  s_mapEmulValues["RCT"] = emul_rct;
100  s_mapEmulValues["GCT"] = emul_gct;
101  s_mapEmulValues["GLT"] = emul_glt;
102 
103  emulatorMap[0] = 13;
104  emulatorMap[1] = 12;
105  emulatorMap[2] = 11;
106  emulatorMap[3] = 10;
107  emulatorMap[4] = 9;
108  emulatorMap[5] = 8;
109  emulatorMap[6] = 15;
110  emulatorMap[7] = 14;
111  emulatorMap[8] = 17;
112  emulatorMap[9] = 16;
113  emulatorMap[10] = 7;
114 
115 }
T getUntrackedParameter(std::string const &, T const &) const
int i
Definition: DBlmapReader.cc:9
std::vector< std::string > emulMask
std::string syslabelext_[nsysmon_]
std::map< std::string, EmulValue > s_mapEmulValues
std::vector< std::string > dataMask
edm::ParameterSet parameters_
std::string syslabel_[nsysmon_]
std::map< std::string, DataValue > s_mapDataValues
std::map< int, int > emulatorMap
int prescaleEvt_
units of lumi sections
tuple cout
Definition: gather_cfg.py:41
Float_t L1TEMUEventInfoClient::setSummary ( MonitorElement QHist)
private

Definition at line 469 of file L1TEMUEventInfoClient.cc.

References MonitorElement::getBinContent(), MonitorElement::getEntries(), and i.

469  {
470  bool isempty = QHist->getEntries()==0;
471  //errflag bins: agree, loc agree, loc disagree, data only, emul only
472  if(!isempty)
473  for(int i=1; i<5; i++)
474  if(QHist->getBinContent(i)>0)
475  {isempty=false;continue;}
476  return isempty ? -1. :
477  (QHist->getBinContent(1)) / (QHist->getEntries());
478 }
int i
Definition: DBlmapReader.cc:9
double getEntries(void) const
get # of entries
double getBinContent(int binx) const
get content of bin (1-D)
string L1TEMUEventInfoClient::StringToUpper ( std::string  strToConvert)
private

Definition at line 538 of file L1TEMUEventInfoClient.cc.

References i.

539 {//change each element of the string to upper case
540  for(unsigned int i=0;i<strToConvert.length();i++)
541  {
542  strToConvert[i] = toupper(strToConvert[i]);
543  }
544  return strToConvert;//return the converted string
545 }
int i
Definition: DBlmapReader.cc:9

Member Data Documentation

int L1TEMUEventInfoClient::counterEvt_
private

counter

Definition at line 70 of file L1TEMUEventInfoClient.h.

int L1TEMUEventInfoClient::counterLS_
private

Definition at line 69 of file L1TEMUEventInfoClient.h.

std::vector<std::string> L1TEMUEventInfoClient::dataMask
private

Definition at line 94 of file L1TEMUEventInfoClient.h.

DQMStore* L1TEMUEventInfoClient::dbe_
private

Definition at line 66 of file L1TEMUEventInfoClient.h.

std::map<int, int> L1TEMUEventInfoClient::emulatorMap
private

Definition at line 85 of file L1TEMUEventInfoClient.h.

std::vector<std::string> L1TEMUEventInfoClient::emulMask
private

Definition at line 95 of file L1TEMUEventInfoClient.h.

std::string L1TEMUEventInfoClient::monitorDir_
private

Definition at line 67 of file L1TEMUEventInfoClient.h.

int L1TEMUEventInfoClient::nChannels
private

prescale on number of events

Definition at line 73 of file L1TEMUEventInfoClient.h.

const int L1TEMUEventInfoClient::nsys_ =18
staticprivate

Definition at line 88 of file L1TEMUEventInfoClient.h.

const int L1TEMUEventInfoClient::nsysmon_ =11
staticprivate

Definition at line 89 of file L1TEMUEventInfoClient.h.

edm::ParameterSet L1TEMUEventInfoClient::parameters_
private
int L1TEMUEventInfoClient::prescaleEvt_
private

units of lumi sections

Definition at line 72 of file L1TEMUEventInfoClient.h.

int L1TEMUEventInfoClient::prescaleLS_
private

counter

Definition at line 71 of file L1TEMUEventInfoClient.h.

Float_t L1TEMUEventInfoClient::reportSummary
private

Definition at line 91 of file L1TEMUEventInfoClient.h.

MonitorElement* L1TEMUEventInfoClient::reportSummary_
private

Definition at line 102 of file L1TEMUEventInfoClient.h.

MonitorElement* L1TEMUEventInfoClient::reportSummaryContent_[nsys_]
private

Definition at line 103 of file L1TEMUEventInfoClient.h.

MonitorElement* L1TEMUEventInfoClient::reportSummaryMap_
private

Definition at line 104 of file L1TEMUEventInfoClient.h.

std::map<std::string, DataValue> L1TEMUEventInfoClient::s_mapDataValues
private

Definition at line 83 of file L1TEMUEventInfoClient.h.

std::map<std::string, EmulValue> L1TEMUEventInfoClient::s_mapEmulValues
private

Definition at line 84 of file L1TEMUEventInfoClient.h.

Float_t L1TEMUEventInfoClient::summaryContent[nsys_]
private

Definition at line 93 of file L1TEMUEventInfoClient.h.

Float_t L1TEMUEventInfoClient::summarySum
private

Definition at line 92 of file L1TEMUEventInfoClient.h.

std::string L1TEMUEventInfoClient::syslabel_[nsysmon_]
private

Definition at line 96 of file L1TEMUEventInfoClient.h.

std::string L1TEMUEventInfoClient::syslabelext_[nsysmon_]
private

Definition at line 97 of file L1TEMUEventInfoClient.h.

bool L1TEMUEventInfoClient::sysmask_[nsysmon_]
private

Definition at line 98 of file L1TEMUEventInfoClient.h.

bool L1TEMUEventInfoClient::verbose_
private

Definition at line 68 of file L1TEMUEventInfoClient.h.