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
L1TEventInfoClient Class Reference

#include <L1TEventInfoClient.h>

Inheritance diagram for L1TEventInfoClient:
edm::EDAnalyzer

Public Member Functions

 L1TEventInfoClient (const edm::ParameterSet &ps)
 Constructor. More...
 
virtual ~L1TEventInfoClient ()
 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 ()
 
std::string StringToUpper (std::string strToConvert)
 

Private Attributes

int counterEvt_
 counter More...
 
int counterLS_
 
std::vector< std::string > dataMask
 
DQMStoredbe_
 
std::vector< std::string > emulMask
 
double GCT_AllJets_threshold_
 
double GCT_IsoEm_threshold_
 
double GCT_NonIsoEm_threshold_
 
double GCT_TauJets_threshold_
 
double GMT_Muons_threshold_
 
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_ [20]
 
MonitorElementreportSummaryMap_
 
std::map< std::string, DataValues_mapDataValues
 
std::map< std::string, EmulValues_mapEmulValues
 
Float_t summaryContent [20]
 
Float_t summarySum
 
int thresholdLS_
 units of lumi sections More...
 
bool verbose_
 

Static Private Attributes

static const int nsys_ =18
 

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 21 of file L1TEventInfoClient.h.

Member Enumeration Documentation

Constructor & Destructor Documentation

L1TEventInfoClient::L1TEventInfoClient ( const edm::ParameterSet ps)

Constructor.

Definition at line 30 of file L1TEventInfoClient.cc.

31 {
32  parameters_=ps;
33  initialize();
34 }
edm::ParameterSet parameters_
L1TEventInfoClient::~L1TEventInfoClient ( )
virtual

Destructor.

Definition at line 36 of file L1TEventInfoClient.cc.

References gather_cfg::cout.

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

Member Function Documentation

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

Fake Analyze.

Implements edm::EDAnalyzer.

Definition at line 723 of file L1TEventInfoClient.cc.

References gather_cfg::cout.

723  {
724 
725  counterEvt_++;
726  if (prescaleEvt_<1) return;
727  if (prescaleEvt_>0 && counterEvt_%prescaleEvt_ != 0) return;
728 
729  if(verbose_) cout << "L1TEventInfoClient::analyze" << endl;
730 
731 
732 
733 
734  //reportSummary = average of report summaries of each system
735 
736 
737 }
int prescaleEvt_
units of lumi sections
tuple cout
Definition: gather_cfg.py:41
void L1TEventInfoClient::beginJob ( void  )
protectedvirtual

BeginJob.

Reimplemented from edm::EDAnalyzer.

Definition at line 111 of file L1TEventInfoClient.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().

111  {
112 
113  if(verbose_) cout <<"[TriggerDQM]: Begin Job" << endl;
114  // get backendinterface
116 
117  dbe_->setCurrentFolder("L1T/EventInfo");
118 
119  if( (reportSummary_ = dbe_->get("L1T/EventInfo/reportSumamry")) ) {
121  }
122 
123  reportSummary_ = dbe_->bookFloat("reportSummary");
124 
125  //initialize reportSummary to 1
127 
128  dbe_->setCurrentFolder("L1T/EventInfo/reportSummaryContents");
129 
130 
131  char histo[100];
132 
133  for (int n = 0; n < nsys_; n++) {
134 
135  switch(n){
136  case 0 : sprintf(histo,"L1T_MET"); break;
137  case 1 : sprintf(histo,"L1T_NonIsoEM"); break;
138  case 2 : sprintf(histo,"L1T_IsoEM"); break;
139  case 3 : sprintf(histo,"L1T_TauJets"); break;
140  case 4 : sprintf(histo,"L1T_Jets"); break;
141  case 5 : sprintf(histo,"L1T_Muons"); break;
142  case 6 : sprintf(histo,"L1T_GT"); break;
143  case 7 : sprintf(histo,"L1TEMU_GLT"); break;
144  case 8 : sprintf(histo,"L1TEMU_GMT"); break;
145  case 9 : sprintf(histo,"L1TEMU_RPC"); break;
146  case 10: sprintf(histo,"L1TEMU_CTP"); break;
147  case 11: sprintf(histo,"L1TEMU_CTF"); break;
148  case 12: sprintf(histo,"L1TEMU_DTP"); break;
149  case 13: sprintf(histo,"L1TEMU_DTF"); break;
150  case 14: sprintf(histo,"L1TEMU_HTP"); break;
151  case 15: sprintf(histo,"L1TEMU_ETP"); break;
152  case 16: sprintf(histo,"L1TEMU_GCT"); break;
153  case 17: sprintf(histo,"L1TEMU_RCT"); break;
154  }
155 
157  }
158 
159  //initialize reportSummaryContents to 0
160  for (int k = 0; k < nsys_; k++) {
161  summaryContent[k] = 0;
163  }
164 
165 
166  dbe_->setCurrentFolder("L1T/EventInfo");
167 
168  if( (reportSummaryMap_ = dbe_->get("L1T/EventInfo/reportSummaryMap")) ){
170  }
171 
172  reportSummaryMap_ = dbe_->book2D("reportSummaryMap", "reportSummaryMap", 2, 1, 3, 11, 1, 12);
175 
176  reportSummaryMap_->setBinLabel(1," ",1);
177  reportSummaryMap_->setBinLabel(2," ",1);
178 
179  reportSummaryMap_->setBinLabel(1," ",2);
180  reportSummaryMap_->setBinLabel(2," ",2);
181  reportSummaryMap_->setBinLabel(3," ",2);
182  reportSummaryMap_->setBinLabel(4," ",2);
183  reportSummaryMap_->setBinLabel(5," ",2);
184  reportSummaryMap_->setBinLabel(6," ",2);
185  reportSummaryMap_->setBinLabel(7," ",2);
186  reportSummaryMap_->setBinLabel(8," ",2);
187  reportSummaryMap_->setBinLabel(9," ",2);
188  reportSummaryMap_->setBinLabel(10," ",2);
189  reportSummaryMap_->setBinLabel(11," ",2);
190 
191 }
const std::string & getName(void) const
get name of ME
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)
MonitorElement * reportSummaryContent_[20]
tuple histo
Definition: trackerHits.py:12
Float_t summaryContent[20]
MonitorElement * bookFloat(const char *name)
Book float.
Definition: DQMStore.cc:451
void Fill(long long x)
MonitorElement * reportSummary_
static const int nsys_
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
int k[5][pyjets_maxn]
MonitorElement * reportSummaryMap_
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 L1TEventInfoClient::beginLuminosityBlock ( const edm::LuminosityBlock lumiSeg,
const edm::EventSetup context 
)
protectedvirtual

Reimplemented from edm::EDAnalyzer.

Definition at line 198 of file L1TEventInfoClient.cc.

198  {
199  // optionally reset histograms here
200 }
void L1TEventInfoClient::beginRun ( const edm::Run r,
const edm::EventSetup c 
)
protectedvirtual

BeginRun.

Reimplemented from edm::EDAnalyzer.

Definition at line 194 of file L1TEventInfoClient.cc.

194  {
195 }
void L1TEventInfoClient::endJob ( void  )
protectedvirtual

Endjob.

Reimplemented from edm::EDAnalyzer.

Definition at line 744 of file L1TEventInfoClient.cc.

744  {
745 }
void L1TEventInfoClient::endLuminosityBlock ( const edm::LuminosityBlock lumiSeg,
const edm::EventSetup c 
)
protectedvirtual

DQM Client Diagnostic.

Reimplemented from edm::EDAnalyzer.

Definition at line 202 of file L1TEventInfoClient.cc.

References gather_cfg::cout, dbe_, MonitorElement::Fill(), DQMStore::get(), QReport::getBadChannels(), MonitorElement::getEntries(), MonitorElement::getNbinsX(), MonitorElement::getNbinsY(), MonitorElement::getQReport(), QReport::getQTresult(), i, gen::k, and m.

203  {
204 
205 
206  counterLS_++;
207 
208  MonitorElement *GMT_QHist = dbe_->get("L1T/L1TGMT/GMT_etaphi");
209  MonitorElement *GCT_IsoEm_QHist = dbe_->get("L1T/L1TGCT/IsoEmRankEtaPhi");
210  MonitorElement *GCT_NonIsoEm_QHist = dbe_->get("L1T/L1TGCT/NonIsoEmRankEtaPhi");
211  MonitorElement *GCT_AllJets_QHist = dbe_->get("L1T/L1TGCT/AllJetsEtEtaPhi");
212  MonitorElement *GCT_TauJets_QHist = dbe_->get("L1T/L1TGCT/TauJetsEtEtaPhi");
213  MonitorElement *GT_AlgoBits_QHist = dbe_->get("L1T/L1TGT/algo_bits");
214  MonitorElement *GT_TechBits_QHist = dbe_->get("L1T/L1TGT/tt_bits");
215 
216 
217 
218  for (int k = 0; k < nsys_; k++) {
219  summaryContent[k] = 0;
221  }
222  summarySum = 0;
223 
224 
225  int GCT_IsoEm_nXCh = 0,GCT_IsoEm_nYCh=0,GCT_NonIsoEm_nXCh = 0,GCT_NonIsoEm_nYCh=0,GCT_AllJets_nXCh = 0,GCT_AllJets_nYCh=0,GCT_TauJets_nXCh = 0,GCT_TauJets_nYCh=0,GMT_nXCh=0,GMT_nYCh=0;
226 
227 
228  if(GCT_IsoEm_QHist){
229  GCT_IsoEm_nXCh = GCT_IsoEm_QHist->getNbinsX();
230  GCT_IsoEm_nYCh = GCT_IsoEm_QHist->getNbinsY();
231  }
232  if(GCT_NonIsoEm_QHist){
233  GCT_NonIsoEm_nXCh = GCT_NonIsoEm_QHist->getNbinsX();
234  GCT_NonIsoEm_nYCh = GCT_NonIsoEm_QHist->getNbinsY();
235  }
236  if(GCT_AllJets_QHist){
237  GCT_AllJets_nXCh = GCT_AllJets_QHist->getNbinsX();
238  GCT_AllJets_nYCh = GCT_AllJets_QHist->getNbinsY();
239  }
240  if(GCT_TauJets_QHist){
241  GCT_TauJets_nXCh = GCT_TauJets_QHist->getNbinsX();
242  GCT_TauJets_nYCh = GCT_TauJets_QHist->getNbinsY();
243  }
244  if(GMT_QHist){
245  GMT_nXCh = GMT_QHist->getNbinsX();
246  GMT_nYCh = GMT_QHist->getNbinsY();
247  }
248 
249 
250  int GCT_IsoEm_nCh=0,GCT_NonIsoEm_nCh=0,GCT_AllJets_nCh=0,GCT_TauJets_nCh=0,GMT_nCh=0,GT_AlgoBits_nCh=0,GT_TechBits_nCh=0;
251 
252  if(GCT_IsoEm_nYCh)
253  GCT_IsoEm_nCh = GCT_IsoEm_nXCh*GCT_IsoEm_nYCh;
254  if(GCT_NonIsoEm_nYCh)
255  GCT_NonIsoEm_nCh = GCT_NonIsoEm_nXCh*GCT_NonIsoEm_nYCh;
256  if(GCT_AllJets_nYCh)
257  GCT_AllJets_nCh = GCT_AllJets_nXCh*GCT_AllJets_nYCh;
258  if(GCT_TauJets_nYCh)
259  GCT_TauJets_nCh = GCT_TauJets_nXCh*GCT_TauJets_nYCh;
260  if(GMT_nYCh)
261  GMT_nCh = GMT_nXCh*GMT_nYCh;
262  if(GT_AlgoBits_QHist) GT_AlgoBits_nCh = GT_AlgoBits_QHist->getNbinsX();
263  if(GT_TechBits_QHist) GT_TechBits_nCh = GT_TechBits_QHist->getNbinsX();
264 
265 
266 
267 
268 
269  //
270  // 00 MET Quality Tests
271  //
272 
273 
274 
275  // GCT uninstrumented regions for IsoEm, NonIsoEm, and TauJets
276  int nCh_no_inst = 144;
277 
278  //
279  // 01 NonIsoEM Quality Tests
280  //
281  if (GCT_NonIsoEm_QHist){
282  const QReport *GCT_NonIsoEm_DeadCh_QReport = GCT_NonIsoEm_QHist->getQReport("DeadChannels_GCT_2D_loose");
283  const QReport *GCT_NonIsoEm_HotCh_QReport = GCT_NonIsoEm_QHist->getQReport("HotChannels_GCT_2D");
284 
285  int GCT_NonIsoEm_nBadCh = 0;
286 
287  if (GCT_NonIsoEm_DeadCh_QReport) {
288  int GCT_NonIsoEm_nDeadCh = GCT_NonIsoEm_DeadCh_QReport->getBadChannels().size();
289  if( verbose_ ) cout << " GCT_NonIsoEm_nDeadCh: " << GCT_NonIsoEm_nDeadCh
290  << ", GCT_NonIsoEm_nCh: " << GCT_NonIsoEm_nCh
291  << ", GCT_NonIsoEm_DeadCh_efficiency: " << 1 - (float)GCT_NonIsoEm_nDeadCh/(float)GCT_NonIsoEm_nCh
292  << " GCT_NonIsoEm_DeadCh QTResult = " << GCT_NonIsoEm_DeadCh_QReport->getQTresult() << std::endl;
293 
294  GCT_NonIsoEm_nBadCh+=GCT_NonIsoEm_nDeadCh;
295  }
296 
297  if (GCT_NonIsoEm_HotCh_QReport) {
298  int GCT_NonIsoEm_nHotCh = GCT_NonIsoEm_HotCh_QReport->getBadChannels().size();
299  if( verbose_ ) cout << " GCT_NonIsoEm_nHotCh: " << GCT_NonIsoEm_nHotCh
300  << ", GCT_NonIsoEm_nCh: " << GCT_NonIsoEm_nCh
301  << ", GCT_NonIsoEm_HotCh_efficiency: " << 1 - (float)GCT_NonIsoEm_nHotCh/(float)GCT_NonIsoEm_nCh
302  << " GCT_NonIsoEm_HotCh QTResult = " << GCT_NonIsoEm_HotCh_QReport->getQTresult() << std::endl;
303 
304  GCT_NonIsoEm_nBadCh+=GCT_NonIsoEm_nHotCh;
305  }
306 
307  if( verbose_ ) std::cout << " GCT_NonIsoEm total efficiency = " << 1 - (float)GCT_NonIsoEm_nBadCh/(float)GCT_NonIsoEm_nCh << std::endl;
308 
309  double GCT_NonIsoEm_nentries = GCT_NonIsoEm_QHist->getEntries();
310  float nonisoResult = -1;
311  if( (counterLS_>=1000 && GCT_NonIsoEm_nentries==0) ) nonisoResult = 0;
312  if( (GCT_NonIsoEm_nentries>GCT_NonIsoEm_threshold_) ) nonisoResult = 1 - (float)(GCT_NonIsoEm_nBadCh-nCh_no_inst)/(float)(GCT_NonIsoEm_nCh-nCh_no_inst);
313  summaryContent[1] = ( nonisoResult < (1.0+1e-10) ) ? nonisoResult : 1.0;
314  }
315 
316 
317 
318 
319  //
320  // 02 IsoEM Quality Tests
321  //
322  if (GCT_IsoEm_QHist){
323  const QReport *GCT_IsoEm_DeadCh_QReport = GCT_IsoEm_QHist->getQReport("DeadChannels_GCT_2D_loose");
324  const QReport *GCT_IsoEm_HotCh_QReport = GCT_IsoEm_QHist->getQReport("HotChannels_GCT_2D");
325 
326  int GCT_IsoEm_nBadCh = 0;
327 
328  if (GCT_IsoEm_DeadCh_QReport) {
329  int GCT_IsoEm_nDeadCh = GCT_IsoEm_DeadCh_QReport->getBadChannels().size();
330  if( verbose_ ) cout << " GCT_IsoEm_nDeadCh: " << GCT_IsoEm_nDeadCh
331  << ", GCT_IsoEm_nCh: " << GCT_IsoEm_nCh
332  << ", GCT_IsoEm_DeadCh_efficiency: " << 1 - (float)GCT_IsoEm_nDeadCh/(float)GCT_IsoEm_nCh
333  << " GCT_IsoEm_DeadCh QTResult = " << GCT_IsoEm_DeadCh_QReport->getQTresult() << std::endl;
334 
335  GCT_IsoEm_nBadCh+=GCT_IsoEm_nDeadCh;
336  }
337 
338  if (GCT_IsoEm_HotCh_QReport) {
339  int GCT_IsoEm_nHotCh = GCT_IsoEm_HotCh_QReport->getBadChannels().size();
340  if( verbose_ ) cout << " GCT_IsoEm_nHotCh: " << GCT_IsoEm_nHotCh
341  << ", GCT_IsoEm_nCh: " << GCT_IsoEm_nCh
342  << ", GCT_IsoEm_HotCh_efficiency: " << 1 - (float)GCT_IsoEm_nHotCh/(float)GCT_IsoEm_nCh
343  << " GCT_IsoEm_HotCh QTResult = " << GCT_IsoEm_HotCh_QReport->getQTresult() << std::endl;
344 
345  GCT_IsoEm_nBadCh+=GCT_IsoEm_nHotCh;
346  }
347 
348  if( verbose_ ) std::cout << " GCT_IsoEm total efficiency = " << 1 - (float)GCT_IsoEm_nBadCh/(float)GCT_IsoEm_nCh << std::endl;
349 
350  double GCT_IsoEm_nentries = GCT_IsoEm_QHist->getEntries();
351  float isoResult = -1;
352  if( (counterLS_>=thresholdLS_ && GCT_IsoEm_nentries==0) ) isoResult = 0;
353  if( (GCT_IsoEm_nentries>GCT_IsoEm_threshold_) ) isoResult = 1 - (float)(GCT_IsoEm_nBadCh-nCh_no_inst)/(float)(GCT_IsoEm_nCh-nCh_no_inst);
354  summaryContent[2] = ( isoResult < (1.0+1e-10) ) ? isoResult : 1.0;
355  }
356 
357 
358 
359 
360  //
361  // 03 TauJets Quality Tests
362  //
363  if (GCT_TauJets_QHist){
364  const QReport *GCT_TauJets_DeadCh_QReport = GCT_TauJets_QHist->getQReport("DeadChannels_GCT_2D_loose");
365  const QReport *GCT_TauJets_HotCh_QReport = GCT_TauJets_QHist->getQReport("HotChannels_GCT_2D");
366 
367  int GCT_TauJets_nBadCh = 0;
368 
369  if (GCT_TauJets_DeadCh_QReport) {
370  int GCT_TauJets_nDeadCh = GCT_TauJets_DeadCh_QReport->getBadChannels().size();
371  if( verbose_ ) cout << " GCT_TauJets_nDeadCh: " << GCT_TauJets_nDeadCh
372  << ", GCT_TauJets_nCh: " << GCT_TauJets_nCh
373  << ", GCT_TauJets_DeadCh_efficiency: " << 1 - (float)GCT_TauJets_nDeadCh/(float)GCT_TauJets_nCh
374  << " GCT_TauJets_DeadCh QTResult = " << GCT_TauJets_DeadCh_QReport->getQTresult() << std::endl;
375 
376  GCT_TauJets_nBadCh+=GCT_TauJets_nDeadCh;
377  }
378 
379  if (GCT_TauJets_HotCh_QReport) {
380  int GCT_TauJets_nHotCh = GCT_TauJets_HotCh_QReport->getBadChannels().size();
381  if( verbose_ ) cout << " GCT_TauJets_nHotCh: " << GCT_TauJets_nHotCh
382  << ", GCT_TauJets_nCh: " << GCT_TauJets_nCh
383  << ", GCT_TauJets_HotCh_efficiency: " << 1 - (float)GCT_TauJets_nHotCh/(float)GCT_TauJets_nCh
384  << " GCT_TauJets_HotCh QTResult = " << GCT_TauJets_HotCh_QReport->getQTresult() << std::endl;
385 
386  GCT_TauJets_nBadCh+=GCT_TauJets_nHotCh;
387  }
388 
389  if( verbose_ ) std::cout << " GCT_TauJets total efficiency = " << 1 - (float)GCT_TauJets_nBadCh/(float)GCT_TauJets_nCh << std::endl;
390 
391  double GCT_TauJets_nentries = GCT_TauJets_QHist->getEntries();
392  float taujetsResult = -1;
393  if( (counterLS_>=thresholdLS_ && GCT_TauJets_nentries==0) ) taujetsResult = 0;
394  if( (GCT_TauJets_nentries>GCT_TauJets_threshold_) ) taujetsResult = 1 - (float)(GCT_TauJets_nBadCh-nCh_no_inst)/(float)(GCT_TauJets_nCh-nCh_no_inst);
395  summaryContent[3] = ( taujetsResult < (1.0+1e-10) ) ? taujetsResult : 1.0;
396  }
397 
398 
399 
400 
401  //
402  // 04 Jets Quality Tests
403  //
404  if (GCT_AllJets_QHist){
405  const QReport *GCT_AllJets_DeadCh_QReport = GCT_AllJets_QHist->getQReport("DeadChannels_GCT_2D_tight");
406  const QReport *GCT_AllJets_HotCh_QReport = GCT_AllJets_QHist->getQReport("HotChannels_GCT_2D");
407 
408  int GCT_AllJets_nBadCh = 0;
409 
410  if (GCT_AllJets_DeadCh_QReport) {
411  int GCT_AllJets_nDeadCh = GCT_AllJets_DeadCh_QReport->getBadChannels().size();
412  if( verbose_ ) cout << " GCT_AllJets_nDeadCh: " << GCT_AllJets_nDeadCh
413  << ", GCT_AllJets_nCh: " << GCT_AllJets_nCh
414  << ", GCT_AllJets_DeadCh_efficiency: " << 1 - (float)GCT_AllJets_nDeadCh/(float)GCT_AllJets_nCh
415  << " GCT_AllJets_DeadCh QTResult = " << GCT_AllJets_DeadCh_QReport->getQTresult() << std::endl;
416 
417  GCT_AllJets_nBadCh+=GCT_AllJets_nDeadCh;
418  }
419 
420  if (GCT_AllJets_HotCh_QReport) {
421  int GCT_AllJets_nHotCh = GCT_AllJets_HotCh_QReport->getBadChannels().size();
422  if( verbose_ ) cout << " GCT_AllJets_nHotCh: " << GCT_AllJets_nHotCh
423  << ", GCT_AllJets_nCh: " << GCT_AllJets_nCh
424  << ", GCT_AllJets_HotCh_efficiency: " << 1 - (float)GCT_AllJets_nHotCh/(float)GCT_AllJets_nCh
425  << " GCT_AllJets_HotCh QTResult = " << GCT_AllJets_HotCh_QReport->getQTresult() << std::endl;
426 
427  GCT_AllJets_nBadCh+=GCT_AllJets_nHotCh;
428  }
429 
430  if( verbose_ ) std::cout << " GCT_AllJets total efficiency = " << 1 - (float)GCT_AllJets_nBadCh/(float)GCT_AllJets_nCh << std::endl;
431 
432  double GCT_AllJets_nentries = GCT_AllJets_QHist->getEntries();
433  float jetsResult = -1;
434  if( (counterLS_>=thresholdLS_ && GCT_AllJets_nentries==0) ) jetsResult = 0;
435  if( (GCT_AllJets_nentries>GCT_AllJets_threshold_) ) jetsResult = 1 - (float)GCT_AllJets_nBadCh/(float)GCT_AllJets_nCh;
436  summaryContent[4] = ( jetsResult < (1.0+1e-10) ) ? jetsResult : 1.0;
437  }
438 
439 
440 
441 
442  //
443  // 05 Muon Quality Tests
444  //
445 
446  if (GMT_QHist){
447  const QReport *GMT_DeadCh_QReport = GMT_QHist->getQReport("DeadChannels_GMT_2D");
448  const QReport *GMT_HotCh_QReport = GMT_QHist->getQReport("HotChannels_GMT_2D");
449 
450  int GMT_nBadCh = 0;
451 
452  if (GMT_DeadCh_QReport) {
453  int GMT_nDeadCh = GMT_DeadCh_QReport->getBadChannels().size();
454  if( verbose_ ) cout << " GMT_nDeadCh: " << GMT_nDeadCh
455  << ", GMT_nCh: " << GMT_nCh
456  << ", GMT_DeadCh_efficiency: " << 1 - (float)GMT_nDeadCh/(float)GMT_nCh
457  << " GMT_DeadCh QTResult = " << GMT_DeadCh_QReport->getQTresult() << std::endl;
458 
459  GMT_nBadCh+=GMT_nDeadCh;
460  }
461 
462  if (GMT_HotCh_QReport) {
463  int GMT_nHotCh = GMT_HotCh_QReport->getBadChannels().size();
464  if( verbose_ ) cout << " GMT_nHotCh: " << GMT_nHotCh
465  << ", GMT_nCh: " << GMT_nCh
466  << ", GMT_HotCh_efficiency: " << 1 - (float)GMT_nHotCh/(float)GMT_nCh
467  << " GMT_HotCh QTResult = " << GMT_HotCh_QReport->getQTresult() << std::endl;
468 
469  GMT_nBadCh+=GMT_nHotCh;
470  }
471 
472  if( verbose_ ) std::cout << " GMT total efficiency = " << 1 - (float)GMT_nBadCh/(float)GMT_nCh << std::endl;
473 
474  double GMT_nentries = GMT_QHist->getEntries();
475  float muonResult = -1;
476  if( (counterLS_>=thresholdLS_ && GMT_nentries==0) ) muonResult = 0;
477  if( (GMT_nentries>GMT_Muons_threshold_) ) muonResult = 1.5*(1 - (float)GMT_nBadCh/(float)GMT_nCh);
478  summaryContent[5] = ( muonResult < (1.0+1e-10) ) ? muonResult : 1.0;
479  }
480 
481 
482 
483  //
484  // 06 GT Quality Tests
485  //
486  double gt_algobits_prob = 0;
487  double gt_techbits_prob = 0;
488 
489  if (GT_AlgoBits_QHist){
490  gt_algobits_prob = 1;
491  const QReport *GT_AlgoBits_QReport = GT_AlgoBits_QHist->getQReport("CompareHist_GT");
492  if (GT_AlgoBits_QReport) gt_algobits_prob = GT_AlgoBits_QReport->getQTresult();
493  }
494  if (GT_TechBits_QHist){
495  gt_techbits_prob = 1;
496  const QReport *GT_TechBits_QReport = GT_TechBits_QHist->getQReport("CompareHist_GT");
497  if (GT_TechBits_QReport) gt_techbits_prob = GT_TechBits_QReport->getQTresult();
498  }
499 
500  if( gt_algobits_prob!=-1 && gt_techbits_prob!=-1 ) summaryContent[6] = 0.5*( gt_algobits_prob + gt_techbits_prob );
501  else if( GT_AlgoBits_QHist && GT_TechBits_QHist ) summaryContent[6] = 1;
502  else summaryContent[6] = 0;
503 
504 
505 
506 
507  //
508  // 07 - 17 L1T EMU Quality Tests
509  //
510 
511 
512 
513  //
514  // Apply masks for data and emulator
515  //
516 
517  // Data Mask
518  unsigned int NumDataMask = dataMask.size();
519  std::vector<string> maskedData;
520  for( unsigned int i=0; i<NumDataMask; i++ ){
521  std::string mask_sys_tmp = dataMask[i];
522  std::string mask_sys = StringToUpper(mask_sys_tmp);
523  switch(s_mapDataValues[mask_sys])
524  {
525  case data_empty:
526  break;
527  case data_all:
528  for( int m=0; m<7; m++ ) summaryContent[m] = -2;
529  maskedData.push_back(mask_sys_tmp);
530  break;
531  case data_gt:
532  summaryContent[6]=-2;
533  maskedData.push_back(mask_sys_tmp);
534  break;
535  case data_muons:
536  summaryContent[5]=-2;
537  maskedData.push_back(mask_sys_tmp);
538  break;
539  case data_jets:
540  summaryContent[4]=-2;
541  maskedData.push_back(mask_sys_tmp);
542  break;
543  case data_taujets:
544  summaryContent[3]=-2;
545  maskedData.push_back(mask_sys_tmp);
546  break;
547  case data_isoem:
548  summaryContent[2]=-2;
549  maskedData.push_back(mask_sys_tmp);
550  break;
551  case data_nonisoem:
552  summaryContent[1]=-2;
553  maskedData.push_back(mask_sys_tmp);
554  break;
555  case data_met:
556  summaryContent[0]=-2;
557  maskedData.push_back(mask_sys_tmp);
558  break;
559  default:
560  if( verbose_ ) cout << " User input mask '" << mask_sys_tmp << "' is not recognized." << endl;
561  break;
562  }
563  }
564 
565  // Emulator Mask
566  unsigned int NumEmulMask = emulMask.size();
567  std::vector<string> maskedEmul;
568  for( unsigned int i=0; i<NumEmulMask; i++ ){
569  std::string mask_sys_tmp = emulMask[i];
570  std::string mask_sys = StringToUpper(mask_sys_tmp);
571  switch(s_mapEmulValues[mask_sys])
572  {
573  case emul_empty:
574  break;
575  case emul_all:
576  for( int m=7; m<18; m++ ) summaryContent[m] = -2;
577  maskedEmul.push_back(mask_sys_tmp);
578  break;
579  case emul_glt:
580  summaryContent[7]=-2;
581  maskedEmul.push_back(mask_sys_tmp);
582  break;
583  case emul_gmt:
584  summaryContent[8]=-2;
585  maskedEmul.push_back(mask_sys_tmp);
586  break;
587  case emul_rpc:
588  summaryContent[9]=-2;
589  maskedEmul.push_back(mask_sys_tmp);
590  break;
591  case emul_ctp:
592  summaryContent[10]=-2;
593  maskedEmul.push_back(mask_sys_tmp);
594  break;
595  case emul_ctf:
596  summaryContent[11]=-2;
597  maskedEmul.push_back(mask_sys_tmp);
598  break;
599  case emul_dtp:
600  summaryContent[12]=-2;
601  maskedEmul.push_back(mask_sys_tmp);
602  break;
603  case emul_dtf:
604  summaryContent[13]=-2;
605  maskedEmul.push_back(mask_sys_tmp);
606  break;
607  case emul_htp:
608  summaryContent[14]=-2;
609  maskedEmul.push_back(mask_sys_tmp);
610  break;
611  case emul_etp:
612  summaryContent[15]=-2;
613  maskedEmul.push_back(mask_sys_tmp);
614  break;
615  case emul_gct:
616  summaryContent[16]=-2;
617  maskedEmul.push_back(mask_sys_tmp);
618  break;
619  case emul_rct:
620  summaryContent[17]=-2;
621  maskedEmul.push_back(mask_sys_tmp);
622  break;
623  default:
624  if( verbose_ ) cout << " User input mask '" << mask_sys_tmp << "' is not recognized." << endl;
625  break;
626  }
627  }
628 
629 
630  int numUnMaskedSystems = 0;
631  for( int m=0; m<nsys_; m++ ){
632  if( summaryContent[m]>-1e-5){
633  if( m<7 ){
635  numUnMaskedSystems++;
636  }
637 
639  }
640  }
641 
642 
643 
644  // For now, only use L1T for reportSummary value
645  reportSummary = summarySum/float(numUnMaskedSystems);
647 
648 
649  //L1T summary map
653  reportSummaryMap_->setBinContent(1,8, summaryContent[3]); // TauJets
655  reportSummaryMap_->setBinContent(1,6, summaryContent[1]); // NonIsoEM
657 
658  //L1TEMU summary map
670 
671 
672  if( verbose_ ){
673  if( maskedData.size()>0 ){
674  std::cout << " Masked Data Systems = ";
675  for( unsigned int i=0; i<maskedData.size(); i++ ){
676  if( i!=maskedData.size()-1 ){
677  std::cout << maskedData[i] << ", ";
678  }
679  else {
680  std::cout << maskedData[i] << std::endl;
681  }
682  }
683  }
684  if( maskedEmul.size()>0 ){
685  std::cout << " Masked Emul Systems = ";
686  for( unsigned int i=0; i<maskedEmul.size(); i++ ){
687  if( i!=maskedEmul.size()-1 ){
688  std::cout << maskedEmul[i] << ", ";
689  }
690  else {
691  std::cout << maskedEmul[i] << std::endl;
692  }
693  }
694  }
695 
696  std::cout << " L1T " << std::endl;
697  std::cout << " summaryContent[0] = MET = " << summaryContent[0] << std::endl;
698  std::cout << " summaryContent[1] = NonIsoEM = " << summaryContent[1] << std::endl;
699  std::cout << " summaryContent[2] = IsoEM = " << summaryContent[2] << std::endl;
700  std::cout << " summaryContent[3] = TauJets = " << summaryContent[3] << std::endl;
701  std::cout << " summaryContent[4] = Jets = " << summaryContent[4] << std::endl;
702  std::cout << " summaryContent[5] = Muons = " << summaryContent[5] << std::endl;
703  std::cout << " summaryContent[6] = GT = " << summaryContent[6] << std::endl;
704  std::cout << " L1T EMU" << std::endl;
705  std::cout << " summaryContent[7] = GLT = " << summaryContent[7] << std::endl;
706  std::cout << " summaryContent[8] = GMT = " << summaryContent[8] << std::endl;
707  std::cout << " summaryContent[9] = RPC = " << summaryContent[9] << std::endl;
708  std::cout << " summaryContent[10] = CTP = " << summaryContent[10] << std::endl;
709  std::cout << " summaryContent[11] = CTF = " << summaryContent[11] << std::endl;
710  std::cout << " summaryContent[12] = DTP = " << summaryContent[12] << std::endl;
711  std::cout << " summaryContent[13] = DTF = " << summaryContent[13] << std::endl;
712  std::cout << " summaryContent[14] = HTP = " << summaryContent[14] << std::endl;
713  std::cout << " summaryContent[15] = ETP = " << summaryContent[15] << std::endl;
714  std::cout << " summaryContent[16] = GCT = " << summaryContent[16] << std::endl;
715  std::cout << " summaryContent[17] = RCT = " << summaryContent[17] << std::endl;
716  }
717 
718 }
int i
Definition: DBlmapReader.cc:9
const QReport * getQReport(const std::string &qtname) const
get QReport corresponding to &lt;qtname&gt; (null pointer if QReport does not exist)
void setBinContent(int binx, double content)
set content of bin (1-D)
std::map< std::string, EmulValue > s_mapEmulValues
MonitorElement * reportSummaryContent_[20]
Float_t summaryContent[20]
int getNbinsY(void) const
get # of bins in Y-axis
void Fill(long long x)
MonitorElement * reportSummary_
static const int nsys_
std::vector< std::string > emulMask
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
Definition: L1GtFwd.h:20
std::map< std::string, DataValue > s_mapDataValues
const std::vector< DQMChannel > & getBadChannels(void) const
Definition: QReport.h:33
int k[5][pyjets_maxn]
int thresholdLS_
units of lumi sections
std::vector< std::string > dataMask
float getQTresult(void) const
get test result i.e. prob value
Definition: QReport.h:20
MonitorElement * reportSummaryMap_
int getNbinsX(void) const
get # of bins in X-axis
perl if(1 lt scalar(@::datatypes))
Definition: edlooper.cc:31
tuple cout
Definition: gather_cfg.py:41
std::string StringToUpper(std::string strToConvert)
void L1TEventInfoClient::endRun ( const edm::Run r,
const edm::EventSetup c 
)
protectedvirtual

EndRun.

Reimplemented from edm::EDAnalyzer.

Definition at line 740 of file L1TEventInfoClient.cc.

740  {
741 }
TH1F * L1TEventInfoClient::get1DHisto ( std::string  meName,
DQMStore dbi 
)
private

Definition at line 749 of file L1TEventInfoClient.cc.

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

750 {
751 
752  MonitorElement * me_ = dbi->get(meName);
753 
754  if (!me_) {
755  if(verbose_) cout << "ME NOT FOUND." << endl;
756  return NULL;
757  }
758 
759  return me_->getTH1F();
760 }
#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 * L1TEventInfoClient::get1DProfile ( std::string  meName,
DQMStore dbi 
)
private

Definition at line 793 of file L1TEventInfoClient.cc.

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

794 {
795 
796 
797  MonitorElement * me_ = dbi->get(meName);
798 
799  if (!me_) {
800  if(verbose_) cout << "ME NOT FOUND." << endl;
801  return NULL;
802  }
803 
804  return me_->getTProfile();
805 }
#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 * L1TEventInfoClient::get2DHisto ( std::string  meName,
DQMStore dbi 
)
private

Definition at line 762 of file L1TEventInfoClient.cc.

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

763 {
764 
765 
766  MonitorElement * me_ = dbi->get(meName);
767 
768  if (!me_) {
769  if(verbose_) cout << "ME NOT FOUND." << endl;
770  return NULL;
771  }
772 
773  return me_->getTH2F();
774 }
#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 * L1TEventInfoClient::get2DProfile ( std::string  meName,
DQMStore dbi 
)
private

Definition at line 778 of file L1TEventInfoClient.cc.

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

779 {
780 
781 
782  MonitorElement * me_ = dbi->get(meName);
783 
784  if (!me_) {
785  if(verbose_) cout << "ME NOT FOUND." << endl;
786  return NULL;
787  }
788 
789  return me_->getTProfile2D();
790 }
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 L1TEventInfoClient::initialize ( )
private

Definition at line 41 of file L1TEventInfoClient.cc.

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

41  {
42 
43  counterLS_=0;
44  counterEvt_=0;
45 
46  // get back-end interface
48 
49  // base folder for the contents of this job
50  verbose_ = parameters_.getUntrackedParameter<bool>("verbose", false);
51 
52  monitorDir_ = parameters_.getUntrackedParameter<string>("monitorDir","");
53  if(verbose_) cout << "Monitor dir = " << monitorDir_ << endl;
54 
55  prescaleLS_ = parameters_.getUntrackedParameter<int>("prescaleLS", -1);
56  if(verbose_) cout << "DQM lumi section prescale = " << prescaleLS_ << " lumi section(s)"<< endl;
57 
58  prescaleEvt_ = parameters_.getUntrackedParameter<int>("prescaleEvt", -1);
59  if(verbose_) cout << "DQM event prescale = " << prescaleEvt_ << " events(s)"<< endl;
60 
61  thresholdLS_ = parameters_.getUntrackedParameter<int>("thresholdLS", 1);
62  if(verbose_) cout << "Minimum LS required to perform QTests = " << thresholdLS_ << " lumi section(s)"<< endl;
63 
64  GCT_NonIsoEm_threshold_ = parameters_.getUntrackedParameter<double>("GCT_NonIsoEm_threshold",100000);
65  GCT_IsoEm_threshold_ = parameters_.getUntrackedParameter<double>("GCT_IsoEm_threshold",1000000);
66  GCT_TauJets_threshold_ = parameters_.getUntrackedParameter<double>("GCT_TauJets_threshold",100000);
67  GCT_AllJets_threshold_ = parameters_.getUntrackedParameter<double>("GCT_AllJets_threshold",100000);
68  GMT_Muons_threshold_ = parameters_.getUntrackedParameter<double>("GMT_Muons_threshold",100000);
69 
70  if(verbose_){
71  cout << " Thresholds are as follows:" << endl;
72  cout << " \t GCT_NonIsoEm_threshold_: " << GCT_NonIsoEm_threshold_ << endl;
73  cout << " \t GCT_IsoEm_threshold_: " << GCT_IsoEm_threshold_ << endl;
74  cout << " \t GCT_TauJets_threshold_: " << GCT_TauJets_threshold_ << endl;
75  cout << " \t GCT_AllJets_threshold_: " << GCT_AllJets_threshold_ << endl;
76  cout << " \t GMT_Muons_threshold_: " << GMT_Muons_threshold_ << endl;
77  }
78 
79  std::vector<string> emptyMask;
80 
81  dataMask = parameters_.getUntrackedParameter<std::vector<string> >("dataMaskedSystems", emptyMask);
82  emulMask = parameters_.getUntrackedParameter<std::vector<string> >("emulatorMaskedSystems", emptyMask);
83 
84  s_mapDataValues["EMPTY"] = data_empty;
85  s_mapDataValues["ALL"] = data_all;
86  s_mapDataValues["GT"] = data_gt;
87  s_mapDataValues["MUONS"] = data_muons;
88  s_mapDataValues["JETS"] = data_jets;
89  s_mapDataValues["TAUJETS"] = data_taujets;
90  s_mapDataValues["ISOEM"] = data_isoem;
91  s_mapDataValues["NONISOEM"] = data_nonisoem;
92  s_mapDataValues["MET"] = data_met;
93 
94  s_mapEmulValues["EMPTY"] = emul_empty;
95  s_mapEmulValues["ALL"] = emul_all;
96  s_mapEmulValues["DTTF"] = emul_dtf;
97  s_mapEmulValues["DTTPG"] = emul_dtp;
98  s_mapEmulValues["CSCTF"] = emul_ctf;
99  s_mapEmulValues["CSCTPG"] = emul_ctp;
100  s_mapEmulValues["RPC"] = emul_rpc;
101  s_mapEmulValues["GMT"] = emul_gmt;
102  s_mapEmulValues["ECAL"] = emul_etp;
103  s_mapEmulValues["HCAL"] = emul_htp;
104  s_mapEmulValues["RCT"] = emul_rct;
105  s_mapEmulValues["GCT"] = emul_gct;
106  s_mapEmulValues["GLT"] = emul_glt;
107 
108 }
edm::ParameterSet parameters_
T getUntrackedParameter(std::string const &, T const &) const
std::map< std::string, EmulValue > s_mapEmulValues
int prescaleEvt_
units of lumi sections
std::vector< std::string > emulMask
std::map< std::string, DataValue > s_mapDataValues
int thresholdLS_
units of lumi sections
std::vector< std::string > dataMask
tuple cout
Definition: gather_cfg.py:41
string L1TEventInfoClient::StringToUpper ( std::string  strToConvert)
private

Definition at line 807 of file L1TEventInfoClient.cc.

References i.

808 {//change each element of the string to upper case
809  for(unsigned int i=0;i<strToConvert.length();i++)
810  {
811  strToConvert[i] = toupper(strToConvert[i]);
812  }
813  return strToConvert;//return the converted string
814 }
int i
Definition: DBlmapReader.cc:9

Member Data Documentation

int L1TEventInfoClient::counterEvt_
private

counter

Definition at line 69 of file L1TEventInfoClient.h.

int L1TEventInfoClient::counterLS_
private

Definition at line 68 of file L1TEventInfoClient.h.

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

Definition at line 97 of file L1TEventInfoClient.h.

DQMStore* L1TEventInfoClient::dbe_
private

Definition at line 65 of file L1TEventInfoClient.h.

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

Definition at line 98 of file L1TEventInfoClient.h.

double L1TEventInfoClient::GCT_AllJets_threshold_
private

Definition at line 78 of file L1TEventInfoClient.h.

double L1TEventInfoClient::GCT_IsoEm_threshold_
private

Definition at line 76 of file L1TEventInfoClient.h.

double L1TEventInfoClient::GCT_NonIsoEm_threshold_
private

Definition at line 75 of file L1TEventInfoClient.h.

double L1TEventInfoClient::GCT_TauJets_threshold_
private

Definition at line 77 of file L1TEventInfoClient.h.

double L1TEventInfoClient::GMT_Muons_threshold_
private

Definition at line 79 of file L1TEventInfoClient.h.

std::string L1TEventInfoClient::monitorDir_
private

Definition at line 66 of file L1TEventInfoClient.h.

int L1TEventInfoClient::nChannels
private

prescale on number of events

Definition at line 73 of file L1TEventInfoClient.h.

const int L1TEventInfoClient::nsys_ =18
staticprivate

Definition at line 92 of file L1TEventInfoClient.h.

edm::ParameterSet L1TEventInfoClient::parameters_
private
int L1TEventInfoClient::prescaleEvt_
private

units of lumi sections

Definition at line 72 of file L1TEventInfoClient.h.

int L1TEventInfoClient::prescaleLS_
private

counter

Definition at line 70 of file L1TEventInfoClient.h.

Float_t L1TEventInfoClient::reportSummary
private

Definition at line 94 of file L1TEventInfoClient.h.

MonitorElement* L1TEventInfoClient::reportSummary_
private

Definition at line 102 of file L1TEventInfoClient.h.

MonitorElement* L1TEventInfoClient::reportSummaryContent_[20]
private

Definition at line 103 of file L1TEventInfoClient.h.

MonitorElement* L1TEventInfoClient::reportSummaryMap_
private

Definition at line 104 of file L1TEventInfoClient.h.

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

Definition at line 89 of file L1TEventInfoClient.h.

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

Definition at line 90 of file L1TEventInfoClient.h.

Float_t L1TEventInfoClient::summaryContent[20]
private

Definition at line 96 of file L1TEventInfoClient.h.

Float_t L1TEventInfoClient::summarySum
private

Definition at line 95 of file L1TEventInfoClient.h.

int L1TEventInfoClient::thresholdLS_
private

units of lumi sections

Definition at line 71 of file L1TEventInfoClient.h.

bool L1TEventInfoClient::verbose_
private

Definition at line 67 of file L1TEventInfoClient.h.