CMS 3D CMS Logo

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

#include <EBSummaryClient.h>

Inheritance diagram for EBSummaryClient:
EBClient

Public Member Functions

void analyze (void)
 Analyze. More...
 
void beginJob (void)
 BeginJob. More...
 
void beginRun (void)
 BeginRun. More...
 
void cleanup (void)
 Cleanup. More...
 
 EBSummaryClient (const edm::ParameterSet &ps)
 Constructor. More...
 
void endJob (void)
 EndJob. More...
 
void endRun (void)
 EndRun. More...
 
int getEvtPerJob ()
 Get Functions. More...
 
int getEvtPerRun ()
 Returns the number of processed events in this Run. More...
 
void setFriends (std::vector< EBClient * > clients)
 Set Clients. More...
 
void setup (void)
 Setup. More...
 
virtual ~EBSummaryClient ()
 Destructor. More...
 
- Public Member Functions inherited from EBClient
virtual ~EBClient (void)
 

Private Attributes

std::vector< EBClient * > clients_
 
bool cloneME_
 
bool debug_
 
DQMStoredqmStore_
 
bool enableCleanup_
 
TProfile2D * hot01_ [36]
 
TProfile2D * hpot01_ [36]
 
TProfile2D * htmt01_ [36]
 
TProfile2D * httt01_ [36]
 
int ievt_
 
int jevt_
 
std::vector< int > laserWavelengths_
 
MonitorElementmeGlobalSummary_
 
MonitorElementmeIntegrity_
 
MonitorElementmeIntegrityErr_
 
MonitorElementmeIntegrityPN_
 
MonitorElementmeLaserL1_
 
MonitorElementmeLaserL1Ampl_
 
MonitorElementmeLaserL1AmplOverPN_
 
MonitorElementmeLaserL1Err_
 
MonitorElementmeLaserL1PN_
 
MonitorElementmeLaserL1PNErr_
 
MonitorElementmeLaserL1Timing_
 
MonitorElementmeLaserL2_
 
MonitorElementmeLaserL2Ampl_
 
MonitorElementmeLaserL2AmplOverPN_
 
MonitorElementmeLaserL2Err_
 
MonitorElementmeLaserL2PN_
 
MonitorElementmeLaserL2PNErr_
 
MonitorElementmeLaserL2Timing_
 
MonitorElementmeLaserL3_
 
MonitorElementmeLaserL3Ampl_
 
MonitorElementmeLaserL3AmplOverPN_
 
MonitorElementmeLaserL3Err_
 
MonitorElementmeLaserL3PN_
 
MonitorElementmeLaserL3PNErr_
 
MonitorElementmeLaserL3Timing_
 
MonitorElementmeLaserL4_
 
MonitorElementmeLaserL4Ampl_
 
MonitorElementmeLaserL4AmplOverPN_
 
MonitorElementmeLaserL4Err_
 
MonitorElementmeLaserL4PN_
 
MonitorElementmeLaserL4PNErr_
 
MonitorElementmeLaserL4Timing_
 
MonitorElementmeOccupancy1D_
 
MonitorElementmeOccupancy_
 
MonitorElementmeOccupancyPN_
 
MonitorElementmePedestalG01_
 
MonitorElementmePedestalG06_
 
MonitorElementmePedestalG12_
 
MonitorElementmePedestalOnline_
 
MonitorElementmePedestalOnlineErr_
 
MonitorElementmePedestalOnlineMean_
 
MonitorElementmePedestalOnlineRMS_
 
MonitorElementmePedestalOnlineRMSMap_
 
MonitorElementmePedestalPNG01_
 
MonitorElementmePedestalPNG16_
 
MonitorElementmeRecHitEnergy_
 
MonitorElementmeStatusFlags_
 
MonitorElementmeStatusFlagsErr_
 
MonitorElementmeSummaryErr_
 
MonitorElementmeTestPulseAmplG01_
 
MonitorElementmeTestPulseAmplG06_
 
MonitorElementmeTestPulseAmplG12_
 
MonitorElementmeTestPulseG01_
 
MonitorElementmeTestPulseG06_
 
MonitorElementmeTestPulseG12_
 
MonitorElementmeTestPulsePNG01_
 
MonitorElementmeTestPulsePNG16_
 
MonitorElementmeTiming_
 
MonitorElementmeTimingMean1D_
 
MonitorElementmeTimingMean_
 
MonitorElementmeTimingRMS1D_
 
MonitorElementmeTimingRMS_
 
MonitorElementmeTriggerTowerEmulError_
 
MonitorElementmeTriggerTowerEt_
 
MonitorElementmeTriggerTowerNonSingleTiming_
 
MonitorElementmeTriggerTowerTiming_
 
std::vector< int > MGPAGains_
 
std::vector< int > MGPAGainsPN_
 
TH1F * norm01_
 
std::string prefixME_
 
bool produceReports_
 
bool reducedReports_
 
std::string subfolder_
 
std::vector< int > superModules_
 
TH1F * synch01_
 
float synchErrorThreshold_
 
int timingNHitThreshold_
 
bool verbose_
 

Detailed Description

Definition at line 31 of file EBSummaryClient.h.

Constructor & Destructor Documentation

EBSummaryClient::EBSummaryClient ( const edm::ParameterSet ps)

Constructor.

Definition at line 42 of file EBSummaryClient.cc.

References cloneME_, debug_, enableCleanup_, edm::ParameterSet::getUntrackedParameter(), hpot01_, htmt01_, httt01_, i, ecalpyutils::ism(), laserWavelengths_, meGlobalSummary_, meIntegrity_, meIntegrityErr_, meIntegrityPN_, meLaserL1_, meLaserL1Ampl_, meLaserL1AmplOverPN_, meLaserL1Err_, meLaserL1PN_, meLaserL1PNErr_, meLaserL1Timing_, meLaserL2_, meLaserL2Ampl_, meLaserL2AmplOverPN_, meLaserL2Err_, meLaserL2PN_, meLaserL2PNErr_, meLaserL2Timing_, meLaserL3_, meLaserL3Ampl_, meLaserL3AmplOverPN_, meLaserL3Err_, meLaserL3PN_, meLaserL3PNErr_, meLaserL3Timing_, meLaserL4_, meLaserL4Ampl_, meLaserL4AmplOverPN_, meLaserL4Err_, meLaserL4PN_, meLaserL4PNErr_, meLaserL4Timing_, meOccupancy1D_, meOccupancy_, meOccupancyPN_, mePedestalG01_, mePedestalG06_, mePedestalG12_, mePedestalOnline_, mePedestalOnlineErr_, mePedestalOnlineMean_, mePedestalOnlineRMS_, mePedestalOnlineRMSMap_, mePedestalPNG01_, mePedestalPNG16_, meRecHitEnergy_, meStatusFlags_, meStatusFlagsErr_, meSummaryErr_, meTestPulseAmplG01_, meTestPulseAmplG06_, meTestPulseAmplG12_, meTestPulseG01_, meTestPulseG06_, meTestPulseG12_, meTestPulsePNG01_, meTestPulsePNG16_, meTiming_, meTimingMean1D_, meTimingMean_, meTimingRMS1D_, meTimingRMS_, meTriggerTowerEmulError_, meTriggerTowerEt_, meTriggerTowerNonSingleTiming_, meTriggerTowerTiming_, MGPAGains_, MGPAGainsPN_, prefixME_, produceReports_, reducedReports_, subfolder_, superModules_, synchErrorThreshold_, timingNHitThreshold_, and verbose_.

42  {
43 
44  // cloneME switch
45  cloneME_ = ps.getUntrackedParameter<bool>("cloneME", true);
46 
47  // verbose switch
48  verbose_ = ps.getUntrackedParameter<bool>("verbose", true);
49 
50  // debug switch
51  debug_ = ps.getUntrackedParameter<bool>("debug", false);
52 
53  // prefixME path
54  prefixME_ = ps.getUntrackedParameter<std::string>("prefixME", "");
55 
56  subfolder_ = ps.getUntrackedParameter<std::string>("subfolder", "");
57 
58  // enableCleanup_ switch
59  enableCleanup_ = ps.getUntrackedParameter<bool>("enableCleanup", false);
60 
61  produceReports_ = ps.getUntrackedParameter<bool>("produceReports", true);
62 
63  reducedReports_ = ps.getUntrackedParameter<bool>("reducedReports", false);
64 
65  // vector of selected Super Modules (Defaults to all 36).
66  superModules_.reserve(36);
67  for ( unsigned int i = 1; i <= 36; i++ ) superModules_.push_back(i);
68  superModules_ = ps.getUntrackedParameter<std::vector<int> >("superModules", superModules_);
69 
70  laserWavelengths_.reserve(4);
71  for ( unsigned int i = 1; i <= 4; i++ ) laserWavelengths_.push_back(i);
72  laserWavelengths_ = ps.getUntrackedParameter<std::vector<int> >("laserWavelengths", laserWavelengths_);
73 
74  MGPAGains_.reserve(3);
75  for ( unsigned int i = 1; i <= 3; i++ ) MGPAGains_.push_back(i);
76  MGPAGains_ = ps.getUntrackedParameter<std::vector<int> >("MGPAGains", MGPAGains_);
77 
78  MGPAGainsPN_.reserve(2);
79  for ( unsigned int i = 1; i <= 3; i++ ) MGPAGainsPN_.push_back(i);
80  MGPAGainsPN_ = ps.getUntrackedParameter<std::vector<int> >("MGPAGainsPN", MGPAGainsPN_);
81 
82  timingNHitThreshold_ = ps.getUntrackedParameter<int>("timingNHitThreshold", 5);
83 
84  synchErrorThreshold_ = ps.getUntrackedParameter<double>("synchErrorThreshold", 0.01);
85 
86  // summary maps
87  meIntegrity_ = 0;
88  meIntegrityPN_ = 0;
89  meOccupancy_ = 0;
90  meOccupancyPN_ = 0;
91  meStatusFlags_ = 0;
96 
97  meLaserL1_ = 0;
98  meLaserL1PN_ = 0;
99  meLaserL1Ampl_ = 0;
100  meLaserL1Timing_ = 0;
102 
103  meLaserL2_ = 0;
104  meLaserL2PN_ = 0;
105  meLaserL2Ampl_ = 0;
106  meLaserL2Timing_ = 0;
108 
109  meLaserL3_ = 0;
110  meLaserL3PN_ = 0;
111  meLaserL3Ampl_ = 0;
112  meLaserL3Timing_ = 0;
114 
115  meLaserL4_ = 0;
116  meLaserL4PN_ = 0;
117  meLaserL4Ampl_ = 0;
118  meLaserL4Timing_ = 0;
120 
121  mePedestalG01_ = 0;
122  mePedestalG06_ = 0;
123  mePedestalG12_ = 0;
124  mePedestalPNG01_ = 0;
125  mePedestalPNG16_ = 0;
126  meTestPulseG01_ = 0;
127  meTestPulseG06_ = 0;
128  meTestPulseG12_ = 0;
129  meTestPulsePNG01_ = 0;
130  meTestPulsePNG16_ = 0;
134  meGlobalSummary_ = 0;
135 
136  meRecHitEnergy_ = 0;
137  meTiming_ = 0;
138  meTimingMean1D_ = 0;
139  meTimingRMS1D_ = 0;
140  meTimingMean_ = 0;
141  meTimingRMS_ = 0;
142  meTriggerTowerEt_ = 0;
146 
147  // summary errors
148  meIntegrityErr_ = 0;
149  meOccupancy1D_ = 0;
150  meStatusFlagsErr_ = 0;
152  meLaserL1Err_ = 0;
153  meLaserL1PNErr_ = 0;
154  meLaserL2Err_ = 0;
155  meLaserL2PNErr_ = 0;
156  meLaserL3Err_ = 0;
157  meLaserL3PNErr_ = 0;
158  meLaserL4Err_ = 0;
159  meLaserL4PNErr_ = 0;
160 
161  meSummaryErr_ = 0;
162 
163  // additional histograms from tasks
164  for ( unsigned int i=0; i<superModules_.size(); i++ ) {
165 
166  int ism = superModules_[i];
167 
168  hpot01_[ism-1] = 0;
169  httt01_[ism-1] = 0;
170  htmt01_[ism-1] = 0;
171 
172  }
173 }
MonitorElement * mePedestalOnlineRMS_
MonitorElement * meLaserL4PNErr_
T getUntrackedParameter(std::string const &, T const &) const
int i
Definition: DBlmapReader.cc:9
MonitorElement * meOccupancyPN_
MonitorElement * meRecHitEnergy_
MonitorElement * meTriggerTowerEt_
MonitorElement * meLaserL3_
MonitorElement * meTestPulseAmplG01_
TProfile2D * httt01_[36]
MonitorElement * meTestPulseG12_
MonitorElement * meLaserL4AmplOverPN_
MonitorElement * mePedestalPNG01_
MonitorElement * meLaserL1Timing_
MonitorElement * meTimingMean_
MonitorElement * meStatusFlagsErr_
MonitorElement * meLaserL1_
MonitorElement * meIntegrity_
MonitorElement * mePedestalOnlineErr_
MonitorElement * mePedestalG06_
MonitorElement * meOccupancy_
MonitorElement * meTestPulseAmplG12_
MonitorElement * meLaserL3Timing_
std::vector< int > superModules_
std::vector< int > laserWavelengths_
MonitorElement * meLaserL2Err_
MonitorElement * meLaserL2_
MonitorElement * meLaserL3Ampl_
MonitorElement * meTestPulsePNG16_
MonitorElement * mePedestalG01_
MonitorElement * meIntegrityErr_
MonitorElement * meSummaryErr_
MonitorElement * meLaserL3PNErr_
MonitorElement * meLaserL2PN_
MonitorElement * meTestPulsePNG01_
MonitorElement * meLaserL4Timing_
MonitorElement * meLaserL2AmplOverPN_
MonitorElement * meTimingRMS_
std::string prefixME_
MonitorElement * meIntegrityPN_
TProfile2D * hpot01_[36]
MonitorElement * meLaserL3Err_
MonitorElement * meLaserL4Err_
MonitorElement * meTimingRMS1D_
MonitorElement * meOccupancy1D_
MonitorElement * meTriggerTowerEmulError_
MonitorElement * meTriggerTowerTiming_
MonitorElement * meLaserL3PN_
MonitorElement * meLaserL3AmplOverPN_
MonitorElement * meLaserL4PN_
MonitorElement * meLaserL2Timing_
MonitorElement * meTimingMean1D_
MonitorElement * meTiming_
MonitorElement * meLaserL1AmplOverPN_
MonitorElement * mePedestalOnlineRMSMap_
MonitorElement * meLaserL4Ampl_
MonitorElement * meLaserL1Err_
MonitorElement * meLaserL4_
MonitorElement * meTestPulseAmplG06_
MonitorElement * mePedestalOnline_
MonitorElement * meGlobalSummary_
std::vector< int > MGPAGainsPN_
MonitorElement * meStatusFlags_
MonitorElement * meLaserL1PN_
MonitorElement * meLaserL2PNErr_
MonitorElement * meTestPulseG06_
MonitorElement * meTestPulseG01_
MonitorElement * meLaserL1Ampl_
float synchErrorThreshold_
MonitorElement * meLaserL1PNErr_
std::vector< int > MGPAGains_
int ism(int ieta, int iphi)
Definition: EcalPyUtils.cc:56
MonitorElement * meLaserL2Ampl_
MonitorElement * mePedestalG12_
TProfile2D * htmt01_[36]
std::string subfolder_
MonitorElement * meTriggerTowerNonSingleTiming_
MonitorElement * mePedestalOnlineMean_
MonitorElement * mePedestalPNG16_
EBSummaryClient::~EBSummaryClient ( )
virtual

Destructor.

Definition at line 175 of file EBSummaryClient.cc.

175  {
176 
177 }

Member Function Documentation

void EBSummaryClient::analyze ( void  )
virtual

Analyze.

Implements EBClient.

Definition at line 993 of file EBSummaryClient.cc.

References abs, clients_, cloneME_, gather_cfg::cout, CommonMethods::cp(), debug_, dqmStore_, EcalBarrel, MonitorElement::Fill(), spr::find(), DQMStore::get(), MonitorElement::getBinContent(), MonitorElement::getBinError(), UtilsClient::getBinStatistics(), MonitorElement::getEntries(), UtilsClient::getHisto(), EBIntegrityClient::h_, EBIntegrityClient::hmem_, hot01_, hpot01_, htmt01_, httt01_, i, ievt_, ecalpyutils::ism(), j, jevt_, EBTriggerTowerClient::l01_, EBTriggerTowerClient::l02_, laserWavelengths_, UtilsClient::maskBinContent(), Masks::maskChannel(), EBTriggerTowerClient::me_o01_, EBTriggerTowerClient::me_o02_, EBTestPulseClient::mea01_, EBLaserClient::mea01_, EBTestPulseClient::mea02_, EBLaserClient::mea02_, EBTestPulseClient::mea03_, EBLaserClient::mea03_, EBLaserClient::mea04_, EBLaserClient::meaopn01_, EBLaserClient::meaopn02_, EBLaserClient::meaopn03_, EBLaserClient::meaopn04_, EBTestPulseClient::meg01_, EBIntegrityClient::meg01_, EBPedestalClient::meg01_, EBLaserClient::meg01_, EBTestPulseClient::meg02_, EBPedestalClient::meg02_, EBIntegrityClient::meg02_, EBLaserClient::meg02_, EBPedestalOnlineClient::meg03_, EBTestPulseClient::meg03_, EBPedestalClient::meg03_, EBLaserClient::meg03_, EBTestPulseClient::meg04_, EBPedestalClient::meg04_, EBLaserClient::meg04_, EBTestPulseClient::meg05_, EBPedestalClient::meg05_, EBLaserClient::meg09_, EBLaserClient::meg10_, EBLaserClient::meg11_, EBLaserClient::meg12_, meGlobalSummary_, EBStatusFlagsClient::meh01_, meIntegrity_, meIntegrityErr_, meIntegrityPN_, meLaserL1_, meLaserL1Ampl_, meLaserL1AmplOverPN_, meLaserL1Err_, meLaserL1PN_, meLaserL1PNErr_, meLaserL1Timing_, meLaserL2_, meLaserL2Ampl_, meLaserL2AmplOverPN_, meLaserL2Err_, meLaserL2PN_, meLaserL2PNErr_, meLaserL2Timing_, meLaserL3_, meLaserL3Ampl_, meLaserL3AmplOverPN_, meLaserL3Err_, meLaserL3PN_, meLaserL3PNErr_, meLaserL3Timing_, meLaserL4_, meLaserL4Ampl_, meLaserL4AmplOverPN_, meLaserL4Err_, meLaserL4PN_, meLaserL4PNErr_, meLaserL4Timing_, meOccupancy1D_, meOccupancy_, meOccupancyPN_, mePedestalG01_, mePedestalG06_, mePedestalG12_, mePedestalOnline_, mePedestalOnlineErr_, mePedestalOnlineMean_, mePedestalOnlineRMS_, mePedestalOnlineRMSMap_, mePedestalPNG01_, mePedestalPNG16_, meRecHitEnergy_, meStatusFlags_, meStatusFlagsErr_, meSummaryErr_, EBLaserClient::met01_, EBLaserClient::met02_, EBLaserClient::met03_, EBLaserClient::met04_, meTestPulseAmplG01_, meTestPulseAmplG06_, meTestPulseAmplG12_, meTestPulseG01_, meTestPulseG06_, meTestPulseG12_, meTestPulsePNG01_, meTestPulsePNG16_, meTiming_, meTimingMean1D_, meTimingMean_, meTimingRMS1D_, meTimingRMS_, meTriggerTowerEmulError_, meTriggerTowerEt_, meTriggerTowerNonSingleTiming_, meTriggerTowerTiming_, norm01_, EcalDQMStatusHelper::PHYSICS_BAD_CHANNEL_WARNING, prefixME_, produceReports_, reducedReports_, MonitorElement::Reset(), Numbers::sEB(), MonitorElement::setBinContent(), MonitorElement::setEntries(), subfolder_, superModules_, synch01_, synchErrorThreshold_, and timingNHitThreshold_.

Referenced by EcalBarrelMonitorClient::analyze(), and EcalBarrelMonitorClient::endRun().

993  {
994 
995  ievt_++;
996  jevt_++;
997  if ( ievt_ % 10 == 0 ) {
998  if ( debug_ ) std::cout << "EBSummaryClient: ievt/jevt = " << ievt_ << "/" << jevt_ << std::endl;
999  }
1000 
1001  uint32_t chWarnBit = 1 << EcalDQMStatusHelper::PHYSICS_BAD_CHANNEL_WARNING;
1002 
1003  for ( int iex = 1; iex <= 170; iex++ ) {
1004  for ( int ipx = 1; ipx <= 360; ipx++ ) {
1005 
1006  if ( meIntegrity_ ) meIntegrity_->setBinContent( ipx, iex, 6. );
1007  if ( meOccupancy_ ) meOccupancy_->setBinContent( ipx, iex, 0. );
1008  if ( meStatusFlags_ ) meStatusFlags_->setBinContent( ipx, iex, 6. );
1009  if ( mePedestalOnline_ ) mePedestalOnline_->setBinContent( ipx, iex, 6. );
1011  if ( meLaserL1_ ) meLaserL1_->setBinContent( ipx, iex, 6. );
1012  if ( meLaserL2_ ) meLaserL2_->setBinContent( ipx, iex, 6. );
1013  if ( meLaserL3_ ) meLaserL3_->setBinContent( ipx, iex, 6. );
1014  if ( meLaserL4_ ) meLaserL4_->setBinContent( ipx, iex, 6. );
1015  if ( mePedestalG01_ ) mePedestalG01_->setBinContent( ipx, iex, 6. );
1016  if ( mePedestalG06_ ) mePedestalG06_->setBinContent( ipx, iex, 6. );
1017  if ( mePedestalG12_ ) mePedestalG12_->setBinContent( ipx, iex, 6. );
1018  if ( meTestPulseG01_ ) meTestPulseG01_->setBinContent( ipx, iex, 6. );
1019  if ( meTestPulseG06_ ) meTestPulseG06_->setBinContent( ipx, iex, 6. );
1020  if ( meTestPulseG12_ ) meTestPulseG12_->setBinContent( ipx, iex, 6. );
1021 
1022  if ( meRecHitEnergy_ ) meRecHitEnergy_->setBinContent( ipx, iex, 0. );
1023 
1024  if(meGlobalSummary_ ) meGlobalSummary_->setBinContent( ipx, iex, 6. );
1025 
1026  }
1027  }
1028 
1029  for ( int iex = 1; iex <= 20; iex++ ) {
1030  for ( int ipx = 1; ipx <= 90; ipx++ ) {
1031 
1032  if ( meIntegrityPN_ ) meIntegrityPN_->setBinContent( ipx, iex, 6. );
1033  if ( meOccupancyPN_ ) meOccupancyPN_->setBinContent( ipx, iex, 0. );
1034  if ( meLaserL1PN_ ) meLaserL1PN_->setBinContent( ipx, iex, 6. );
1035  if ( meLaserL2PN_ ) meLaserL2PN_->setBinContent( ipx, iex, 6. );
1036  if ( meLaserL3PN_ ) meLaserL3PN_->setBinContent( ipx, iex, 6. );
1037  if ( meLaserL4PN_ ) meLaserL4PN_->setBinContent( ipx, iex, 6. );
1038  if ( mePedestalPNG01_ ) mePedestalPNG01_->setBinContent( ipx, iex, 6. );
1039  if ( mePedestalPNG16_ ) mePedestalPNG16_->setBinContent( ipx, iex, 6. );
1040  if ( meTestPulsePNG01_ ) meTestPulsePNG01_->setBinContent( ipx, iex, 6. );
1041  if ( meTestPulsePNG16_ ) meTestPulsePNG16_->setBinContent( ipx, iex, 6. );
1042 
1043  }
1044  }
1045 
1046  for ( int iex = 1; iex <= 34; iex++ ) {
1047  for ( int ipx = 1; ipx <= 72; ipx++ ) {
1048  if ( meTriggerTowerEt_ ) meTriggerTowerEt_->setBinContent( ipx, iex, 0. );
1052  if ( meTiming_ ) meTiming_->setBinContent( ipx, iex, 6. );
1053  }
1054  }
1055 
1056  if ( meIntegrity_ ) meIntegrity_->setEntries( 0 );
1059  if ( meOccupancy_ ) meOccupancy_->setEntries( 0 );
1069 
1070  if ( meLaserL1_ ) meLaserL1_->setEntries( 0 );
1071  if ( meLaserL1Err_ ) meLaserL1Err_->Reset();
1075  if ( meLaserL1PN_ ) meLaserL1PN_->setEntries( 0 );
1077 
1078  if ( meLaserL2_ ) meLaserL2_->setEntries( 0 );
1079  if ( meLaserL2Err_ ) meLaserL2Err_->Reset();
1083  if ( meLaserL2PN_ ) meLaserL2PN_->setEntries( 0 );
1085 
1086  if ( meLaserL3_ ) meLaserL3_->setEntries( 0 );
1087  if ( meLaserL3Err_ ) meLaserL3Err_->Reset();
1091  if ( meLaserL3PN_ ) meLaserL3PN_->setEntries( 0 );
1093 
1094  if ( meLaserL4_ ) meLaserL4_->setEntries( 0 );
1095  if ( meLaserL4Err_ ) meLaserL4Err_->Reset();
1099  if ( meLaserL4PN_ ) meLaserL4PN_->setEntries( 0 );
1101 
1115 
1117  if ( meTiming_ ) meTiming_->setEntries( 0 );
1120  if ( meTimingMean_ ) meTimingMean_->Reset();
1121  if ( meTimingRMS_ ) meTimingRMS_->Reset();
1126 
1128 
1130 
1131  MonitorElement* me(0);
1132  me = dqmStore_->get(prefixME_ + "/EBTimingTask/EBTMT timing map");
1133  TProfile2D* htmt(0);
1134  htmt = UtilsClient::getHisto(me, false, htmt);
1135 
1136  std::string subdir(subfolder_ == "" ? "" : subfolder_ + "/");
1137 
1138  TH1F* oosTrend(0);
1139 
1140  for ( unsigned int i=0; i<clients_.size(); i++ ) {
1141 
1142  EBIntegrityClient* ebic = dynamic_cast<EBIntegrityClient*>(clients_[i]);
1143  EBStatusFlagsClient* ebsfc = dynamic_cast<EBStatusFlagsClient*>(clients_[i]);
1144  if(!produceReports_) ebsfc = 0;
1145  EBPedestalOnlineClient* ebpoc = dynamic_cast<EBPedestalOnlineClient*>(clients_[i]);
1146  if(!produceReports_) ebpoc = 0;
1147 
1148  EBLaserClient* eblc = dynamic_cast<EBLaserClient*>(clients_[i]);
1149  EBPedestalClient* ebpc = dynamic_cast<EBPedestalClient*>(clients_[i]);
1150  EBTestPulseClient* ebtpc = dynamic_cast<EBTestPulseClient*>(clients_[i]);
1151 
1152  EBTimingClient* ebtmc = dynamic_cast<EBTimingClient*>(clients_[i]);
1153  EBTriggerTowerClient* ebtttc = dynamic_cast<EBTriggerTowerClient*>(clients_[i]);
1154 
1155  MonitorElement *me_01, *me_02, *me_03;
1156  MonitorElement *me_04, *me_05;
1157  // MonitorElement *me_f[6], *me_fg[2];
1158  TH2F* h2;
1159  TH2F* h3;
1160 
1161  me = dqmStore_->get( prefixME_ + "/EcalInfo/EBMM DCC" );
1163 
1164  me = dqmStore_->get( prefixME_ + "/EBRawDataTask/" + subdir + "EBRDT L1A FE errors" );
1166 
1167  me = dqmStore_->get(prefixME_ + "/EBRawDataTask/" + subdir + "EBRDT accumulated FE synchronization errors");
1168  oosTrend = UtilsClient::getHisto(me, cloneME_, oosTrend);
1169 
1170  for ( unsigned int i=0; i<superModules_.size(); i++ ) {
1171 
1172  int ism = superModules_[i];
1173 
1174  me = dqmStore_->get( prefixME_ + "/EBOccupancyTask/" + subdir + "EBOT rec hit energy " + Numbers::sEB(ism) );
1175  hot01_[ism-1] = UtilsClient::getHisto( me, cloneME_, hot01_[ism-1] );
1176 
1177  me = dqmStore_->get( prefixME_ + "/EBPedestalOnlineTask/"+ subdir + "Gain12/EBPOT pedestal " + Numbers::sEB(ism) + " G12" );
1178  hpot01_[ism-1] = UtilsClient::getHisto( me, cloneME_, hpot01_[ism-1] );
1179 
1180  me = dqmStore_->get( prefixME_ + "/EBTriggerTowerTask/EBTTT Et map Real Digis " + Numbers::sEB(ism) );
1181  httt01_[ism-1] = UtilsClient::getHisto( me, cloneME_, httt01_[ism-1] );
1182 
1183  me = dqmStore_->get( prefixME_ + "/EBTimingTask/EBTMT timing " + Numbers::sEB(ism) );
1184  htmt01_[ism-1] = UtilsClient::getHisto( me, cloneME_, htmt01_[ism-1] );
1185 
1186  for ( int ie = 1; ie <= 85; ie++ ) {
1187  for ( int ip = 1; ip <= 20; ip++ ) {
1188 
1189  if ( ebic ) {
1190 
1191  me = ebic->meg01_[ism-1];
1192 
1193  if ( me ) {
1194 
1195  float xval = me->getBinContent( ie, ip );
1196 
1197  int iex;
1198  int ipx;
1199 
1200  if ( ism <= 18 ) {
1201  iex = 1+(85-ie);
1202  ipx = ip+20*(ism-1);
1203  } else {
1204  iex = 85+ie;
1205  ipx = 1+(20-ip)+20*(ism-19);
1206  }
1207 
1208  if(meIntegrity_) meIntegrity_->setBinContent( ipx, iex, xval );
1209  if( xval == 0 && meIntegrityErr_) meIntegrityErr_->Fill( ism );
1210 
1211  }
1212 
1213  h2 = ebic->h_[ism-1];
1214 
1215  if ( h2 ) {
1216 
1217  float xval = h2->GetBinContent( ie, ip );
1218 
1219  int iex;
1220  int ipx;
1221 
1222  if ( ism <= 18 ) {
1223  iex = 1+(85-ie);
1224  ipx = ip+20*(ism-1);
1225  } else {
1226  iex = 85+ie;
1227  ipx = 1+(20-ip)+20*(ism-19);
1228  }
1229 
1230  if(meOccupancy_) meOccupancy_->setBinContent( ipx, iex, xval );
1231  if ( xval != 0 && meOccupancy1D_) meOccupancy1D_->Fill( ism, xval );
1232 
1233  }
1234 
1235  }
1236 
1237  if ( ebpoc ) {
1238 
1239  me = ebpoc->meg03_[ism-1];
1240 
1241  if ( me ) {
1242 
1243  int iex;
1244  int ipx;
1245 
1246  if ( ism <= 18 ) {
1247  iex = 1+(85-ie);
1248  ipx = ip+20*(ism-1);
1249  } else {
1250  iex = 85+ie;
1251  ipx = 1+(20-ip)+20*(ism-19);
1252  }
1253 
1254  float xval = me->getBinContent( ie, ip );
1255 
1256  if(mePedestalOnline_) mePedestalOnline_->setBinContent( ipx, iex, xval );
1257  if ( xval == 0 && mePedestalOnlineErr_ ) mePedestalOnlineErr_->Fill( ism );
1258 
1259  }
1260 
1261  float num01, mean01, rms01;
1262  bool update01 = UtilsClient::getBinStatistics(hpot01_[ism-1], ie, ip, num01, mean01, rms01);
1263 
1264  if ( update01 ) {
1265 
1266  int iex;
1267  int ipx;
1268 
1269  if ( ism <= 18 ) {
1270  iex = 1+(85-ie);
1271  ipx = ip+20*(ism-1);
1272  } else {
1273  iex = 85+ie;
1274  ipx = 1+(20-ip)+20*(ism-19);
1275  }
1276 
1278 
1279  if(mePedestalOnlineRMS_) mePedestalOnlineRMS_->Fill( ism, rms01 );
1280 
1281  if(mePedestalOnlineMean_) mePedestalOnlineMean_->Fill( ism, mean01 );
1282 
1283  }
1284 
1285  }
1286 
1287  if ( eblc ) {
1288 
1289  int iex;
1290  int ipx;
1291 
1292  if ( ism <= 18 ) {
1293  iex = 1+(85-ie);
1294  ipx = ip+20*(ism-1);
1295  } else {
1296  iex = 85+ie;
1297  ipx = 1+(20-ip)+20*(ism-19);
1298  }
1299 
1300  if ( find(laserWavelengths_.begin(), laserWavelengths_.end(), 1) != laserWavelengths_.end() ) {
1301 
1302  me = eblc->meg01_[ism-1];
1303 
1304  if ( me ) {
1305 
1306  float xval = me->getBinContent( ie, ip );
1307 
1308  if ( me->getEntries() != 0 ) {
1309  meLaserL1_->setBinContent( ipx, iex, xval );
1310  if ( xval == 0 ) meLaserL1Err_->Fill( ism );
1311  }
1312 
1313  }
1314 
1315  }
1316 
1317  if ( find(laserWavelengths_.begin(), laserWavelengths_.end(), 2) != laserWavelengths_.end() ) {
1318 
1319  me = eblc->meg02_[ism-1];
1320 
1321  if ( me ) {
1322 
1323  float xval = me->getBinContent( ie, ip );
1324 
1325  if ( me->getEntries() != 0 ) {
1326  meLaserL2_->setBinContent( ipx, iex, xval );
1327  if ( xval == 0 ) meLaserL2Err_->Fill( ism );
1328  }
1329 
1330  }
1331 
1332  }
1333 
1334  if ( find(laserWavelengths_.begin(), laserWavelengths_.end(), 3) != laserWavelengths_.end() ) {
1335 
1336  me = eblc->meg03_[ism-1];
1337 
1338  if ( me ) {
1339 
1340  float xval = me->getBinContent( ie, ip );
1341 
1342  if ( me->getEntries() != 0 ) {
1343  meLaserL3_->setBinContent( ipx, iex, xval );
1344  if ( xval == 0 ) meLaserL3Err_->Fill( ism );
1345  }
1346 
1347  }
1348 
1349  }
1350 
1351  if ( find(laserWavelengths_.begin(), laserWavelengths_.end(), 4) != laserWavelengths_.end() ) {
1352 
1353  me = eblc->meg04_[ism-1];
1354 
1355  if ( me ) {
1356 
1357  float xval = me->getBinContent( ie, ip );
1358 
1359  if ( me->getEntries() != 0 ) {
1360  meLaserL4_->setBinContent( ipx, iex, xval );
1361  if ( xval == 0 ) meLaserL4Err_->Fill( ism );
1362  }
1363 
1364  }
1365 
1366  }
1367 
1368  }
1369 
1370  if ( ebpc ) {
1371 
1372  me_01 = ebpc->meg01_[ism-1];
1373  me_02 = ebpc->meg02_[ism-1];
1374  me_03 = ebpc->meg03_[ism-1];
1375 
1376  int iex;
1377  int ipx;
1378 
1379  if ( ism <= 18 ) {
1380  iex = 1+(85-ie);
1381  ipx = ip+20*(ism-1);
1382  } else {
1383  iex = 85+ie;
1384  ipx = 1+(20-ip)+20*(ism-19);
1385  }
1386 
1387  if ( me_01 ) {
1388  float val_01=me_01->getBinContent(ie,ip);
1389  if ( me_01->getEntries() != 0 ) mePedestalG01_->setBinContent( ipx, iex, val_01 );
1390  }
1391  if ( me_02 ) {
1392  float val_02=me_02->getBinContent(ie,ip);
1393  if ( me_02->getEntries() != 0 ) mePedestalG06_->setBinContent( ipx, iex, val_02 );
1394  }
1395  if ( me_03 ) {
1396  float val_03=me_03->getBinContent(ie,ip);
1397  if ( me_03->getEntries() != 0 ) mePedestalG12_->setBinContent( ipx, iex, val_03 );
1398  }
1399 
1400  }
1401 
1402  if ( ebtpc ) {
1403 
1404  me_01 = ebtpc->meg01_[ism-1];
1405  me_02 = ebtpc->meg02_[ism-1];
1406  me_03 = ebtpc->meg03_[ism-1];
1407 
1408  int iex;
1409  int ipx;
1410 
1411  if ( ism <= 18 ) {
1412  iex = 1+(85-ie);
1413  ipx = ip+20*(ism-1);
1414  } else {
1415  iex = 85+ie;
1416  ipx = 1+(20-ip)+20*(ism-19);
1417  }
1418 
1419  if ( me_01 ) {
1420 
1421  float val_01=me_01->getBinContent(ie,ip);
1422 
1423  if ( me_01->getEntries() != 0 ) meTestPulseG01_->setBinContent( ipx, iex, val_01 );
1424 
1425  }
1426  if ( me_02 ) {
1427 
1428  float val_02=me_02->getBinContent(ie,ip);
1429 
1430  if ( me_02->getEntries() != 0 ) meTestPulseG06_->setBinContent( ipx, iex, val_02 );
1431 
1432  }
1433  if ( me_03 ) {
1434 
1435  float val_03=me_03->getBinContent(ie,ip);
1436 
1437  if ( me_03->getEntries() != 0 ) meTestPulseG12_->setBinContent( ipx, iex, val_03 );
1438 
1439  }
1440 
1441 
1442  }
1443 
1444  if ( hot01_[ism-1] ) {
1445 
1446  float xval = hot01_[ism-1]->GetBinContent( ie, ip );
1447 
1448  int iex;
1449  int ipx;
1450 
1451  if ( ism <= 18 ) {
1452  iex = 1+(85-ie);
1453  ipx = ip+20*(ism-1);
1454  } else {
1455  iex = 85+ie;
1456  ipx = 1+(20-ip)+20*(ism-19);
1457  }
1458 
1459  if(meRecHitEnergy_) meRecHitEnergy_->setBinContent( ipx, iex, xval );
1460 
1461  }
1462 
1463  if ( ebtmc ) {
1464 
1465  float num02, mean02, rms02;
1466 
1467  bool update02 = UtilsClient::getBinStatistics(htmt01_[ism-1], ie, ip, num02, mean02, rms02, timingNHitThreshold_);
1468 
1469  if ( update02 ) {
1470 
1471  mean02 -= 50.;
1472 
1473  meTimingMean1D_->Fill(mean02);
1474 
1475  meTimingRMS1D_->Fill(rms02);
1476 
1477  meTimingMean_->Fill( ism, mean02 );
1478 
1479  meTimingRMS_->Fill( ism, rms02 );
1480 
1481  }
1482 
1483  }
1484 
1485  }
1486  }
1487 
1488  for (int ie = 1; ie <= 17; ie++ ) {
1489  for (int ip = 1; ip <= 4; ip++ ) {
1490 
1491  int iex;
1492  int ipx;
1493 
1494  if ( ism <= 18 ) {
1495  iex = 1+(17-ie);
1496  ipx = ip+4*(ism-1);
1497  } else {
1498  iex = 17+ie;
1499  ipx = 1+(4-ip)+4*(ism-19);
1500  }
1501 
1502  if ( ebsfc ) {
1503 
1504  me = dqmStore_->get(prefixME_ + "/EcalInfo/EBMM DCC");
1505 
1506  float xval = 6;
1507 
1508  if ( me ) {
1509 
1510  xval = 2;
1511  if ( me->getBinContent( ism ) > 0 ) xval = 1;
1512 
1513  }
1514 
1515  me = ebsfc->meh01_[ism-1];
1516 
1517  if ( me ) {
1518 
1519  if ( me->getBinContent( ie, ip ) > 0 ) xval = 0;
1520 
1521  meStatusFlags_->setBinContent( ipx, iex, xval );
1522 
1523  if ( me->getBinError( ie, ip ) > 0 && me->getBinError( ie, ip ) < 0.1 ) UtilsClient::maskBinContent( meStatusFlags_, ipx, iex );
1524 
1525  if ( xval == 0 ) meStatusFlagsErr_->Fill( ism );
1526 
1527  }
1528 
1529  }
1530 
1531  if ( ebtttc ) {
1532 
1533  float mean01 = 0;
1534  bool hadNonZeroInterest = false;
1535 
1536  if ( httt01_[ism-1] ) {
1537 
1538  mean01 = httt01_[ism-1]->GetBinContent( ie, ip );
1539 
1540  if ( mean01 != 0. ) {
1541  if ( meTriggerTowerEt_ ) meTriggerTowerEt_->setBinContent( ipx, iex, mean01 );
1542  }
1543 
1544  }
1545 
1546  me = ebtttc->me_o01_[ism-1];
1547 
1548  if ( me ) {
1549 
1550  float xval = me->getBinContent( ie, ip );
1551 
1552  if ( xval != 0. ) {
1553  meTriggerTowerTiming_->setBinContent( ipx, iex, xval );
1554  hadNonZeroInterest = true;
1555  }
1556 
1557  }
1558 
1559  me = ebtttc->me_o02_[ism-1];
1560 
1561  if ( me ) {
1562 
1563  float xval = me->getBinContent( ie, ip );
1564 
1565  if ( xval != 0. ) {
1566  meTriggerTowerNonSingleTiming_->setBinContent( ipx, iex, xval );
1567  }
1568 
1569  }
1570 
1571  float xval = 2;
1572  if( mean01 > 0. ) {
1573 
1574  h2 = ebtttc->l01_[ism-1];
1575  h3 = ebtttc->l02_[ism-1];
1576 
1577  if ( h2 && h3 ) {
1578 
1579  // float emulErrorVal = h2->GetBinContent( ie, ip ) + h3->GetBinContent( ie, ip );
1580  float emulErrorVal = h2->GetBinContent( ie, ip );
1581 
1582  if( emulErrorVal > 0.01 * ievt_ && hadNonZeroInterest ) xval = 0;
1583 
1584  }
1585 
1586  if ( xval!=0 && hadNonZeroInterest ) xval = 1;
1587 
1588  }
1589 
1590  meTriggerTowerEmulError_->setBinContent( ipx, iex, xval );
1591 
1592  }
1593 
1594  if ( ebtmc ) {
1595 
1596  if( htmt01_[ism-1] ){
1597 
1598  float num(0.);
1599  bool mask(false);
1600 
1601  for(int ce=1; ce<=5; ce++){
1602  for(int cp=1; cp<=5; cp++){
1603 
1604  int scie = (ie - 1) * 5 + ce;
1605  int scip = (ip - 1) * 5 + cp;
1606 
1607  num += htmt01_[ism-1]->GetBinEntries(htmt01_[ism-1]->GetBin(scie, scip));
1608 
1609  if(Masks::maskChannel(ism, scie, scip, chWarnBit, EcalBarrel)) mask = true;
1610  }
1611  }
1612 
1613  float nHitThreshold(timingNHitThreshold_ * 18.);
1614 
1615  bool update01(false);
1616  float num01, mean01, rms01;
1617  update01 = UtilsClient::getBinStatistics(htmt, ipx, iex, num01, mean01, rms01, nHitThreshold);
1618 
1619  mean01 -= 50.;
1620 
1621  if(!update01){
1622  mean01 = 0.;
1623  rms01 = 0.;
1624  }
1625 
1626  update01 |= num > 1.3 * nHitThreshold;
1627 
1628  float xval = 2.;
1629  if(update01){
1630 
1631  if( std::abs(mean01) > 2. || rms01 > 6. || num > 1.3 * num01) xval = 0.;
1632  else xval = 1.;
1633 
1634  }
1635 
1636  meTiming_->setBinContent( ipx, iex, xval );
1637  if ( mask ) UtilsClient::maskBinContent( meTiming_, ipx, iex );
1638 
1639  }
1640 
1641  }
1642 
1643  }
1644  }
1645 
1646  // PN's summaries
1647  for( int i = 1; i <= 10; i++ ) {
1648  for( int j = 1; j <= 5; j++ ) {
1649 
1650  int ichanx;
1651  int ipseudostripx;
1652 
1653  if(ism<=18) {
1654  ichanx = i;
1655  ipseudostripx = j+5*(ism-1);
1656  } else {
1657  ichanx = i+10;
1658  ipseudostripx = j+5*(ism-19);
1659  }
1660 
1661  if ( ebic ) {
1662 
1663  me_04 = ebic->meg02_[ism-1];
1664  h2 = ebic->hmem_[ism-1];
1665 
1666  if( me_04 ) {
1667 
1668  float xval = me_04->getBinContent(i,j);
1669  if(meIntegrityPN_) meIntegrityPN_->setBinContent( ipseudostripx, ichanx, xval );
1670 
1671  }
1672 
1673  if ( h2 ) {
1674 
1675  float xval = h2->GetBinContent(i,1);
1676  if(meOccupancyPN_) meOccupancyPN_->setBinContent( ipseudostripx, ichanx, xval );
1677 
1678  }
1679 
1680  }
1681 
1682  if ( ebpc ) {
1683 
1684  me_04 = ebpc->meg04_[ism-1];
1685  me_05 = ebpc->meg05_[ism-1];
1686 
1687  if( me_04 ) {
1688  float val_04=me_04->getBinContent(i,1);
1689  mePedestalPNG01_->setBinContent( ipseudostripx, ichanx, val_04 );
1690  }
1691  if( me_05 ) {
1692  float val_05=me_05->getBinContent(i,1);
1693  mePedestalPNG16_->setBinContent( ipseudostripx, ichanx, val_05 );
1694  }
1695 
1696  }
1697 
1698  if ( ebtpc ) {
1699 
1700  me_04 = ebtpc->meg04_[ism-1];
1701  me_05 = ebtpc->meg05_[ism-1];
1702 
1703  if( me_04 ) {
1704  float val_04=me_04->getBinContent(i,1);
1705  meTestPulsePNG01_->setBinContent( ipseudostripx, ichanx, val_04 );
1706  }
1707  if( me_05 ) {
1708  float val_05=me_05->getBinContent(i,1);
1709  meTestPulsePNG16_->setBinContent( ipseudostripx, ichanx, val_05 );
1710  }
1711 
1712  }
1713 
1714  if ( eblc ) {
1715 
1716  if ( find(laserWavelengths_.begin(), laserWavelengths_.end(), 1) != laserWavelengths_.end() ) {
1717 
1718  me = eblc->meg09_[ism-1];
1719 
1720  if( me ) {
1721 
1722  float xval = me->getBinContent(i,1);
1723 
1724  if ( me->getEntries() != 0 && me->getEntries() != 0 ) {
1725  meLaserL1PN_->setBinContent( ipseudostripx, ichanx, xval );
1726  if ( xval == 0 ) meLaserL1PNErr_->Fill( ism );
1727  }
1728 
1729  }
1730 
1731  }
1732 
1733  if ( find(laserWavelengths_.begin(), laserWavelengths_.end(), 2) != laserWavelengths_.end() ) {
1734 
1735  me = eblc->meg10_[ism-1];
1736 
1737  if( me ) {
1738 
1739  float xval = me->getBinContent(i,1);
1740 
1741  if ( me->getEntries() != 0 && me->getEntries() != 0 ) {
1742  meLaserL2PN_->setBinContent( ipseudostripx, ichanx, xval );
1743  if ( xval == 0 ) meLaserL2PNErr_->Fill( ism );
1744  }
1745 
1746  }
1747 
1748  }
1749 
1750  if ( find(laserWavelengths_.begin(), laserWavelengths_.end(), 3) != laserWavelengths_.end() ) {
1751 
1752  me = eblc->meg11_[ism-1];
1753 
1754  if( me ) {
1755 
1756  float xval = me->getBinContent(i,1);
1757 
1758  if ( me->getEntries() != 0 && me->getEntries() != 0 ) {
1759  meLaserL3PN_->setBinContent( ipseudostripx, ichanx, xval );
1760  if ( xval == 0 ) meLaserL3PNErr_->Fill( ism );
1761  }
1762 
1763  }
1764 
1765  }
1766 
1767  if ( find(laserWavelengths_.begin(), laserWavelengths_.end(), 4) != laserWavelengths_.end() ) {
1768 
1769  me = eblc->meg12_[ism-1];
1770 
1771  if( me ) {
1772 
1773  float xval = me->getBinContent(i,1);
1774 
1775  if ( me->getEntries() != 0 && me->getEntries() != 0 ) {
1776  meLaserL4PN_->setBinContent( ipseudostripx, ichanx, xval );
1777  if ( xval == 0 ) meLaserL4PNErr_->Fill( ism );
1778  }
1779 
1780  }
1781 
1782  }
1783 
1784  }
1785 
1786  }
1787  }
1788 
1789  for(int chan=0; chan<1700; chan++) {
1790 
1791  int ie = (chan)/20 + 1;
1792  int ip = (chan)%20 + 1;
1793 
1794  // laser 1D summaries
1795  if ( eblc ) {
1796 
1797  if ( find(laserWavelengths_.begin(), laserWavelengths_.end(), 1) != laserWavelengths_.end() ) {
1798 
1799  MonitorElement *meg = eblc->meg01_[ism-1];
1800 
1801  float xval = 2;
1802  if ( meg ) xval = meg->getBinContent( ie, ip );
1803 
1804  // exclude channels without laser data (yellow in the quality map)
1805  if( xval != 2 && xval != 5 ) {
1806 
1807  MonitorElement* mea01 = eblc->mea01_[ism-1];
1808  MonitorElement* met01 = eblc->met01_[ism-1];
1809  MonitorElement* meaopn01 = eblc->meaopn01_[ism-1];
1810 
1811  if( mea01 && met01 && meaopn01 ) {
1812  meLaserL1Ampl_->Fill( ism, mea01->getBinContent( chan+1 ) );
1813  if( met01->getBinContent( chan+1 ) > 0. ) meLaserL1Timing_->Fill( ism, met01->getBinContent( chan+1 ) );
1814  meLaserL1AmplOverPN_->Fill( ism, meaopn01->getBinContent( chan+1 ) );
1815  }
1816 
1817  }
1818 
1819  }
1820 
1821  if ( find(laserWavelengths_.begin(), laserWavelengths_.end(), 2) != laserWavelengths_.end() ) {
1822 
1823  MonitorElement *meg = eblc->meg02_[ism-1];
1824 
1825  float xval = 2;
1826  if ( meg ) xval = meg->getBinContent( ie, ip );
1827 
1828  // exclude channels without laser data (yellow in the quality map)
1829  if( xval != 2 && xval != 5 ) {
1830 
1831  MonitorElement* mea02 = eblc->mea02_[ism-1];
1832  MonitorElement* met02 = eblc->met02_[ism-1];
1833  MonitorElement* meaopn02 = eblc->meaopn02_[ism-1];
1834 
1835  if( mea02 && met02 && meaopn02 ) {
1836  meLaserL2Ampl_->Fill( ism, mea02->getBinContent( chan+1 ) );
1837  if( met02->getBinContent( chan+1 ) > 0. ) meLaserL2Timing_->Fill( ism, met02->getBinContent( chan+1 ) );
1838  meLaserL2AmplOverPN_->Fill( ism, meaopn02->getBinContent( chan+1 ) );
1839  }
1840 
1841  }
1842 
1843  }
1844 
1845  if ( find(laserWavelengths_.begin(), laserWavelengths_.end(), 3) != laserWavelengths_.end() ) {
1846 
1847  MonitorElement *meg = eblc->meg03_[ism-1];
1848 
1849  float xval = 2;
1850  if ( meg ) xval = meg->getBinContent( ie, ip );
1851 
1852  // exclude channels without laser data (yellow in the quality map)
1853  if( xval != 2 && xval != 5 ) {
1854 
1855  MonitorElement* mea03 = eblc->mea03_[ism-1];
1856  MonitorElement* met03 = eblc->met03_[ism-1];
1857  MonitorElement* meaopn03 = eblc->meaopn03_[ism-1];
1858 
1859  if( mea03 && met03 && meaopn03 ) {
1860  meLaserL3Ampl_->Fill( ism, mea03->getBinContent( chan+1 ) );
1861  if( met03->getBinContent( chan+1 ) > 0. ) meLaserL3Timing_->Fill( ism, met03->getBinContent( chan+1 ) );
1862  meLaserL3AmplOverPN_->Fill( ism, meaopn03->getBinContent( chan+1 ) );
1863  }
1864 
1865  }
1866 
1867  }
1868 
1869  if ( find(laserWavelengths_.begin(), laserWavelengths_.end(), 4) != laserWavelengths_.end() ) {
1870 
1871  MonitorElement *meg = eblc->meg04_[ism-1];
1872 
1873  float xval = 2;
1874  if ( meg ) xval = meg->getBinContent( ie, ip );
1875 
1876  // exclude channels without laser data (yellow in the quality map)
1877  if( xval != 2 && xval != 5 ) {
1878 
1879  MonitorElement* mea04 = eblc->mea04_[ism-1];
1880  MonitorElement* met04 = eblc->met04_[ism-1];
1881  MonitorElement* meaopn04 = eblc->meaopn04_[ism-1];
1882 
1883  if( mea04 && met04 && meaopn04 ) {
1884  meLaserL4Ampl_->Fill( ism, mea04->getBinContent( chan+1 ) );
1885  if( met04->getBinContent( chan+1 ) > 0. ) meLaserL4Timing_->Fill( ism, met04->getBinContent( chan+1 ) );
1886  meLaserL4AmplOverPN_->Fill( ism, meaopn04->getBinContent( chan+1 ) );
1887  }
1888 
1889  }
1890 
1891  }
1892 
1893  }
1894 
1895  if ( ebtpc ) {
1896 
1897  MonitorElement *meg01 = ebtpc->meg01_[ism-1];
1898  MonitorElement *meg02 = ebtpc->meg02_[ism-1];
1899  MonitorElement *meg03 = ebtpc->meg03_[ism-1];
1900 
1901  if ( meg01 ) {
1902 
1903  float xval01 = meg01->getBinContent(ie,ip);
1904 
1905  if ( xval01 != 2 && xval01 != 5 ) {
1906 
1907  me = ebtpc->mea01_[ism-1];
1908 
1909  if ( me ) {
1910 
1911  meTestPulseAmplG01_->Fill( ism, me->getBinContent( chan+1 ) );
1912 
1913  }
1914 
1915  }
1916 
1917  }
1918 
1919  if ( meg02 ) {
1920 
1921  float xval02 = meg02->getBinContent(ie,ip);
1922 
1923  if ( xval02 != 2 && xval02 != 5 ) {
1924 
1925  me = ebtpc->mea02_[ism-1];
1926 
1927  if ( me ) {
1928 
1929  meTestPulseAmplG06_->Fill( ism, me->getBinContent( chan+1 ) );
1930 
1931  }
1932 
1933  }
1934 
1935  }
1936 
1937  if ( meg03 ) {
1938 
1939  float xval03 = meg03->getBinContent(ie,ip);
1940 
1941  if ( xval03 != 2 && xval03 != 5 ) {
1942 
1943  me = ebtpc->mea03_[ism-1];
1944 
1945  if ( me ) {
1946 
1947  meTestPulseAmplG12_->Fill( ism, me->getBinContent( chan+1 ) );
1948 
1949  }
1950 
1951  }
1952 
1953  }
1954 
1955  }
1956 
1957  } // loop on channels
1958 
1959  } // loop on SM
1960 
1961  } // loop on clients
1962 
1963  // The global-summary
1964 
1965  int nGlobalErrors = 0;
1966  int nGlobalErrorsEB[36];
1967  int nValidChannels = 0;
1968  int nValidChannelsEB[36];
1969 
1970  for (int i = 0; i < 36; i++) {
1971  nGlobalErrorsEB[i] = 0;
1972  nValidChannelsEB[i] = 0;
1973  }
1974 
1975  for ( int iex = 1; iex <= 170; iex++ ) {
1976  for ( int ipx = 1; ipx <= 360; ipx++ ) {
1977 
1978  if(meGlobalSummary_) {
1979 
1980  int ism = (ipx-1)/20 + 1 ;
1981  if ( iex>85 ) ism+=18;
1982 
1983  int iet = (iex-1)/5 + 1;
1984  int ipt = (ipx-1)/5 + 1;
1985 
1986  float xval = 6;
1987  float val_in = meIntegrity_->getBinContent(ipx,iex);
1988  float val_po = mePedestalOnline_->getBinContent(ipx,iex);
1989  float val_tm = reducedReports_ ? 1. : meTiming_->getBinContent(ipt,iet);
1990  float val_sf = meStatusFlags_->getBinContent((ipx-1)/5+1,(iex-1)/5+1);
1991  float val_ee = reducedReports_ ? 1. : meTriggerTowerEmulError_->getBinContent((ipx-1)/5+1,(iex-1)/5+1); // removed from the global summary temporarily
1992  // float val_ee = 1;
1993 
1994  // combine all the available wavelenghts in unique laser status
1995  // for each laser turn dark color and yellow into bright green
1996  float val_ls_1=2, val_ls_2=2, val_ls_3=2, val_ls_4=2;
1997  if ( find(laserWavelengths_.begin(), laserWavelengths_.end(), 1) != laserWavelengths_.end() ) {
1998  if ( meLaserL1_ ) val_ls_1 = meLaserL1_->getBinContent(ipx,iex);
1999  if(val_ls_1==2 || val_ls_1==3 || val_ls_1==4 || val_ls_1==5) val_ls_1=1;
2000  }
2001  if ( find(laserWavelengths_.begin(), laserWavelengths_.end(), 2) != laserWavelengths_.end() ) {
2002  if ( meLaserL2_ ) val_ls_2 = meLaserL2_->getBinContent(ipx,iex);
2003  if(val_ls_2==2 || val_ls_2==3 || val_ls_2==4 || val_ls_2==5) val_ls_2=1;
2004  }
2005  if ( find(laserWavelengths_.begin(), laserWavelengths_.end(), 3) != laserWavelengths_.end() ) {
2006  if ( meLaserL3_ ) val_ls_3 = meLaserL3_->getBinContent(ipx,iex);
2007  if(val_ls_3==2 || val_ls_3==3 || val_ls_3==4 || val_ls_3==5) val_ls_3=1;
2008  }
2009  if ( find(laserWavelengths_.begin(), laserWavelengths_.end(), 4) != laserWavelengths_.end() ) {
2010  if ( meLaserL4_ ) val_ls_4 = meLaserL4_->getBinContent(ipx,iex);
2011  if(val_ls_4==2 || val_ls_4==3 || val_ls_4==4 || val_ls_4==5) val_ls_4=1;
2012  }
2013 
2014  float val_ls = 1;
2015  if (val_ls_1 == 0 || val_ls_2==0 || val_ls_3==0 || val_ls_4==0) val_ls=0;
2016 
2017  // DO NOT CONSIDER CALIBRATION EVENTS IN THE REPORT SUMMARY UNTIL LHC COLLISIONS
2018  val_ls = 1;
2019 
2020  // turn each dark color (masked channel) to bright green
2021  // for laser & timing & trigger turn also yellow into bright green
2022  // for pedestal online too because is not computed in calibration events
2023 
2024  // 0/3 = red/dark red
2025  // 1/4 = green/dark green
2026  // 2/5 = yellow/dark yellow
2027  // 6 = unknown
2028 
2029  if( val_in==3 || val_in==4 || val_in==5) val_in=1;
2030  if(val_po==2 || val_po==3 || val_po==4 || val_po==5) val_po=1;
2031  if(val_tm==2 || val_tm==3 || val_tm==4 || val_tm==5) val_tm=1;
2032  if( val_sf==3 || val_sf==4 || val_sf==5) val_sf=1;
2033  if(val_ee==2 || val_ee==3 || val_ee==4 || val_ee==5) val_ee=1;
2034 
2035  if(val_in==6) xval=6;
2036  else if(val_in==0) xval=0;
2037  else if(val_po==0 || val_ls==0 || val_tm==0 || val_sf==0 || val_ee==0) xval=0;
2038  else if(val_po==2 || val_ls==2 || val_tm==2 || val_sf==2 || val_ee==2) xval=2;
2039  else xval=1;
2040 
2041  // if the SM is entirely not read, the masked channels
2042  // are reverted back to yellow
2043  float iEntries=0;
2044 
2045  if(norm01_ && synch01_) {
2046  float frac_synch_errors = 0.;
2047  float norm = norm01_->GetBinContent(ism);
2048  if(norm > 0) frac_synch_errors = float(synch01_->GetBinContent(ism))/float(norm);
2049  if(frac_synch_errors > synchErrorThreshold_){
2050  xval = 0;
2051  if(oosTrend && oosTrend->GetBinContent(oosTrend->GetNbinsX()) - oosTrend->GetBinContent(1) < 1.) xval += 3.;
2052  }
2053  }
2054 
2055  std::vector<int>::iterator iter = find(superModules_.begin(), superModules_.end(), ism);
2056  if (iter != superModules_.end()) {
2057  for ( unsigned int i=0; i<clients_.size(); i++ ) {
2058  EBIntegrityClient* ebic = dynamic_cast<EBIntegrityClient*>(clients_[i]);
2059  if ( ebic ) {
2060  TH2F* h2 = ebic->h_[ism-1];
2061  if ( h2 ) {
2062  iEntries = h2->GetEntries();
2063  }
2064  }
2065  }
2066  }
2067 
2068  if ( iEntries==0 ) {
2069  xval=2;
2070  }
2071 
2072  meGlobalSummary_->setBinContent( ipx, iex, xval );
2073 
2074  if ( xval >= 0 && xval <= 5 ) {
2075  if ( xval != 2 && xval != 5 ) ++nValidChannels;
2076  if ( iex <= 85 ) {
2077  if ( xval != 2 && xval != 5 ) ++nValidChannelsEB[(ipx-1)/20];
2078  } else {
2079  if ( xval != 2 && xval != 5 ) ++nValidChannelsEB[18+(ipx-1)/20];
2080  }
2081  if ( xval == 0 ) ++nGlobalErrors;
2082  if ( iex <= 85 ) {
2083  if ( xval == 0 ) ++nGlobalErrorsEB[(ipx-1)/20];
2084  } else {
2085  if ( xval == 0 ) ++nGlobalErrorsEB[18+(ipx-1)/20];
2086  }
2087  }
2088 
2089  }
2090 
2091  }
2092  }
2093 
2094  if(meSummaryErr_)
2095  meSummaryErr_->setBinContent(1, double(nGlobalErrors) / double(nValidChannels));
2096 
2097  float reportSummary = -1.0;
2098  if ( nValidChannels != 0 )
2099  reportSummary = 1.0 - float(nGlobalErrors)/float(nValidChannels);
2100  me = dqmStore_->get(prefixME_ + "/EventInfo/reportSummary");
2101  if ( me )
2102  me->Fill(reportSummary);
2103 
2104  for (int i = 0; i < 36; i++) {
2105  float reportSummaryEB = -1.0;
2106  if ( nValidChannelsEB[i] != 0 )
2107  reportSummaryEB = 1.0 - float(nGlobalErrorsEB[i])/float(nValidChannelsEB[i]);
2108  me = dqmStore_->get(prefixME_ + "/EventInfo/reportSummaryContents/EcalBarrel_" + Numbers::sEB(i+1));
2109  if ( me ) me->Fill(reportSummaryEB);
2110  }
2111 
2112  if(meGlobalSummary_){
2113 
2114  me = dqmStore_->get(prefixME_ + "/EventInfo/reportSummaryMap");
2115  if ( me ) {
2116 
2117  int nValidChannelsTT[72][34];
2118  int nGlobalErrorsTT[72][34];
2119  for ( int iettx = 0; iettx < 34; iettx++ ) {
2120  for ( int ipttx = 0; ipttx < 72; ipttx++ ) {
2121  nValidChannelsTT[ipttx][iettx] = 0;
2122  nGlobalErrorsTT[ipttx][iettx] = 0;
2123  }
2124  }
2125 
2126  for ( int iex = 1; iex <= 170; iex++ ) {
2127  for ( int ipx = 1; ipx <= 360; ipx++ ) {
2128 
2129  int iettx = (iex-1)/5+1;
2130  int ipttx = (ipx-1)/5+1;
2131 
2132  float xval = meGlobalSummary_->getBinContent( ipx, iex );
2133 
2134  if ( xval >= 0 && xval <= 5 ) {
2135  if ( xval != 2 && xval != 5 ) ++nValidChannelsTT[ipttx-1][iettx-1];
2136  if ( xval == 0 ) ++nGlobalErrorsTT[ipttx-1][iettx-1];
2137  }
2138 
2139  }
2140  }
2141 
2142  // Countermeasure to partial TR failure
2143  // make the whole SM red if more than 2 towers within a 2x2 matrix fails
2144 
2145  for(int jeta(1); jeta <= 33; jeta++){
2146  for(int jphi(1); jphi <= 71; jphi++){
2147  int nErr(0);
2148  if(nValidChannelsTT[jphi - 1][jeta - 1] > 0 && nGlobalErrorsTT[jphi - 1][jeta - 1] == nValidChannelsTT[jphi - 1][jeta - 1]) nErr += 1;
2149  if(nValidChannelsTT[jphi][jeta - 1] > 0 && nGlobalErrorsTT[jphi][jeta - 1] == nValidChannelsTT[jphi][jeta - 1]) nErr += 1;
2150  if(nValidChannelsTT[jphi - 1][jeta] > 0 && nGlobalErrorsTT[jphi - 1][jeta] == nValidChannelsTT[jphi - 1][jeta]) nErr += 1;
2151  if(nValidChannelsTT[jphi][jeta] > 0 && nGlobalErrorsTT[jphi][jeta] == nValidChannelsTT[jphi][jeta]) nErr += 1;
2152  if(nErr > 2){
2153  int jphi0(((jphi - 1) / 4) * 4);
2154  int jeta0(((jeta - 1) / 17) * 17);
2155  for(int jjphi(jphi0); jjphi < jphi0 + 4; jjphi++){
2156  for(int jjeta(jeta0); jjeta < jeta0 + 17; jjeta++){
2157  nGlobalErrorsTT[jjphi][jjeta] = nValidChannelsTT[jjphi][jjeta];
2158  }
2159  }
2160  }
2161  }
2162  }
2163 
2164  for ( int iettx = 0; iettx < 34; iettx++ ) {
2165  for ( int ipttx = 0; ipttx < 72; ipttx++ ) {
2166 
2167  float xval = -1.0;
2168  if ( nValidChannelsTT[ipttx][iettx] != 0 )
2169  xval = 1.0 - float(nGlobalErrorsTT[ipttx][iettx])/float(nValidChannelsTT[ipttx][iettx]);
2170 
2171  me->setBinContent( ipttx+1, iettx+1, xval );
2172  }
2173  }
2174 
2175  }
2176 
2177  }
2178 
2179 }
MonitorElement * mea02_[36]
MonitorElement * meg12_[36]
MonitorElement * mePedestalOnlineRMS_
MonitorElement * meLaserL4PNErr_
int i
Definition: DBlmapReader.cc:9
MonitorElement * meOccupancyPN_
MonitorElement * meRecHitEnergy_
MonitorElement * meg09_[36]
MonitorElement * meTriggerTowerEt_
void setBinContent(int binx, double content)
set content of bin (1-D)
static bool maskChannel(int ism, int i1, int i2, uint32_t bits, const EcalSubdetector subdet)
Definition: Masks.cc:60
MonitorElement * meLaserL3_
MonitorElement * meTestPulseAmplG01_
MonitorElement * meg03_[36]
MonitorElement * me_o02_[36]
TProfile2D * hot01_[36]
MonitorElement * meg02_[36]
TProfile2D * httt01_[36]
MonitorElement * meg05_[36]
MonitorElement * meTestPulseG12_
static const int PHYSICS_BAD_CHANNEL_WARNING
MonitorElement * meLaserL4AmplOverPN_
MonitorElement * meg04_[36]
static T getHisto(const MonitorElement *me, bool clone=false, T ret=0)
Returns the histogram contained by the Monitor Element.
Definition: UtilsClient.h:91
MonitorElement * mePedestalPNG01_
MonitorElement * met02_[36]
MonitorElement * meLaserL1Timing_
MonitorElement * meTimingMean_
static std::string sEB(const unsigned ism)
Definition: Numbers.cc:94
MonitorElement * meStatusFlagsErr_
MonitorElement * meLaserL1_
MonitorElement * meg02_[36]
MonitorElement * meg03_[36]
MonitorElement * mea01_[36]
MonitorElement * meIntegrity_
MonitorElement * meg02_[36]
#define abs(x)
Definition: mlp_lapack.h:159
MonitorElement * meg01_[36]
MonitorElement * mePedestalOnlineErr_
MonitorElement * mePedestalG06_
MonitorElement * meOccupancy_
MonitorElement * meTestPulseAmplG12_
MonitorElement * meLaserL3Timing_
std::vector< int > superModules_
std::vector< int > laserWavelengths_
double getEntries(void) const
get # of entries
void find(edm::Handle< EcalRecHitCollection > &hits, DetId thisDet, std::vector< EcalRecHitCollection::const_iterator > &hit, bool debug=false)
Definition: FindCaloHit.cc:7
static void maskBinContent(const MonitorElement *me, const int ix, const int iy)
Mask the bin content.
Definition: UtilsClient.cc:231
MonitorElement * mea03_[36]
MonitorElement * met04_[36]
MonitorElement * meLaserL2Err_
MonitorElement * meLaserL2_
MonitorElement * meg04_[36]
void Fill(long long x)
MonitorElement * meLaserL3Ampl_
MonitorElement * meTestPulsePNG16_
MonitorElement * mea02_[36]
MonitorElement * mePedestalG01_
MonitorElement * meg10_[36]
MonitorElement * meIntegrityErr_
MonitorElement * meSummaryErr_
MonitorElement * meLaserL3PNErr_
MonitorElement * meg01_[36]
MonitorElement * meLaserL2PN_
MonitorElement * meTestPulsePNG01_
MonitorElement * meLaserL4Timing_
MonitorElement * meLaserL2AmplOverPN_
MonitorElement * meTimingRMS_
std::string prefixME_
MonitorElement * meIntegrityPN_
int j
Definition: DBlmapReader.cc:9
MonitorElement * mea04_[36]
TProfile2D * hpot01_[36]
MonitorElement * meLaserL3Err_
MonitorElement * meLaserL4Err_
MonitorElement * meh01_[36]
MonitorElement * meg04_[36]
MonitorElement * meTimingRMS1D_
MonitorElement * meOccupancy1D_
void setEntries(double nentries)
set # of entries
MonitorElement * meTriggerTowerEmulError_
MonitorElement * get(const std::string &path) const
get ME from full pathname (e.g. &quot;my/long/dir/my_histo&quot;)
Definition: DQMStore.cc:1468
MonitorElement * met03_[36]
MonitorElement * meTriggerTowerTiming_
static bool getBinStatistics(TH1 *histo, const int ix, const int iy, float &num, float &mean, float &rms, float minEntries=1.)
Returns true if the bin contains good statistical data.
Definition: UtilsClient.cc:74
DQMStore * dqmStore_
MonitorElement * meLaserL3PN_
MonitorElement * meLaserL3AmplOverPN_
MonitorElement * meaopn04_[36]
MonitorElement * meLaserL4PN_
MonitorElement * meLaserL2Timing_
MonitorElement * meaopn01_[36]
MonitorElement * meTimingMean1D_
MonitorElement * me_o01_[36]
MonitorElement * meTiming_
MonitorElement * meg03_[36]
long long int num
Definition: procUtils.cc:71
MonitorElement * meLaserL1AmplOverPN_
MonitorElement * mePedestalOnlineRMSMap_
MonitorElement * meg11_[36]
MonitorElement * meLaserL4Ampl_
MonitorElement * meLaserL1Err_
MonitorElement * mea01_[36]
MonitorElement * mea03_[36]
MonitorElement * meLaserL4_
MonitorElement * meg01_[36]
MonitorElement * meTestPulseAmplG06_
double getBinContent(int binx) const
get content of bin (1-D)
MonitorElement * mePedestalOnline_
MonitorElement * meGlobalSummary_
MonitorElement * meStatusFlags_
MonitorElement * meLaserL1PN_
MonitorElement * meLaserL2PNErr_
MonitorElement * meTestPulseG06_
MonitorElement * meTestPulseG01_
tuple cout
Definition: gather_cfg.py:121
MonitorElement * meLaserL1Ampl_
MonitorElement * meg05_[36]
float synchErrorThreshold_
MonitorElement * meLaserL1PNErr_
MonitorElement * meg02_[36]
MonitorElement * meg03_[36]
MonitorElement * meg01_[36]
MonitorElement * meaopn02_[36]
int ism(int ieta, int iphi)
Definition: EcalPyUtils.cc:56
MonitorElement * meaopn03_[36]
void Reset(void)
reset ME (ie. contents, errors, etc)
MonitorElement * meLaserL2Ampl_
std::vector< EBClient * > clients_
MonitorElement * mePedestalG12_
TProfile2D * htmt01_[36]
MonitorElement * met01_[36]
std::string subfolder_
MonitorElement * meTriggerTowerNonSingleTiming_
MonitorElement * mePedestalOnlineMean_
MonitorElement * mePedestalPNG16_
void EBSummaryClient::beginJob ( void  )
virtual

BeginJob.

Implements EBClient.

Definition at line 179 of file EBSummaryClient.cc.

References gather_cfg::cout, debug_, dqmStore_, ievt_, jevt_, and cppFunctionSkipper::operator.

Referenced by EcalBarrelMonitorClient::beginJob().

179  {
180 
182 
183  if ( debug_ ) std::cout << "EBSummaryClient: beginJob" << std::endl;
184 
185  ievt_ = 0;
186  jevt_ = 0;
187 
188 }
DQMStore * dqmStore_
tuple cout
Definition: gather_cfg.py:121
void EBSummaryClient::beginRun ( void  )
virtual

BeginRun.

Implements EBClient.

Definition at line 190 of file EBSummaryClient.cc.

References gather_cfg::cout, debug_, jevt_, and setup().

Referenced by EcalBarrelMonitorClient::beginRun().

190  {
191 
192  if ( debug_ ) std::cout << "EBSummaryClient: beginRun" << std::endl;
193 
194  jevt_ = 0;
195 
196  this->setup();
197 
198 }
void setup(void)
Setup.
tuple cout
Definition: gather_cfg.py:121
void EBSummaryClient::cleanup ( void  )
virtual

Cleanup.

Implements EBClient.

Definition at line 773 of file EBSummaryClient.cc.

References cloneME_, dqmStore_, enableCleanup_, MonitorElement::getName(), hpot01_, httt01_, i, ecalpyutils::ism(), meGlobalSummary_, meIntegrity_, meIntegrityErr_, meIntegrityPN_, meLaserL1_, meLaserL1Ampl_, meLaserL1AmplOverPN_, meLaserL1Err_, meLaserL1PN_, meLaserL1PNErr_, meLaserL1Timing_, meLaserL2_, meLaserL2Ampl_, meLaserL2AmplOverPN_, meLaserL2Err_, meLaserL2PN_, meLaserL2PNErr_, meLaserL2Timing_, meLaserL3_, meLaserL3Ampl_, meLaserL3AmplOverPN_, meLaserL3Err_, meLaserL3PN_, meLaserL3PNErr_, meLaserL3Timing_, meLaserL4_, meLaserL4Ampl_, meLaserL4AmplOverPN_, meLaserL4Err_, meLaserL4PN_, meLaserL4PNErr_, meLaserL4Timing_, meOccupancy1D_, meOccupancy_, meOccupancyPN_, mePedestalG01_, mePedestalG06_, mePedestalG12_, mePedestalOnline_, mePedestalOnlineErr_, mePedestalOnlineMean_, mePedestalOnlineRMS_, mePedestalOnlineRMSMap_, meRecHitEnergy_, meStatusFlags_, meStatusFlagsErr_, meSummaryErr_, meTestPulseAmplG01_, meTestPulseAmplG06_, meTestPulseAmplG12_, meTestPulseG01_, meTestPulseG06_, meTestPulseG12_, meTiming_, meTimingMean1D_, meTimingMean_, meTimingRMS1D_, meTimingRMS_, meTriggerTowerEmulError_, meTriggerTowerEt_, meTriggerTowerNonSingleTiming_, meTriggerTowerTiming_, prefixME_, DQMStore::removeElement(), DQMStore::setCurrentFolder(), and superModules_.

Referenced by endJob(), and endRun().

773  {
774 
775  if ( ! enableCleanup_ ) return;
776 
777  for ( unsigned int i=0; i<superModules_.size(); i++ ) {
778 
779  int ism = superModules_[i];
780 
781  if ( cloneME_ ) {
782  if ( hpot01_[ism-1] ) delete hpot01_[ism-1];
783  if ( httt01_[ism-1] ) delete httt01_[ism-1];
784  }
785 
786  hpot01_[ism-1] = 0;
787  httt01_[ism-1] = 0;
788 
789  }
790 
791  dqmStore_->setCurrentFolder( prefixME_ + "/EBSummaryClient" );
792 
794  meIntegrity_ = 0;
795 
797  meIntegrityErr_ = 0;
798 
800  meIntegrityPN_ = 0;
801 
803  meOccupancy_ = 0;
804 
806  meOccupancy1D_ = 0;
807 
809  meOccupancyPN_ = 0;
810 
812  meStatusFlags_ = 0;
813 
815  meStatusFlagsErr_ = 0;
816 
818  mePedestalOnline_ = 0;
819 
822 
825 
828 
831 
833  meLaserL1_ = 0;
834 
836  meLaserL1Err_ = 0;
837 
839  meLaserL1Ampl_ = 0;
840 
842  meLaserL1Timing_ = 0;
843 
846 
848  meLaserL1PN_ = 0;
849 
851  meLaserL1PNErr_ = 0;
852 
854  meLaserL2_ = 0;
855 
857  meLaserL2Err_ = 0;
858 
860  meLaserL2Ampl_ = 0;
861 
863  meLaserL2Timing_ = 0;
864 
867 
869  meLaserL2PN_ = 0;
870 
872  meLaserL2PNErr_ = 0;
873 
875  meLaserL3_ = 0;
876 
878  meLaserL3Err_ = 0;
879 
881  meLaserL3Ampl_ = 0;
882 
884  meLaserL3Timing_ = 0;
885 
888 
890  meLaserL3PN_ = 0;
891 
893  meLaserL3PNErr_ = 0;
894 
896  meLaserL4_ = 0;
897 
899  meLaserL4Err_ = 0;
900 
902  meLaserL4Ampl_ = 0;
903 
905  meLaserL4Timing_ = 0;
906 
909 
911  meLaserL4PN_ = 0;
912 
914  meLaserL4PNErr_ = 0;
915 
917  mePedestalG01_ = 0;
918 
920  mePedestalG06_ = 0;
921 
923  mePedestalG12_ = 0;
924 
926  meTestPulseG01_ = 0;
927 
929  meTestPulseG06_ = 0;
930 
932  meTestPulseG12_ = 0;
933 
935  meTestPulseG01_ = 0;
936 
939 
942 
945 
947  meRecHitEnergy_ = 0;
948 
950  meTiming_ = 0;
951 
953  meTimingMean1D_ = 0;
954 
956  meTimingRMS1D_ = 0;
957 
959  meTimingMean_ = 0;
960 
962  meTimingRMS_ = 0;
963 
965  meTriggerTowerEt_ = 0;
966 
969 
972 
975 
977  meGlobalSummary_ = 0;
978 
980  meSummaryErr_ = 0;
981 }
MonitorElement * mePedestalOnlineRMS_
MonitorElement * meLaserL4PNErr_
const std::string & getName(void) const
get name of ME
int i
Definition: DBlmapReader.cc:9
MonitorElement * meOccupancyPN_
MonitorElement * meRecHitEnergy_
MonitorElement * meTriggerTowerEt_
MonitorElement * meLaserL3_
MonitorElement * meTestPulseAmplG01_
TProfile2D * httt01_[36]
MonitorElement * meTestPulseG12_
MonitorElement * meLaserL4AmplOverPN_
MonitorElement * meLaserL1Timing_
MonitorElement * meTimingMean_
MonitorElement * meStatusFlagsErr_
MonitorElement * meLaserL1_
MonitorElement * meIntegrity_
MonitorElement * mePedestalOnlineErr_
MonitorElement * mePedestalG06_
MonitorElement * meOccupancy_
MonitorElement * meTestPulseAmplG12_
MonitorElement * meLaserL3Timing_
std::vector< int > superModules_
MonitorElement * meLaserL2Err_
MonitorElement * meLaserL2_
MonitorElement * meLaserL3Ampl_
MonitorElement * mePedestalG01_
MonitorElement * meIntegrityErr_
MonitorElement * meSummaryErr_
MonitorElement * meLaserL3PNErr_
MonitorElement * meLaserL2PN_
MonitorElement * meLaserL4Timing_
MonitorElement * meLaserL2AmplOverPN_
void removeElement(const std::string &name)
Definition: DQMStore.cc:2572
MonitorElement * meTimingRMS_
std::string prefixME_
MonitorElement * meIntegrityPN_
TProfile2D * hpot01_[36]
MonitorElement * meLaserL3Err_
MonitorElement * meLaserL4Err_
MonitorElement * meTimingRMS1D_
MonitorElement * meOccupancy1D_
MonitorElement * meTriggerTowerEmulError_
MonitorElement * meTriggerTowerTiming_
DQMStore * dqmStore_
MonitorElement * meLaserL3PN_
MonitorElement * meLaserL3AmplOverPN_
MonitorElement * meLaserL4PN_
MonitorElement * meLaserL2Timing_
MonitorElement * meTimingMean1D_
MonitorElement * meTiming_
MonitorElement * meLaserL1AmplOverPN_
MonitorElement * mePedestalOnlineRMSMap_
MonitorElement * meLaserL4Ampl_
MonitorElement * meLaserL1Err_
MonitorElement * meLaserL4_
MonitorElement * meTestPulseAmplG06_
MonitorElement * mePedestalOnline_
MonitorElement * meGlobalSummary_
MonitorElement * meStatusFlags_
MonitorElement * meLaserL1PN_
MonitorElement * meLaserL2PNErr_
MonitorElement * meTestPulseG06_
MonitorElement * meTestPulseG01_
MonitorElement * meLaserL1Ampl_
MonitorElement * meLaserL1PNErr_
int ism(int ieta, int iphi)
Definition: EcalPyUtils.cc:56
MonitorElement * meLaserL2Ampl_
MonitorElement * mePedestalG12_
void setCurrentFolder(const std::string &fullpath)
Definition: DQMStore.cc:429
MonitorElement * meTriggerTowerNonSingleTiming_
MonitorElement * mePedestalOnlineMean_
void EBSummaryClient::endJob ( void  )
virtual

EndJob.

Implements EBClient.

Definition at line 200 of file EBSummaryClient.cc.

References cleanup(), gather_cfg::cout, debug_, and ievt_.

Referenced by EcalBarrelMonitorClient::endJob().

200  {
201 
202  if ( debug_ ) std::cout << "EBSummaryClient: endJob, ievt = " << ievt_ << std::endl;
203 
204  this->cleanup();
205 
206 }
void cleanup(void)
Cleanup.
tuple cout
Definition: gather_cfg.py:121
void EBSummaryClient::endRun ( void  )
virtual

EndRun.

Implements EBClient.

Definition at line 208 of file EBSummaryClient.cc.

References cleanup(), gather_cfg::cout, debug_, and jevt_.

Referenced by EcalBarrelMonitorClient::endRun().

208  {
209 
210  if ( debug_ ) std::cout << "EBSummaryClient: endRun, jevt = " << jevt_ << std::endl;
211 
212  this->cleanup();
213 
214 }
void cleanup(void)
Cleanup.
tuple cout
Definition: gather_cfg.py:121
int EBSummaryClient::getEvtPerJob ( void  )
inlinevirtual

Get Functions.

Implements EBClient.

Definition at line 68 of file EBSummaryClient.h.

References ievt_.

68 { return ievt_; }
int EBSummaryClient::getEvtPerRun ( void  )
inlinevirtual

Returns the number of processed events in this Run.

Implements EBClient.

Definition at line 69 of file EBSummaryClient.h.

References jevt_.

69 { return jevt_; }
void EBSummaryClient::setFriends ( std::vector< EBClient * >  clients)
inline

Set Clients.

Definition at line 72 of file EBSummaryClient.h.

References clients_.

Referenced by EcalBarrelMonitorClient::EcalBarrelMonitorClient().

72 { clients_ = clients; }
std::vector< EBClient * > clients_
void EBSummaryClient::setup ( void  )
virtual

Setup.

Implements EBClient.

Definition at line 216 of file EBSummaryClient.cc.

References DQMStore::book1D(), DQMStore::book2D(), DQMStore::bookProfile(), clients_, dqmStore_, spr::find(), MonitorElement::getName(), i, IntegrityClient_cfi::integrityClient, LaserClient_cfi::laserClient, laserWavelengths_, meGlobalSummary_, meIntegrity_, meIntegrityErr_, meIntegrityPN_, meLaserL1_, meLaserL1Ampl_, meLaserL1AmplOverPN_, meLaserL1Err_, meLaserL1PN_, meLaserL1PNErr_, meLaserL1Timing_, meLaserL2_, meLaserL2Ampl_, meLaserL2AmplOverPN_, meLaserL2Err_, meLaserL2PN_, meLaserL2PNErr_, meLaserL2Timing_, meLaserL3_, meLaserL3Ampl_, meLaserL3AmplOverPN_, meLaserL3Err_, meLaserL3PN_, meLaserL3PNErr_, meLaserL3Timing_, meLaserL4_, meLaserL4Ampl_, meLaserL4AmplOverPN_, meLaserL4Err_, meLaserL4PN_, meLaserL4PNErr_, meLaserL4Timing_, meOccupancy1D_, meOccupancy_, meOccupancyPN_, mePedestalG01_, mePedestalG06_, mePedestalG12_, mePedestalOnline_, mePedestalOnlineErr_, mePedestalOnlineMean_, mePedestalOnlineRMS_, mePedestalOnlineRMSMap_, mePedestalPNG01_, mePedestalPNG16_, meRecHitEnergy_, meStatusFlags_, meStatusFlagsErr_, meSummaryErr_, meTestPulseAmplG01_, meTestPulseAmplG06_, meTestPulseAmplG12_, meTestPulseG01_, meTestPulseG06_, meTestPulseG12_, meTestPulsePNG01_, meTestPulsePNG16_, meTiming_, meTimingMean1D_, meTimingMean_, meTimingRMS1D_, meTimingRMS_, meTriggerTowerEmulError_, meTriggerTowerEt_, meTriggerTowerNonSingleTiming_, meTriggerTowerTiming_, MGPAGains_, MGPAGainsPN_, mergeVDriftHistosByStation::name, OccupancyClient_cfi::occupancyClient, prefixME_, produceReports_, reducedReports_, DQMStore::removeElement(), Numbers::sEB(), MonitorElement::setAxisTitle(), MonitorElement::setBinLabel(), DQMStore::setCurrentFolder(), and TimingClient_cfi::timingClient.

Referenced by beginRun().

216  {
217 
218  bool integrityClient(false);
219  bool occupancyClient(false);
220  bool statusFlagsClient(false);
221  bool pedestalOnlineClient(false);
222  bool laserClient(false);
223  bool pedestalClient(false);
224  bool testPulseClient(false);
225  bool timingClient(false);
226  bool triggerTowerClient(false);
227 
228  for(unsigned i = 0; i < clients_.size(); i++){
229 
230  if(dynamic_cast<EBIntegrityClient*>(clients_[i])) integrityClient = true;
231  if(dynamic_cast<EBOccupancyClient*>(clients_[i])) occupancyClient = true;
232  if(dynamic_cast<EBStatusFlagsClient*>(clients_[i])) statusFlagsClient = true;
233  if(dynamic_cast<EBPedestalOnlineClient*>(clients_[i])) pedestalOnlineClient = true;
234  if(dynamic_cast<EBLaserClient*>(clients_[i])) laserClient = true;
235  if(dynamic_cast<EBPedestalClient*>(clients_[i])) pedestalClient = true;
236  if(dynamic_cast<EBTestPulseClient*>(clients_[i])) testPulseClient = true;
237  if(dynamic_cast<EBTimingClient*>(clients_[i])) timingClient = true;
238  if(dynamic_cast<EBTriggerTowerClient*>(clients_[i])) triggerTowerClient = true;
239 
240  }
241 
242  std::string name;
243 
244  dqmStore_->setCurrentFolder( prefixME_ + "/EBSummaryClient" );
245 
246  if(integrityClient){
247  if(produceReports_){
249  name = "EBIT integrity quality summary";
250  meIntegrity_ = dqmStore_->book2D(name, name, 360, 0., 360., 170, -85., 85.);
251  meIntegrity_->setAxisTitle("jphi", 1);
252  meIntegrity_->setAxisTitle("jeta", 2);
253 
255  name = "EBIT integrity quality errors summary";
256  meIntegrityErr_ = dqmStore_->book1D(name, name, 36, 1, 37);
257  for (int i = 0; i < 36; i++) {
258  meIntegrityErr_->setBinLabel(i+1, Numbers::sEB(i+1).c_str(), 1);
259  }
260  }
261  if(laserClient){
263  name = "EBIT PN integrity quality summary";
264  meIntegrityPN_ = dqmStore_->book2D(name, name, 90, 0., 90., 20, -10., 10.);
265  meIntegrityPN_->setAxisTitle("jchannel", 1);
266  meIntegrityPN_->setAxisTitle("jpseudo-strip", 2);
267  }
268  }
269 
270  if(occupancyClient){
271  if(produceReports_){
273  name = "EBOT digi occupancy summary";
274  meOccupancy_ = dqmStore_->book2D(name, name, 360, 0., 360., 170, -85., 85.);
275  meOccupancy_->setAxisTitle("jphi", 1);
276  meOccupancy_->setAxisTitle("jeta", 2);
277 
279  name = "EBOT digi occupancy summary 1D";
280  meOccupancy1D_ = dqmStore_->book1D(name, name, 36, 1, 37);
281  for (int i = 0; i < 36; i++) {
282  meOccupancy1D_->setBinLabel(i+1, Numbers::sEB(i+1).c_str(), 1);
283  }
284 
286  name = "EBOT energy summary";
287  meRecHitEnergy_ = dqmStore_->book2D(name, name, 360, 0., 360., 170, -85., 85.);
288  meRecHitEnergy_->setAxisTitle("jphi", 1);
289  meRecHitEnergy_->setAxisTitle("jeta", 2);
290  meRecHitEnergy_->setAxisTitle("energy (GeV)", 3);
291  }
292  if(laserClient){
294  name = "EBOT PN digi occupancy summary";
295  meOccupancyPN_ = dqmStore_->book2D(name, name, 90, 0., 90., 20, -10., 10.);
296  meOccupancyPN_->setAxisTitle("jchannel", 1);
297  meOccupancyPN_->setAxisTitle("jpseudo-strip", 2);
298  }
299 
300  }
301 
302  if(statusFlagsClient && produceReports_){
304  name = "EBSFT front-end status summary";
305  meStatusFlags_ = dqmStore_->book2D(name, name, 72, 0., 72., 34, -17., 17.);
306  meStatusFlags_->setAxisTitle("jphi'", 1);
307  meStatusFlags_->setAxisTitle("jeta'", 2);
308 
310  name = "EBSFT front-end status errors summary";
311  meStatusFlagsErr_ = dqmStore_->book1D(name, name, 36, 1, 37);
312  for (int i = 0; i < 36; i++) {
313  meStatusFlagsErr_->setBinLabel(i+1, Numbers::sEB(i+1).c_str(), 1);
314  }
315  }
316 
317  if(pedestalOnlineClient && produceReports_){
319  name = "EBPOT pedestal quality summary G12";
320  mePedestalOnline_ = dqmStore_->book2D(name, name, 360, 0., 360., 170, -85., 85.);
321  mePedestalOnline_->setAxisTitle("jphi", 1);
322  mePedestalOnline_->setAxisTitle("jeta", 2);
323 
325  name = "EBPOT pedestal quality errors summary G12";
326  mePedestalOnlineErr_ = dqmStore_->book1D(name, name, 36, 1, 37);
327  for (int i = 0; i < 36; i++) {
328  mePedestalOnlineErr_->setBinLabel(i+1, Numbers::sEB(i+1).c_str(), 1);
329  }
330 
332  name = "EBPOT pedestal G12 RMS map";
333  mePedestalOnlineRMSMap_ = dqmStore_->book2D(name, name, 360, 0., 360., 170, -85., 85.);
337 
339  name = "EBPOT pedestal G12 mean";
340  mePedestalOnlineMean_ = dqmStore_->bookProfile(name, name, 36, 1, 37, 100, 150., 250.);
341  for (int i = 0; i < 36; i++) {
342  mePedestalOnlineMean_->setBinLabel(i+1, Numbers::sEB(i+1).c_str(), 1);
343  }
344 
346  name = "EBPOT pedestal G12 rms";
347  mePedestalOnlineRMS_ = dqmStore_->bookProfile(name, name, 36, 1, 37, 100, 0., 10.);
348  for (int i = 0; i < 36; i++) {
349  mePedestalOnlineRMS_->setBinLabel(i+1, Numbers::sEB(i+1).c_str(), 1);
350  }
351  }
352 
353  if(laserClient){
354 
355  if ( find(laserWavelengths_.begin(), laserWavelengths_.end(), 1) != laserWavelengths_.end() ) {
356 
358  name = "EBLT laser quality summary L1";
359  meLaserL1_ = dqmStore_->book2D(name, name, 360, 0., 360., 170, -85., 85.);
360  meLaserL1_->setAxisTitle("jphi", 1);
361  meLaserL1_->setAxisTitle("jeta", 2);
362 
364  name = "EBLT laser quality errors summary L1";
365  meLaserL1Err_ = dqmStore_->book1D(name, name, 36, 1, 37);
366  for (int i = 0; i < 36; i++) {
367  meLaserL1Err_->setBinLabel(i+1, Numbers::sEB(i+1).c_str(), 1);
368  }
369 
371  name = "EBLT PN laser quality summary L1";
372  meLaserL1PN_ = dqmStore_->book2D(name, name, 90, 0., 90., 20, -10., 10.);
373  meLaserL1PN_->setAxisTitle("jchannel", 1);
374  meLaserL1PN_->setAxisTitle("jpseudo-strip", 2);
375 
377  name = "EBLT PN laser quality errors summary L1";
378  meLaserL1PNErr_ = dqmStore_->book1D(name, name, 36, 1, 37);
379  for (int i = 0; i < 36; i++) {
380  meLaserL1PNErr_->setBinLabel(i+1, Numbers::sEB(i+1).c_str(), 1);
381  }
382 
384  name = "EBLT laser L1 amplitude summary";
385  meLaserL1Ampl_ = dqmStore_->bookProfile(name, name, 36, 1, 37, 4096, 0., 4096., "s");
386  for (int i = 0; i < 36; i++) {
387  meLaserL1Ampl_->setBinLabel(i+1, Numbers::sEB(i+1).c_str(), 1);
388  }
389 
391  name = "EBLT laser L1 timing summary";
392  meLaserL1Timing_ = dqmStore_->bookProfile(name, name, 36, 1, 37, 100, 0., 10., "s");
393  for (int i = 0; i < 36; i++) {
394  meLaserL1Timing_->setBinLabel(i+1, Numbers::sEB(i+1).c_str(), 1);
395  }
396 
398  name = "EBLT laser L1 amplitude over PN summary";
399  meLaserL1AmplOverPN_ = dqmStore_->bookProfile(name, name, 36, 1, 37, 4096, 0., 4096.*12., "s");
400  for (int i = 0; i < 36; i++) {
401  meLaserL1AmplOverPN_->setBinLabel(i+1, Numbers::sEB(i+1).c_str(), 1);
402  }
403 
404  }
405 
406  if ( find(laserWavelengths_.begin(), laserWavelengths_.end(), 2) != laserWavelengths_.end() ) {
407 
409  name = "EBLT laser quality summary L2";
410  meLaserL2_ = dqmStore_->book2D(name, name, 360, 0., 360., 170, -85., 85.);
411  meLaserL2_->setAxisTitle("jphi", 1);
412  meLaserL2_->setAxisTitle("jeta", 2);
413 
415  name = "EBLT laser quality errors summary L2";
416  meLaserL2Err_ = dqmStore_->book1D(name, name, 36, 1, 37);
417  for (int i = 0; i < 36; i++) {
418  meLaserL2Err_->setBinLabel(i+1, Numbers::sEB(i+1).c_str(), 1);
419  }
420 
422  name = "EBLT PN laser quality summary L2";
423  meLaserL2PN_ = dqmStore_->book2D(name, name, 90, 0., 90., 20, -10., 10.);
424  meLaserL2PN_->setAxisTitle("jchannel", 1);
425  meLaserL2PN_->setAxisTitle("jpseudo-strip", 2);
426 
428  name = "EBLT PN laser quality errors summary L2";
429  meLaserL2PNErr_ = dqmStore_->book1D(name, name, 36, 1, 37);
430  for (int i = 0; i < 36; i++) {
431  meLaserL2PNErr_->setBinLabel(i+1, Numbers::sEB(i+1).c_str(), 1);
432  }
433 
435  name = "EBLT laser L2 amplitude summary";
436  meLaserL2Ampl_ = dqmStore_->bookProfile(name, name, 36, 1, 37, 4096, 0., 4096., "s");
437  for (int i = 0; i < 36; i++) {
438  meLaserL2Ampl_->setBinLabel(i+1, Numbers::sEB(i+1).c_str(), 1);
439  }
440 
442  name = "EBLT laser L2 timing summary";
443  meLaserL2Timing_ = dqmStore_->bookProfile(name, name, 36, 1, 37, 100, 0., 10., "s");
444  for (int i = 0; i < 36; i++) {
445  meLaserL2Timing_->setBinLabel(i+1, Numbers::sEB(i+1).c_str(), 1);
446  }
447 
449  name = "EBLT laser L2 amplitude over PN summary";
450  meLaserL2AmplOverPN_ = dqmStore_->bookProfile(name, name, 36, 1, 37, 4096, 0., 4096.*12., "s");
451  for (int i = 0; i < 36; i++) {
452  meLaserL2AmplOverPN_->setBinLabel(i+1, Numbers::sEB(i+1).c_str(), 1);
453  }
454 
455  }
456 
457  if ( find(laserWavelengths_.begin(), laserWavelengths_.end(), 3) != laserWavelengths_.end() ) {
458 
460  name = "EBLT laser quality summary L3";
461  meLaserL3_ = dqmStore_->book2D(name, name, 360, 0., 360., 170, -85., 85.);
462  meLaserL3_->setAxisTitle("jphi", 1);
463  meLaserL3_->setAxisTitle("jeta", 2);
464 
466  name = "EBLT laser quality errors summary L3";
467  meLaserL3Err_ = dqmStore_->book1D(name, name, 36, 1, 37);
468  for (int i = 0; i < 36; i++) {
469  meLaserL3Err_->setBinLabel(i+1, Numbers::sEB(i+1).c_str(), 1);
470  }
471 
473  name = "EBLT PN laser quality summary L3";
474  meLaserL3PN_ = dqmStore_->book2D(name, name, 90, 0., 90., 20, -10., 10.);
475  meLaserL3PN_->setAxisTitle("jchannel", 1);
476  meLaserL3PN_->setAxisTitle("jpseudo-strip", 2);
477 
479  name = "EBLT PN laser quality errors summary L3";
480  meLaserL3PNErr_ = dqmStore_->book1D(name, name, 36, 1, 37);
481  for (int i = 0; i < 36; i++) {
482  meLaserL3PNErr_->setBinLabel(i+1, Numbers::sEB(i+1).c_str(), 1);
483  }
484 
486  name = "EBLT laser L3 amplitude summary";
487  meLaserL3Ampl_ = dqmStore_->bookProfile(name, name, 36, 1, 37, 4096, 0., 4096., "s");
488  for (int i = 0; i < 36; i++) {
489  meLaserL3Ampl_->setBinLabel(i+1, Numbers::sEB(i+1).c_str(), 1);
490  }
491 
493  name = "EBLT laser L3 timing summary";
494  meLaserL3Timing_ = dqmStore_->bookProfile(name, name, 36, 1, 37, 100, 0., 10., "s");
495  for (int i = 0; i < 36; i++) {
496  meLaserL3Timing_->setBinLabel(i+1, Numbers::sEB(i+1).c_str(), 1);
497  }
498 
500  name = "EBLT laser L3 amplitude over PN summary";
501  meLaserL3AmplOverPN_ = dqmStore_->bookProfile(name, name, 36, 1, 37, 4096, 0., 4096.*12., "s");
502  for (int i = 0; i < 36; i++) {
503  meLaserL3AmplOverPN_->setBinLabel(i+1, Numbers::sEB(i+1).c_str(), 1);
504  }
505 
506  }
507 
508  if ( find(laserWavelengths_.begin(), laserWavelengths_.end(), 4) != laserWavelengths_.end() ) {
509 
511  name = "EBLT laser quality summary L4";
512  meLaserL4_ = dqmStore_->book2D(name, name, 360, 0., 360., 170, -85., 85.);
513  meLaserL4_->setAxisTitle("jphi", 1);
514  meLaserL4_->setAxisTitle("jeta", 2);
515 
517  name = "EBLT laser quality errors summary L4";
518  meLaserL4Err_ = dqmStore_->book1D(name, name, 36, 1, 37);
519  for (int i = 0; i < 36; i++) {
520  meLaserL4Err_->setBinLabel(i+1, Numbers::sEB(i+1).c_str(), 1);
521  }
522 
524  name = "EBLT PN laser quality summary L4";
525  meLaserL4PN_ = dqmStore_->book2D(name, name, 90, 0., 90., 20, -10., 10.);
526  meLaserL4PN_->setAxisTitle("jchannel", 1);
527  meLaserL4PN_->setAxisTitle("jpseudo-strip", 2);
528 
530  name = "EBLT PN laser quality errors summary L4";
531  meLaserL4PNErr_ = dqmStore_->book1D(name, name, 36, 1, 37);
532  for (int i = 0; i < 36; i++) {
533  meLaserL4PNErr_->setBinLabel(i+1, Numbers::sEB(i+1).c_str(), 1);
534  }
535 
537  name = "EBLT laser L4 amplitude summary";
538  meLaserL4Ampl_ = dqmStore_->bookProfile(name, name, 36, 1, 37, 4096, 0., 4096., "s");
539  for (int i = 0; i < 36; i++) {
540  meLaserL4Ampl_->setBinLabel(i+1, Numbers::sEB(i+1).c_str(), 1);
541  }
542 
544  name = "EBLT laser L4 timing summary";
545  meLaserL4Timing_ = dqmStore_->bookProfile(name, name, 36, 1, 37, 100, 0., 10., "s");
546  for (int i = 0; i < 36; i++) {
547  meLaserL4Timing_->setBinLabel(i+1, Numbers::sEB(i+1).c_str(), 1);
548  }
549 
551  name = "EBLT laser L4 amplitude over PN summary";
552  meLaserL4AmplOverPN_ = dqmStore_->bookProfile(name, name, 36, 1, 37, 4096, 0., 4096.*12., "s");
553  for (int i = 0; i < 36; i++) {
554  meLaserL4AmplOverPN_->setBinLabel(i+1, Numbers::sEB(i+1).c_str(), 1);
555  }
556 
557  }
558  }
559 
560  if(pedestalClient){
561  if (find(MGPAGains_.begin(), MGPAGains_.end(), 1) != MGPAGains_.end() ) {
562 
564  name = "EBPT pedestal quality G01 summary";
565  mePedestalG01_ = dqmStore_->book2D(name, name, 360, 0., 360., 170, -85., 85.);
566  mePedestalG01_->setAxisTitle("jphi", 1);
567  mePedestalG01_->setAxisTitle("jeta", 2);
568 
569  }
570 
571  if (find(MGPAGains_.begin(), MGPAGains_.end(), 6) != MGPAGains_.end() ) {
572 
574  name = "EBPT pedestal quality G06 summary";
575  mePedestalG06_ = dqmStore_->book2D(name, name, 360, 0., 360., 170, -85., 85.);
576  mePedestalG06_->setAxisTitle("jphi", 1);
577  mePedestalG06_->setAxisTitle("jeta", 2);
578 
579  }
580 
581  if (find(MGPAGains_.begin(), MGPAGains_.end(), 12) != MGPAGains_.end() ) {
582 
584  name = "EBPT pedestal quality G12 summary";
585  mePedestalG12_ = dqmStore_->book2D(name, name, 360, 0., 360., 170, -85., 85.);
586  mePedestalG12_->setAxisTitle("jphi", 1);
587  mePedestalG12_->setAxisTitle("jeta", 2);
588 
589  }
590 
591  if (find(MGPAGainsPN_.begin(), MGPAGainsPN_.end(), 1) != MGPAGainsPN_.end() ) {
592 
594  name = "EBPT PN pedestal quality G01 summary";
595  mePedestalPNG01_ = dqmStore_->book2D(name, name, 90, 0., 90., 20, -10, 10.);
596  mePedestalPNG01_->setAxisTitle("jchannel", 1);
597  mePedestalPNG01_->setAxisTitle("jpseudo-strip", 2);
598 
599  }
600 
601  if (find(MGPAGainsPN_.begin(), MGPAGainsPN_.end(), 16) != MGPAGainsPN_.end() ) {
602 
604  name = "EBPT PN pedestal quality G16 summary";
605  mePedestalPNG16_ = dqmStore_->book2D(name, name, 90, 0., 90., 20, -10, 10.);
606  mePedestalPNG16_->setAxisTitle("jchannel", 1);
607  mePedestalPNG16_->setAxisTitle("jpseudo-strip", 2);
608 
609  }
610  }
611 
612  if(testPulseClient){
613  if (find(MGPAGains_.begin(), MGPAGains_.end(), 1) != MGPAGains_.end() ) {
614 
616  name = "EBTPT test pulse quality G01 summary";
617  meTestPulseG01_ = dqmStore_->book2D(name, name, 360, 0., 360., 170, -85., 85.);
618  meTestPulseG01_->setAxisTitle("jphi", 1);
619  meTestPulseG01_->setAxisTitle("jeta", 2);
620 
621  }
622 
623  if (find(MGPAGains_.begin(), MGPAGains_.end(), 6) != MGPAGains_.end() ) {
624 
626  name = "EBTPT test pulse quality G06 summary";
627  meTestPulseG06_ = dqmStore_->book2D(name, name, 360, 0., 360., 170, -85., 85.);
628  meTestPulseG06_->setAxisTitle("jphi", 1);
629  meTestPulseG06_->setAxisTitle("jeta", 2);
630 
631  }
632 
633  if (find(MGPAGains_.begin(), MGPAGains_.end(), 12) != MGPAGains_.end() ) {
634 
636  name = "EBTPT test pulse quality G12 summary";
637  meTestPulseG12_ = dqmStore_->book2D(name, name, 360, 0., 360., 170, -85., 85.);
638  meTestPulseG12_->setAxisTitle("jphi", 1);
639  meTestPulseG12_->setAxisTitle("jeta", 2);
640 
641  }
642 
643  if (find(MGPAGainsPN_.begin(), MGPAGainsPN_.end(), 1) != MGPAGainsPN_.end() ) {
644 
646  name = "EBTPT PN test pulse quality G01 summary";
647  meTestPulsePNG01_ = dqmStore_->book2D(name, name, 90, 0., 90., 20, -10., 10.);
648  meTestPulsePNG01_->setAxisTitle("jchannel", 1);
649  meTestPulsePNG01_->setAxisTitle("jpseudo-strip", 2);
650 
651  }
652 
653  if (find(MGPAGainsPN_.begin(), MGPAGainsPN_.end(), 16) != MGPAGainsPN_.end() ) {
654 
656  name = "EBTPT PN test pulse quality G16 summary";
657  meTestPulsePNG16_ = dqmStore_->book2D(name, name, 90, 0., 90., 20, -10., 10.);
658  meTestPulsePNG16_->setAxisTitle("jchannel", 1);
659  meTestPulsePNG16_->setAxisTitle("jpseudo-strip", 2);
660 
661  }
662 
663  if (find(MGPAGains_.begin(), MGPAGains_.end(), 1) != MGPAGains_.end() ) {
664 
666  name = "EBTPT test pulse amplitude G01 summary";
667  meTestPulseAmplG01_ = dqmStore_->bookProfile(name, name, 36, 1, 37, 4096, 0., 4096.*12., "s");
668  for (int i = 0; i < 36; i++) {
669  meTestPulseAmplG01_->setBinLabel(i+1, Numbers::sEB(i+1).c_str(), 1);
670  }
671 
672  }
673 
674  if (find(MGPAGains_.begin(), MGPAGains_.end(), 6) != MGPAGains_.end() ) {
675 
677  name = "EBTPT test pulse amplitude G06 summary";
678  meTestPulseAmplG06_ = dqmStore_->bookProfile(name, name, 36, 1, 37, 4096, 0., 4096.*12., "s");
679  for (int i = 0; i < 36; i++) {
680  meTestPulseAmplG06_->setBinLabel(i+1, Numbers::sEB(i+1).c_str(), 1);
681  }
682 
683  }
684 
685  if (find(MGPAGains_.begin(), MGPAGains_.end(), 12) != MGPAGains_.end() ) {
686 
688  name = "EBTPT test pulse amplitude G12 summary";
689  meTestPulseAmplG12_ = dqmStore_->bookProfile(name, name, 36, 1, 37, 4096, 0., 4096.*12., "s");
690  for (int i = 0; i < 36; i++) {
691  meTestPulseAmplG12_->setBinLabel(i+1, Numbers::sEB(i+1).c_str(), 1);
692  }
693 
694  }
695  }
696 
697  if(timingClient){
699  name = "EBTMT timing quality summary";
700  meTiming_ = dqmStore_->book2D(name, name, 72, 0., 360., 34, -85., 85.);
701  meTiming_->setAxisTitle("jphi", 1);
702  meTiming_->setAxisTitle("jeta", 2);
703 
705  name = "EBTMT timing mean 1D summary";
706  meTimingMean1D_ = dqmStore_->book1D(name, name, 100, -25., 25.);
707  meTimingMean1D_->setAxisTitle("mean (ns)", 1);
708 
710  name = "EBTMT timing rms 1D summary";
711  meTimingRMS1D_ = dqmStore_->book1D(name, name, 100, 0.0, 10.0);
712  meTimingRMS1D_->setAxisTitle("rms (ns)", 1);
713 
715  name = "EBTMT timing mean";
716  meTimingMean_ = dqmStore_->bookProfile(name, name, 36, 1, 37, -20., 20.,"");
717  for (int i = 0; i < 36; i++) {
718  meTimingMean_->setBinLabel(i+1, Numbers::sEB(i+1).c_str(), 1);
719  }
720  meTimingMean_->setAxisTitle("mean (ns)", 2);
721 
723  name = "EBTMT timing rms";
724  meTimingRMS_ = dqmStore_->bookProfile(name, name, 36, 1, 37, 100, 0., 10.,"");
725  for (int i = 0; i < 36; i++) {
726  meTimingRMS_->setBinLabel(i+1, Numbers::sEB(i+1).c_str(), 1);
727  }
728  meTimingRMS_->setAxisTitle("rms (ns)", 2);
729  }
730 
731  if(triggerTowerClient){
733  name = "EBTTT Et trigger tower summary";
734  meTriggerTowerEt_ = dqmStore_->book2D(name, name, 72, 0., 72., 34, -17., 17.);
735  meTriggerTowerEt_->setAxisTitle("jphi'", 1);
736  meTriggerTowerEt_->setAxisTitle("jeta'", 2);
737  meTriggerTowerEt_->setAxisTitle("Et (GeV)", 3);
738 
740  name = "EBTTT emulator error quality summary";
741  meTriggerTowerEmulError_ = dqmStore_->book2D(name, name, 72, 0., 72., 34, -17., 17.);
744 
746  name = "EBTTT Trigger Primitives Timing summary";
747  meTriggerTowerTiming_ = dqmStore_->book2D(name, name, 72, 0., 72., 34, -17., 17.);
748  meTriggerTowerTiming_->setAxisTitle("jphi'", 1);
749  meTriggerTowerTiming_->setAxisTitle("jeta'", 2);
750  meTriggerTowerTiming_->setAxisTitle("TP data matching emulator", 3);
751 
753  name = "EBTTT Trigger Primitives Non Single Timing summary";
754  meTriggerTowerNonSingleTiming_ = dqmStore_->book2D(name, name, 72, 0., 72., 34, -17., 17.);
758  }
759 
762  name = "EB global summary";
763  meGlobalSummary_ = dqmStore_->book2D(name, name, 360, 0., 360., 170, -85., 85.);
764  meGlobalSummary_->setAxisTitle("jphi", 1);
765  meGlobalSummary_->setAxisTitle("jeta", 2);
766 
768  name = "EB global summary errors";
769  meSummaryErr_ = dqmStore_->book1D(name, name, 1, 0., 1.);
770  }
771 }
MonitorElement * mePedestalOnlineRMS_
MonitorElement * meLaserL4PNErr_
const std::string & getName(void) const
get name of ME
int i
Definition: DBlmapReader.cc:9
MonitorElement * meOccupancyPN_
MonitorElement * meRecHitEnergy_
MonitorElement * meTriggerTowerEt_
MonitorElement * meLaserL3_
MonitorElement * meTestPulseAmplG01_
MonitorElement * meTestPulseG12_
MonitorElement * book1D(const char *name, const char *title, int nchX, double lowX, double highX)
Book 1D histogram.
Definition: DQMStore.cc:717
MonitorElement * meLaserL4AmplOverPN_
MonitorElement * mePedestalPNG01_
MonitorElement * meLaserL1Timing_
MonitorElement * meTimingMean_
static std::string sEB(const unsigned ism)
Definition: Numbers.cc:94
MonitorElement * meStatusFlagsErr_
MonitorElement * meLaserL1_
MonitorElement * meIntegrity_
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 * mePedestalOnlineErr_
MonitorElement * mePedestalG06_
MonitorElement * meOccupancy_
MonitorElement * meTestPulseAmplG12_
MonitorElement * meLaserL3Timing_
std::vector< int > laserWavelengths_
void find(edm::Handle< EcalRecHitCollection > &hits, DetId thisDet, std::vector< EcalRecHitCollection::const_iterator > &hit, bool debug=false)
Definition: FindCaloHit.cc:7
MonitorElement * meLaserL2Err_
MonitorElement * meLaserL2_
MonitorElement * meLaserL3Ampl_
MonitorElement * meTestPulsePNG16_
MonitorElement * mePedestalG01_
MonitorElement * meIntegrityErr_
MonitorElement * meSummaryErr_
MonitorElement * meLaserL3PNErr_
MonitorElement * meLaserL2PN_
MonitorElement * meTestPulsePNG01_
MonitorElement * meLaserL4Timing_
MonitorElement * meLaserL2AmplOverPN_
void removeElement(const std::string &name)
Definition: DQMStore.cc:2572
MonitorElement * meTimingRMS_
std::string prefixME_
MonitorElement * meIntegrityPN_
MonitorElement * meLaserL3Err_
MonitorElement * meLaserL4Err_
MonitorElement * bookProfile(const char *name, const char *title, int nchX, double lowX, double highX, int nchY, double lowY, double highY, const char *option="s")
Definition: DQMStore.cc:1031
MonitorElement * meTimingRMS1D_
MonitorElement * meOccupancy1D_
MonitorElement * meTriggerTowerEmulError_
MonitorElement * meTriggerTowerTiming_
DQMStore * dqmStore_
MonitorElement * meLaserL3PN_
MonitorElement * meLaserL3AmplOverPN_
MonitorElement * meLaserL4PN_
MonitorElement * meLaserL2Timing_
MonitorElement * meTimingMean1D_
MonitorElement * meTiming_
MonitorElement * meLaserL1AmplOverPN_
MonitorElement * mePedestalOnlineRMSMap_
MonitorElement * meLaserL4Ampl_
MonitorElement * meLaserL1Err_
MonitorElement * meLaserL4_
MonitorElement * meTestPulseAmplG06_
MonitorElement * mePedestalOnline_
MonitorElement * meGlobalSummary_
std::vector< int > MGPAGainsPN_
MonitorElement * meStatusFlags_
MonitorElement * meLaserL1PN_
MonitorElement * meLaserL2PNErr_
MonitorElement * meTestPulseG06_
MonitorElement * meTestPulseG01_
MonitorElement * meLaserL1Ampl_
MonitorElement * meLaserL1PNErr_
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:845
std::vector< int > MGPAGains_
void setAxisTitle(const std::string &title, int axis=1)
set x-, y- or z-axis title (axis=1, 2, 3 respectively)
MonitorElement * meLaserL2Ampl_
std::vector< EBClient * > clients_
MonitorElement * mePedestalG12_
void setCurrentFolder(const std::string &fullpath)
Definition: DQMStore.cc:429
MonitorElement * meTriggerTowerNonSingleTiming_
MonitorElement * mePedestalOnlineMean_
MonitorElement * mePedestalPNG16_

Member Data Documentation

std::vector<EBClient*> EBSummaryClient::clients_
private

Definition at line 101 of file EBSummaryClient.h.

Referenced by analyze(), setFriends(), and setup().

bool EBSummaryClient::cloneME_
private

Definition at line 81 of file EBSummaryClient.h.

Referenced by analyze(), cleanup(), and EBSummaryClient().

bool EBSummaryClient::debug_
private

Definition at line 84 of file EBSummaryClient.h.

Referenced by analyze(), beginJob(), beginRun(), EBSummaryClient(), endJob(), and endRun().

DQMStore* EBSummaryClient::dqmStore_
private

Definition at line 103 of file EBSummaryClient.h.

Referenced by analyze(), beginJob(), cleanup(), and setup().

bool EBSummaryClient::enableCleanup_
private

Definition at line 90 of file EBSummaryClient.h.

Referenced by cleanup(), and EBSummaryClient().

TProfile2D* EBSummaryClient::hot01_[36]
private

Definition at line 175 of file EBSummaryClient.h.

Referenced by analyze().

TProfile2D* EBSummaryClient::hpot01_[36]
private

Definition at line 176 of file EBSummaryClient.h.

Referenced by analyze(), cleanup(), and EBSummaryClient().

TProfile2D* EBSummaryClient::htmt01_[36]
private

Definition at line 178 of file EBSummaryClient.h.

Referenced by analyze(), and EBSummaryClient().

TProfile2D* EBSummaryClient::httt01_[36]
private

Definition at line 177 of file EBSummaryClient.h.

Referenced by analyze(), cleanup(), and EBSummaryClient().

int EBSummaryClient::ievt_
private

Definition at line 76 of file EBSummaryClient.h.

Referenced by analyze(), beginJob(), endJob(), and getEvtPerJob().

int EBSummaryClient::jevt_
private

Definition at line 77 of file EBSummaryClient.h.

Referenced by analyze(), beginJob(), beginRun(), endRun(), and getEvtPerRun().

std::vector<int> EBSummaryClient::laserWavelengths_
private

Definition at line 97 of file EBSummaryClient.h.

Referenced by analyze(), EBSummaryClient(), and setup().

MonitorElement* EBSummaryClient::meGlobalSummary_
private

Definition at line 171 of file EBSummaryClient.h.

Referenced by analyze(), cleanup(), EBSummaryClient(), and setup().

MonitorElement* EBSummaryClient::meIntegrity_
private

Definition at line 105 of file EBSummaryClient.h.

Referenced by analyze(), cleanup(), EBSummaryClient(), and setup().

MonitorElement* EBSummaryClient::meIntegrityErr_
private

Definition at line 107 of file EBSummaryClient.h.

Referenced by analyze(), cleanup(), EBSummaryClient(), and setup().

MonitorElement* EBSummaryClient::meIntegrityPN_
private

Definition at line 106 of file EBSummaryClient.h.

Referenced by analyze(), cleanup(), EBSummaryClient(), and setup().

MonitorElement* EBSummaryClient::meLaserL1_
private

Definition at line 118 of file EBSummaryClient.h.

Referenced by analyze(), cleanup(), EBSummaryClient(), and setup().

MonitorElement* EBSummaryClient::meLaserL1Ampl_
private

Definition at line 120 of file EBSummaryClient.h.

Referenced by analyze(), cleanup(), EBSummaryClient(), and setup().

MonitorElement* EBSummaryClient::meLaserL1AmplOverPN_
private

Definition at line 122 of file EBSummaryClient.h.

Referenced by analyze(), cleanup(), EBSummaryClient(), and setup().

MonitorElement* EBSummaryClient::meLaserL1Err_
private

Definition at line 119 of file EBSummaryClient.h.

Referenced by analyze(), cleanup(), EBSummaryClient(), and setup().

MonitorElement* EBSummaryClient::meLaserL1PN_
private

Definition at line 123 of file EBSummaryClient.h.

Referenced by analyze(), cleanup(), EBSummaryClient(), and setup().

MonitorElement* EBSummaryClient::meLaserL1PNErr_
private

Definition at line 124 of file EBSummaryClient.h.

Referenced by analyze(), cleanup(), EBSummaryClient(), and setup().

MonitorElement* EBSummaryClient::meLaserL1Timing_
private

Definition at line 121 of file EBSummaryClient.h.

Referenced by analyze(), cleanup(), EBSummaryClient(), and setup().

MonitorElement* EBSummaryClient::meLaserL2_
private

Definition at line 125 of file EBSummaryClient.h.

Referenced by analyze(), cleanup(), EBSummaryClient(), and setup().

MonitorElement* EBSummaryClient::meLaserL2Ampl_
private

Definition at line 127 of file EBSummaryClient.h.

Referenced by analyze(), cleanup(), EBSummaryClient(), and setup().

MonitorElement* EBSummaryClient::meLaserL2AmplOverPN_
private

Definition at line 129 of file EBSummaryClient.h.

Referenced by analyze(), cleanup(), EBSummaryClient(), and setup().

MonitorElement* EBSummaryClient::meLaserL2Err_
private

Definition at line 126 of file EBSummaryClient.h.

Referenced by analyze(), cleanup(), EBSummaryClient(), and setup().

MonitorElement* EBSummaryClient::meLaserL2PN_
private

Definition at line 130 of file EBSummaryClient.h.

Referenced by analyze(), cleanup(), EBSummaryClient(), and setup().

MonitorElement* EBSummaryClient::meLaserL2PNErr_
private

Definition at line 131 of file EBSummaryClient.h.

Referenced by analyze(), cleanup(), EBSummaryClient(), and setup().

MonitorElement* EBSummaryClient::meLaserL2Timing_
private

Definition at line 128 of file EBSummaryClient.h.

Referenced by analyze(), cleanup(), EBSummaryClient(), and setup().

MonitorElement* EBSummaryClient::meLaserL3_
private

Definition at line 132 of file EBSummaryClient.h.

Referenced by analyze(), cleanup(), EBSummaryClient(), and setup().

MonitorElement* EBSummaryClient::meLaserL3Ampl_
private

Definition at line 134 of file EBSummaryClient.h.

Referenced by analyze(), cleanup(), EBSummaryClient(), and setup().

MonitorElement* EBSummaryClient::meLaserL3AmplOverPN_
private

Definition at line 136 of file EBSummaryClient.h.

Referenced by analyze(), cleanup(), EBSummaryClient(), and setup().

MonitorElement* EBSummaryClient::meLaserL3Err_
private

Definition at line 133 of file EBSummaryClient.h.

Referenced by analyze(), cleanup(), EBSummaryClient(), and setup().

MonitorElement* EBSummaryClient::meLaserL3PN_
private

Definition at line 137 of file EBSummaryClient.h.

Referenced by analyze(), cleanup(), EBSummaryClient(), and setup().

MonitorElement* EBSummaryClient::meLaserL3PNErr_
private

Definition at line 138 of file EBSummaryClient.h.

Referenced by analyze(), cleanup(), EBSummaryClient(), and setup().

MonitorElement* EBSummaryClient::meLaserL3Timing_
private

Definition at line 135 of file EBSummaryClient.h.

Referenced by analyze(), cleanup(), EBSummaryClient(), and setup().

MonitorElement* EBSummaryClient::meLaserL4_
private

Definition at line 139 of file EBSummaryClient.h.

Referenced by analyze(), cleanup(), EBSummaryClient(), and setup().

MonitorElement* EBSummaryClient::meLaserL4Ampl_
private

Definition at line 141 of file EBSummaryClient.h.

Referenced by analyze(), cleanup(), EBSummaryClient(), and setup().

MonitorElement* EBSummaryClient::meLaserL4AmplOverPN_
private

Definition at line 143 of file EBSummaryClient.h.

Referenced by analyze(), cleanup(), EBSummaryClient(), and setup().

MonitorElement* EBSummaryClient::meLaserL4Err_
private

Definition at line 140 of file EBSummaryClient.h.

Referenced by analyze(), cleanup(), EBSummaryClient(), and setup().

MonitorElement* EBSummaryClient::meLaserL4PN_
private

Definition at line 144 of file EBSummaryClient.h.

Referenced by analyze(), cleanup(), EBSummaryClient(), and setup().

MonitorElement* EBSummaryClient::meLaserL4PNErr_
private

Definition at line 145 of file EBSummaryClient.h.

Referenced by analyze(), cleanup(), EBSummaryClient(), and setup().

MonitorElement* EBSummaryClient::meLaserL4Timing_
private

Definition at line 142 of file EBSummaryClient.h.

Referenced by analyze(), cleanup(), EBSummaryClient(), and setup().

MonitorElement* EBSummaryClient::meOccupancy1D_
private

Definition at line 112 of file EBSummaryClient.h.

Referenced by analyze(), cleanup(), EBSummaryClient(), and setup().

MonitorElement* EBSummaryClient::meOccupancy_
private

Definition at line 110 of file EBSummaryClient.h.

Referenced by analyze(), cleanup(), EBSummaryClient(), and setup().

MonitorElement* EBSummaryClient::meOccupancyPN_
private

Definition at line 111 of file EBSummaryClient.h.

Referenced by analyze(), cleanup(), EBSummaryClient(), and setup().

MonitorElement* EBSummaryClient::mePedestalG01_
private

Definition at line 146 of file EBSummaryClient.h.

Referenced by analyze(), cleanup(), EBSummaryClient(), and setup().

MonitorElement* EBSummaryClient::mePedestalG06_
private

Definition at line 147 of file EBSummaryClient.h.

Referenced by analyze(), cleanup(), EBSummaryClient(), and setup().

MonitorElement* EBSummaryClient::mePedestalG12_
private

Definition at line 148 of file EBSummaryClient.h.

Referenced by analyze(), cleanup(), EBSummaryClient(), and setup().

MonitorElement* EBSummaryClient::mePedestalOnline_
private

Definition at line 113 of file EBSummaryClient.h.

Referenced by analyze(), cleanup(), EBSummaryClient(), and setup().

MonitorElement* EBSummaryClient::mePedestalOnlineErr_
private

Definition at line 114 of file EBSummaryClient.h.

Referenced by analyze(), cleanup(), EBSummaryClient(), and setup().

MonitorElement* EBSummaryClient::mePedestalOnlineMean_
private

Definition at line 115 of file EBSummaryClient.h.

Referenced by analyze(), cleanup(), EBSummaryClient(), and setup().

MonitorElement* EBSummaryClient::mePedestalOnlineRMS_
private

Definition at line 116 of file EBSummaryClient.h.

Referenced by analyze(), cleanup(), EBSummaryClient(), and setup().

MonitorElement* EBSummaryClient::mePedestalOnlineRMSMap_
private

Definition at line 117 of file EBSummaryClient.h.

Referenced by analyze(), cleanup(), EBSummaryClient(), and setup().

MonitorElement* EBSummaryClient::mePedestalPNG01_
private

Definition at line 149 of file EBSummaryClient.h.

Referenced by analyze(), EBSummaryClient(), and setup().

MonitorElement* EBSummaryClient::mePedestalPNG16_
private

Definition at line 150 of file EBSummaryClient.h.

Referenced by analyze(), EBSummaryClient(), and setup().

MonitorElement* EBSummaryClient::meRecHitEnergy_
private

Definition at line 160 of file EBSummaryClient.h.

Referenced by analyze(), cleanup(), EBSummaryClient(), and setup().

MonitorElement* EBSummaryClient::meStatusFlags_
private

Definition at line 108 of file EBSummaryClient.h.

Referenced by analyze(), cleanup(), EBSummaryClient(), and setup().

MonitorElement* EBSummaryClient::meStatusFlagsErr_
private

Definition at line 109 of file EBSummaryClient.h.

Referenced by analyze(), cleanup(), EBSummaryClient(), and setup().

MonitorElement* EBSummaryClient::meSummaryErr_
private

Definition at line 173 of file EBSummaryClient.h.

Referenced by analyze(), cleanup(), EBSummaryClient(), and setup().

MonitorElement* EBSummaryClient::meTestPulseAmplG01_
private

Definition at line 156 of file EBSummaryClient.h.

Referenced by analyze(), cleanup(), EBSummaryClient(), and setup().

MonitorElement* EBSummaryClient::meTestPulseAmplG06_
private

Definition at line 157 of file EBSummaryClient.h.

Referenced by analyze(), cleanup(), EBSummaryClient(), and setup().

MonitorElement* EBSummaryClient::meTestPulseAmplG12_
private

Definition at line 158 of file EBSummaryClient.h.

Referenced by analyze(), cleanup(), EBSummaryClient(), and setup().

MonitorElement* EBSummaryClient::meTestPulseG01_
private

Definition at line 151 of file EBSummaryClient.h.

Referenced by analyze(), cleanup(), EBSummaryClient(), and setup().

MonitorElement* EBSummaryClient::meTestPulseG06_
private

Definition at line 152 of file EBSummaryClient.h.

Referenced by analyze(), cleanup(), EBSummaryClient(), and setup().

MonitorElement* EBSummaryClient::meTestPulseG12_
private

Definition at line 153 of file EBSummaryClient.h.

Referenced by analyze(), cleanup(), EBSummaryClient(), and setup().

MonitorElement* EBSummaryClient::meTestPulsePNG01_
private

Definition at line 154 of file EBSummaryClient.h.

Referenced by analyze(), EBSummaryClient(), and setup().

MonitorElement* EBSummaryClient::meTestPulsePNG16_
private

Definition at line 155 of file EBSummaryClient.h.

Referenced by analyze(), EBSummaryClient(), and setup().

MonitorElement* EBSummaryClient::meTiming_
private

Definition at line 161 of file EBSummaryClient.h.

Referenced by analyze(), cleanup(), EBSummaryClient(), and setup().

MonitorElement* EBSummaryClient::meTimingMean1D_
private

Definition at line 162 of file EBSummaryClient.h.

Referenced by analyze(), cleanup(), EBSummaryClient(), and setup().

MonitorElement* EBSummaryClient::meTimingMean_
private

Definition at line 164 of file EBSummaryClient.h.

Referenced by analyze(), cleanup(), EBSummaryClient(), and setup().

MonitorElement* EBSummaryClient::meTimingRMS1D_
private

Definition at line 163 of file EBSummaryClient.h.

Referenced by analyze(), cleanup(), EBSummaryClient(), and setup().

MonitorElement* EBSummaryClient::meTimingRMS_
private

Definition at line 165 of file EBSummaryClient.h.

Referenced by analyze(), cleanup(), EBSummaryClient(), and setup().

MonitorElement* EBSummaryClient::meTriggerTowerEmulError_
private

Definition at line 167 of file EBSummaryClient.h.

Referenced by analyze(), cleanup(), EBSummaryClient(), and setup().

MonitorElement* EBSummaryClient::meTriggerTowerEt_
private

Definition at line 166 of file EBSummaryClient.h.

Referenced by analyze(), cleanup(), EBSummaryClient(), and setup().

MonitorElement* EBSummaryClient::meTriggerTowerNonSingleTiming_
private

Definition at line 169 of file EBSummaryClient.h.

Referenced by analyze(), cleanup(), EBSummaryClient(), and setup().

MonitorElement* EBSummaryClient::meTriggerTowerTiming_
private

Definition at line 168 of file EBSummaryClient.h.

Referenced by analyze(), cleanup(), EBSummaryClient(), and setup().

std::vector<int> EBSummaryClient::MGPAGains_
private

Definition at line 98 of file EBSummaryClient.h.

Referenced by EBSummaryClient(), and setup().

std::vector<int> EBSummaryClient::MGPAGainsPN_
private

Definition at line 99 of file EBSummaryClient.h.

Referenced by EBSummaryClient(), and setup().

TH1F* EBSummaryClient::norm01_
private

Definition at line 179 of file EBSummaryClient.h.

Referenced by analyze().

std::string EBSummaryClient::prefixME_
private

Definition at line 86 of file EBSummaryClient.h.

Referenced by analyze(), cleanup(), EBSummaryClient(), and setup().

bool EBSummaryClient::produceReports_
private

Definition at line 92 of file EBSummaryClient.h.

Referenced by analyze(), EBSummaryClient(), and setup().

bool EBSummaryClient::reducedReports_
private

Definition at line 94 of file EBSummaryClient.h.

Referenced by analyze(), EBSummaryClient(), and setup().

std::string EBSummaryClient::subfolder_
private

Definition at line 88 of file EBSummaryClient.h.

Referenced by analyze(), and EBSummaryClient().

std::vector<int> EBSummaryClient::superModules_
private

Definition at line 96 of file EBSummaryClient.h.

Referenced by analyze(), cleanup(), and EBSummaryClient().

TH1F * EBSummaryClient::synch01_
private

Definition at line 179 of file EBSummaryClient.h.

Referenced by analyze().

float EBSummaryClient::synchErrorThreshold_
private

Definition at line 79 of file EBSummaryClient.h.

Referenced by analyze(), and EBSummaryClient().

int EBSummaryClient::timingNHitThreshold_
private

Definition at line 181 of file EBSummaryClient.h.

Referenced by analyze(), and EBSummaryClient().

bool EBSummaryClient::verbose_
private

Definition at line 83 of file EBSummaryClient.h.

Referenced by EBSummaryClient().