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

#include <EESummaryClient.h>

Inheritance diagram for EESummaryClient:
EEClient

Public Member Functions

void analyze (void)
 Analyze. More...
 
void beginJob (void)
 BeginJob. More...
 
void beginRun (void)
 BeginRun. More...
 
void cleanup (void)
 Cleanup. More...
 
 EESummaryClient (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 (const std::vector< EEClient * > &clients)
 Set Clients. More...
 
void setup (void)
 Setup. More...
 
virtual ~EESummaryClient ()
 Destructor. More...
 
- Public Member Functions inherited from EEClient
virtual ~EEClient (void)
 

Private Attributes

std::vector< EEClient * > clients_
 
bool cloneME_
 
bool debug_
 
DQMStoredqmStore_
 
bool enableCleanup_
 
TProfile2D * hot01_ [18]
 
TProfile2D * hpot01_ [18]
 
TProfile2D * htmt01_ [18]
 
TProfile2D * httt01_ [18]
 
int ievt_
 
int jevt_
 
std::vector< int > laserWavelengths_
 
std::vector< int > ledWavelengths_
 
MonitorElementmeGlobalSummary_ [2]
 
MonitorElementmeIntegrity_ [2]
 
MonitorElementmeIntegrityErr_
 
MonitorElementmeIntegrityPN_
 
MonitorElementmeLaserL1_ [2]
 
MonitorElementmeLaserL1Ampl_
 
MonitorElementmeLaserL1AmplOverPN_
 
MonitorElementmeLaserL1Err_
 
MonitorElementmeLaserL1PN_
 
MonitorElementmeLaserL1PNErr_
 
MonitorElementmeLaserL1Timing_
 
MonitorElementmeLaserL2_ [2]
 
MonitorElementmeLaserL2Ampl_
 
MonitorElementmeLaserL2AmplOverPN_
 
MonitorElementmeLaserL2Err_
 
MonitorElementmeLaserL2PN_
 
MonitorElementmeLaserL2PNErr_
 
MonitorElementmeLaserL2Timing_
 
MonitorElementmeLaserL3_ [2]
 
MonitorElementmeLaserL3Ampl_
 
MonitorElementmeLaserL3AmplOverPN_
 
MonitorElementmeLaserL3Err_
 
MonitorElementmeLaserL3PN_
 
MonitorElementmeLaserL3PNErr_
 
MonitorElementmeLaserL3Timing_
 
MonitorElementmeLaserL4_ [2]
 
MonitorElementmeLaserL4Ampl_
 
MonitorElementmeLaserL4AmplOverPN_
 
MonitorElementmeLaserL4Err_
 
MonitorElementmeLaserL4PN_
 
MonitorElementmeLaserL4PNErr_
 
MonitorElementmeLaserL4Timing_
 
MonitorElementmeLedL1_ [2]
 
MonitorElementmeLedL1Ampl_
 
MonitorElementmeLedL1AmplOverPN_
 
MonitorElementmeLedL1Err_
 
MonitorElementmeLedL1PN_
 
MonitorElementmeLedL1PNErr_
 
MonitorElementmeLedL1Timing_
 
MonitorElementmeLedL2_ [2]
 
MonitorElementmeLedL2Ampl_
 
MonitorElementmeLedL2AmplOverPN_
 
MonitorElementmeLedL2Err_
 
MonitorElementmeLedL2PN_
 
MonitorElementmeLedL2PNErr_
 
MonitorElementmeLedL2Timing_
 
MonitorElementmeOccupancy1D_
 
MonitorElementmeOccupancy_ [2]
 
MonitorElementmeOccupancyPN_
 
MonitorElementmePedestalG01_ [2]
 
MonitorElementmePedestalG06_ [2]
 
MonitorElementmePedestalG12_ [2]
 
MonitorElementmePedestalOnline_ [2]
 
MonitorElementmePedestalOnlineErr_
 
MonitorElementmePedestalOnlineMean_
 
MonitorElementmePedestalOnlineRMS_
 
MonitorElementmePedestalOnlineRMSMap_ [2]
 
MonitorElementmePedestalPNG01_
 
MonitorElementmePedestalPNG16_
 
MonitorElementmeRecHitEnergy_ [2]
 
MonitorElementmeStatusFlags_ [2]
 
MonitorElementmeStatusFlagsErr_
 
MonitorElementmeSummaryErr_
 
MonitorElementmeTestPulseAmplG01_
 
MonitorElementmeTestPulseAmplG06_
 
MonitorElementmeTestPulseAmplG12_
 
MonitorElementmeTestPulseG01_ [2]
 
MonitorElementmeTestPulseG06_ [2]
 
MonitorElementmeTestPulseG12_ [2]
 
MonitorElementmeTestPulsePNG01_
 
MonitorElementmeTestPulsePNG16_
 
MonitorElementmeTiming_ [2]
 
MonitorElementmeTimingMean1D_ [2]
 
MonitorElementmeTimingMean_
 
MonitorElementmeTimingRMS1D_ [2]
 
MonitorElementmeTimingRMS_
 
MonitorElementmeTriggerTowerEmulError_ [2]
 
MonitorElementmeTriggerTowerEt_ [2]
 
MonitorElementmeTriggerTowerEtSpectrum_ [2]
 
MonitorElementmeTriggerTowerNonSingleTiming_ [2]
 
MonitorElementmeTriggerTowerTiming_ [2]
 
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_
 
float timingNHitThreshold_
 
bool verbose_
 

Detailed Description

Definition at line 31 of file EESummaryClient.h.

Constructor & Destructor Documentation

EESummaryClient::EESummaryClient ( const edm::ParameterSet ps)

Constructor.

Definition at line 51 of file EESummaryClient.cc.

References cloneME_, debug_, enableCleanup_, edm::ParameterSet::getUntrackedParameter(), hpot01_, httt01_, i, ecalpyutils::ism(), laserWavelengths_, ledWavelengths_, 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_, meLedL1_, meLedL1Ampl_, meLedL1AmplOverPN_, meLedL1Err_, meLedL1PN_, meLedL1PNErr_, meLedL1Timing_, meLedL2_, meLedL2Ampl_, meLedL2AmplOverPN_, meLedL2Err_, meLedL2PN_, meLedL2PNErr_, meLedL2Timing_, 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_, AlCaHLTBitMon_QueryRunRegistry::string, subfolder_, superModules_, synchErrorThreshold_, timingNHitThreshold_, and verbose_.

51  {
52 
53  // cloneME switch
54  cloneME_ = ps.getUntrackedParameter<bool>("cloneME", true);
55 
56  // verbose switch
57  verbose_ = ps.getUntrackedParameter<bool>("verbose", true);
58 
59  // debug switch
60  debug_ = ps.getUntrackedParameter<bool>("debug", false);
61 
62  // prefixME path
63  prefixME_ = ps.getUntrackedParameter<std::string>("prefixME", "");
64 
65  subfolder_ = ps.getUntrackedParameter<std::string>("subfolder", "");
66 
67  // enableCleanup_ switch
68  enableCleanup_ = ps.getUntrackedParameter<bool>("enableCleanup", false);
69 
70  produceReports_ = ps.getUntrackedParameter<bool>("produceReports", true);
71 
72  reducedReports_ = ps.getUntrackedParameter<bool>("reducedReports", false);
73 
74  // vector of selected Super Modules (Defaults to all 18).
75  superModules_.reserve(18);
76  for ( unsigned int i = 1; i <= 18; i++ ) superModules_.push_back(i);
77  superModules_ = ps.getUntrackedParameter<std::vector<int> >("superModules", superModules_);
78 
79  laserWavelengths_.reserve(4);
80  for ( unsigned int i = 1; i <= 4; i++ ) laserWavelengths_.push_back(i);
81  laserWavelengths_ = ps.getUntrackedParameter<std::vector<int> >("laserWavelengths", laserWavelengths_);
82 
83  ledWavelengths_.reserve(2);
84  for ( unsigned int i = 1; i <= 2; i++ ) ledWavelengths_.push_back(i);
85  ledWavelengths_ = ps.getUntrackedParameter<std::vector<int> >("ledWavelengths", ledWavelengths_);
86 
87  MGPAGains_.reserve(3);
88  for ( unsigned int i = 1; i <= 3; i++ ) MGPAGains_.push_back(i);
89  MGPAGains_ = ps.getUntrackedParameter<std::vector<int> >("MGPAGains", MGPAGains_);
90 
91  MGPAGainsPN_.reserve(2);
92  for ( unsigned int i = 1; i <= 3; i++ ) MGPAGainsPN_.push_back(i);
93  MGPAGainsPN_ = ps.getUntrackedParameter<std::vector<int> >("MGPAGainsPN", MGPAGainsPN_);
94 
95  timingNHitThreshold_ = ps.getUntrackedParameter<int>("timingNHitThreshold", 5);
96  synchErrorThreshold_ = ps.getUntrackedParameter<double>("synchErrorThreshold", 0.01);
97 
98  // summary maps
99  meIntegrity_[0] = 0;
100  meIntegrity_[1] = 0;
101  meIntegrityPN_ = 0;
102  meOccupancy_[0] = 0;
103  meOccupancy_[1] = 0;
104  meOccupancyPN_ = 0;
105  meStatusFlags_[0] = 0;
106  meStatusFlags_[1] = 0;
107  mePedestalOnline_[0] = 0;
108  mePedestalOnline_[1] = 0;
113 
114  meLaserL1_[0] = 0;
115  meLaserL1_[1] = 0;
116  meLaserL1PN_ = 0;
117  meLaserL1Ampl_ = 0;
118  meLaserL1Timing_ = 0;
120 
121  meLaserL2_[0] = 0;
122  meLaserL2_[1] = 0;
123  meLaserL2PN_ = 0;
124  meLaserL2Ampl_ = 0;
125  meLaserL2Timing_ = 0;
127 
128  meLaserL3_[0] = 0;
129  meLaserL3_[1] = 0;
130  meLaserL3PN_ = 0;
131  meLaserL3Ampl_ = 0;
132  meLaserL3Timing_ = 0;
134 
135  meLaserL4_[0] = 0;
136  meLaserL4_[1] = 0;
137  meLaserL4PN_ = 0;
138  meLaserL4Ampl_ = 0;
139  meLaserL4Timing_ = 0;
141 
142  meLedL1_[0] = 0;
143  meLedL1_[1] = 0;
144  meLedL1PN_ = 0;
145  meLedL1Ampl_ = 0;
146  meLedL1Timing_ = 0;
147  meLedL1AmplOverPN_ = 0;
148 
149  meLedL2_[0] = 0;
150  meLedL2_[1] = 0;
151  meLedL2PN_ = 0;
152  meLedL2Ampl_ = 0;
153  meLedL2Timing_ = 0;
154  meLedL2AmplOverPN_ = 0;
155 
156  mePedestalG01_[0] = 0;
157  mePedestalG01_[1] = 0;
158  mePedestalG06_[0] = 0;
159  mePedestalG06_[1] = 0;
160  mePedestalG12_[0] = 0;
161  mePedestalG12_[1] = 0;
162  mePedestalPNG01_ = 0;
163  mePedestalPNG16_ = 0;
164  meTestPulseG01_[0] = 0;
165  meTestPulseG01_[1] = 0;
166  meTestPulseG06_[0] = 0;
167  meTestPulseG06_[1] = 0;
168  meTestPulseG12_[0] = 0;
169  meTestPulseG12_[1] = 0;
170  meTestPulsePNG01_ = 0;
171  meTestPulsePNG16_ = 0;
175  meGlobalSummary_[0] = 0;
176  meGlobalSummary_[1] = 0;
177 
178  meRecHitEnergy_[0] = 0;
179  meRecHitEnergy_[1] = 0;
180  meTiming_[0] = 0;
181  meTiming_[1] = 0;
182  meTimingMean1D_[0] = 0;
183  meTimingMean1D_[1] = 0;
184  meTimingRMS1D_[0] = 0;
185  meTimingRMS1D_[1] = 0;
186  meTimingMean_ = 0;
187  meTimingRMS_ = 0;
188 
189  meTriggerTowerEt_[0] = 0;
190  meTriggerTowerEt_[1] = 0;
193  meTriggerTowerTiming_[0] = 0;
194  meTriggerTowerTiming_[1] = 0;
197 
198  // summary errors
199  meIntegrityErr_ = 0;
200  meOccupancy1D_ = 0;
201  meStatusFlagsErr_ = 0;
203  meLaserL1Err_ = 0;
204  meLaserL1PNErr_ = 0;
205  meLaserL2Err_ = 0;
206  meLaserL2PNErr_ = 0;
207  meLaserL3Err_ = 0;
208  meLaserL3PNErr_ = 0;
209  meLaserL4Err_ = 0;
210  meLaserL4PNErr_ = 0;
211  meLedL1Err_ = 0;
212  meLedL1PNErr_ = 0;
213  meLedL2Err_ = 0;
214  meLedL2PNErr_ = 0;
215 
216  meSummaryErr_ = 0;
217 
218  for ( unsigned int i=0; i<superModules_.size(); i++ ) {
219 
220  int ism = superModules_[i];
221 
222  hpot01_[ism-1] = 0;
223  httt01_[ism-1] = 0;
224 
225  }
226 
227 }
T getUntrackedParameter(std::string const &, T const &) const
int i
Definition: DBlmapReader.cc:9
float synchErrorThreshold_
TProfile2D * httt01_[18]
MonitorElement * meLaserL4Ampl_
MonitorElement * meTestPulseG12_[2]
MonitorElement * meLaserL4Timing_
MonitorElement * meLaserL3Err_
MonitorElement * meTimingRMS_
std::vector< int > MGPAGainsPN_
std::vector< int > superModules_
MonitorElement * meTestPulsePNG01_
MonitorElement * mePedestalOnlineErr_
TProfile2D * hpot01_[18]
MonitorElement * meTiming_[2]
MonitorElement * meLaserL1Ampl_
MonitorElement * meLedL1AmplOverPN_
MonitorElement * mePedestalOnlineRMSMap_[2]
MonitorElement * meLedL1_[2]
MonitorElement * mePedestalPNG16_
MonitorElement * meLaserL3AmplOverPN_
MonitorElement * meLaserL3Timing_
MonitorElement * meTestPulseAmplG01_
MonitorElement * meTestPulseAmplG06_
MonitorElement * mePedestalG01_[2]
MonitorElement * meLaserL4_[2]
MonitorElement * meTestPulseG01_[2]
MonitorElement * meLedL1Err_
MonitorElement * meLaserL4AmplOverPN_
MonitorElement * meLaserL3PNErr_
MonitorElement * meOccupancy_[2]
MonitorElement * meLaserL2AmplOverPN_
MonitorElement * mePedestalG12_[2]
MonitorElement * meTriggerTowerEmulError_[2]
MonitorElement * meSummaryErr_
MonitorElement * meLaserL2_[2]
MonitorElement * meLedL2PN_
MonitorElement * meIntegrityPN_
MonitorElement * meIntegrity_[2]
MonitorElement * meLaserL4PN_
MonitorElement * meRecHitEnergy_[2]
MonitorElement * meLaserL3_[2]
MonitorElement * meTimingRMS1D_[2]
MonitorElement * mePedestalOnline_[2]
MonitorElement * meStatusFlags_[2]
MonitorElement * meLaserL4Err_
MonitorElement * meLedL2PNErr_
MonitorElement * meTriggerTowerTiming_[2]
MonitorElement * meLaserL1PNErr_
MonitorElement * meLaserL1Timing_
MonitorElement * meLaserL3PN_
MonitorElement * meLedL1Ampl_
MonitorElement * meLaserL1_[2]
MonitorElement * meTimingMean_
MonitorElement * meTriggerTowerNonSingleTiming_[2]
std::string subfolder_
MonitorElement * meLedL2Timing_
std::string prefixME_
MonitorElement * meLedL1PN_
MonitorElement * meLaserL4PNErr_
MonitorElement * meTimingMean1D_[2]
std::vector< int > laserWavelengths_
MonitorElement * meTestPulsePNG16_
MonitorElement * meLedL1Timing_
MonitorElement * mePedestalPNG01_
MonitorElement * meLedL1PNErr_
MonitorElement * meStatusFlagsErr_
MonitorElement * meTriggerTowerEt_[2]
std::vector< int > MGPAGains_
MonitorElement * mePedestalG06_[2]
MonitorElement * meOccupancyPN_
MonitorElement * meLedL2AmplOverPN_
MonitorElement * mePedestalOnlineRMS_
MonitorElement * meLaserL2Timing_
MonitorElement * meLaserL2Err_
MonitorElement * meLaserL2Ampl_
MonitorElement * meLaserL1AmplOverPN_
MonitorElement * meLaserL2PN_
std::vector< int > ledWavelengths_
MonitorElement * meLedL2Err_
MonitorElement * meTestPulseG06_[2]
MonitorElement * meLaserL3Ampl_
MonitorElement * meLaserL1PN_
MonitorElement * meLedL2Ampl_
MonitorElement * meGlobalSummary_[2]
MonitorElement * mePedestalOnlineMean_
int ism(int ieta, int iphi)
Definition: EcalPyUtils.cc:56
MonitorElement * meOccupancy1D_
MonitorElement * meLedL2_[2]
MonitorElement * meTestPulseAmplG12_
MonitorElement * meLaserL2PNErr_
MonitorElement * meLaserL1Err_
MonitorElement * meIntegrityErr_
EESummaryClient::~EESummaryClient ( )
virtual

Destructor.

Definition at line 229 of file EESummaryClient.cc.

229  {
230 
231 }

Member Function Documentation

void EESummaryClient::analyze ( void  )
virtual

Analyze.

Implements EEClient.

Definition at line 1466 of file EESummaryClient.cc.

References abs, clients_, cloneME_, gather_cfg::cout, debug_, dqmStore_, EcalEndcap, MonitorElement::Fill(), spr::find(), DQMStore::get(), MonitorElement::getBinContent(), MonitorElement::getBinError(), UtilsClient::getBinStatistics(), MonitorElement::getEntries(), UtilsClient::getHisto(), EEIntegrityClient::h_, EEIntegrityClient::hmem_, hot01_, hpot01_, htmt01_, httt01_, i, Numbers::icEE(), ievt_, ecalpyutils::ism(), Numbers::ix0EE(), Numbers::iy0EE(), j, jevt_, EETriggerTowerClient::l01_, EETriggerTowerClient::l02_, laserWavelengths_, ledWavelengths_, UtilsClient::maskBinContent(), Masks::maskChannel(), EETriggerTowerClient::me_o01_, EETriggerTowerClient::me_o02_, EETestPulseClient::mea01_, EELedClient::mea01_, EELaserClient::mea01_, EETestPulseClient::mea02_, EELedClient::mea02_, EELaserClient::mea02_, EETestPulseClient::mea03_, EELaserClient::mea03_, EELaserClient::mea04_, EELedClient::meaopn01_, EELaserClient::meaopn01_, EELedClient::meaopn02_, EELaserClient::meaopn02_, EELaserClient::meaopn03_, EELaserClient::meaopn04_, EETestPulseClient::meg01_, EELedClient::meg01_, EEIntegrityClient::meg01_, EEPedestalClient::meg01_, EELaserClient::meg01_, EETestPulseClient::meg02_, EELedClient::meg02_, EEPedestalClient::meg02_, EEIntegrityClient::meg02_, EELaserClient::meg02_, EEPedestalOnlineClient::meg03_, EETestPulseClient::meg03_, EEPedestalClient::meg03_, EELaserClient::meg03_, EETestPulseClient::meg04_, EEPedestalClient::meg04_, EELaserClient::meg04_, EETestPulseClient::meg05_, EEPedestalClient::meg05_, EELedClient::meg09_, EELaserClient::meg09_, EELedClient::meg10_, EELaserClient::meg10_, EELaserClient::meg11_, EELaserClient::meg12_, meGlobalSummary_, EEStatusFlagsClient::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_, meLedL1_, meLedL1Ampl_, meLedL1AmplOverPN_, meLedL1Err_, meLedL1PN_, meLedL1PNErr_, meLedL1Timing_, meLedL2_, meLedL2Ampl_, meLedL2AmplOverPN_, meLedL2Err_, meLedL2PN_, meLedL2PNErr_, meLedL2Timing_, meOccupancy1D_, meOccupancy_, meOccupancyPN_, mePedestalG01_, mePedestalG06_, mePedestalG12_, mePedestalOnline_, mePedestalOnlineErr_, mePedestalOnlineMean_, mePedestalOnlineRMS_, mePedestalOnlineRMSMap_, mePedestalPNG01_, mePedestalPNG16_, meRecHitEnergy_, meStatusFlags_, meStatusFlagsErr_, meSummaryErr_, EELedClient::met01_, EELaserClient::met01_, EELedClient::met02_, EELaserClient::met02_, EELaserClient::met03_, EELaserClient::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::sEE(), MonitorElement::setBinContent(), MonitorElement::setEntries(), AlCaHLTBitMon_QueryRunRegistry::string, subfolder_, superModules_, synch01_, synchErrorThreshold_, timingNHitThreshold_, Numbers::validEE(), and Numbers::validEESc().

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

1466  {
1467 
1468  ievt_++;
1469  jevt_++;
1470  if ( ievt_ % 10 == 0 ) {
1471  if ( debug_ ) std::cout << "EESummaryClient: ievt/jevt = " << ievt_ << "/" << jevt_ << std::endl;
1472  }
1473 
1474  uint32_t chWarnBit = 1 << EcalDQMStatusHelper::PHYSICS_BAD_CHANNEL_WARNING;
1475 
1476  for ( int ix = 1; ix <= 100; ix++ ) {
1477  for ( int iy = 1; iy <= 100; iy++ ) {
1478 
1479  if ( meIntegrity_[0] ) meIntegrity_[0]->setBinContent( ix, iy, 6. );
1480  if ( meIntegrity_[1] ) meIntegrity_[1]->setBinContent( ix, iy, 6. );
1481  if ( meOccupancy_[0] ) meOccupancy_[0]->setBinContent( ix, iy, 0. );
1482  if ( meOccupancy_[1] ) meOccupancy_[1]->setBinContent( ix, iy, 0. );
1483  if ( meStatusFlags_[0] ) meStatusFlags_[0]->setBinContent( ix, iy, 6. );
1484  if ( meStatusFlags_[1] ) meStatusFlags_[1]->setBinContent( ix, iy, 6. );
1485  if ( mePedestalOnline_[0] ) mePedestalOnline_[0]->setBinContent( ix, iy, 6. );
1486  if ( mePedestalOnline_[1] ) mePedestalOnline_[1]->setBinContent( ix, iy, 6. );
1487  if ( mePedestalOnlineRMSMap_[0] ) mePedestalOnlineRMSMap_[0]->setBinContent( ix, iy, -1. );
1488  if ( mePedestalOnlineRMSMap_[1] ) mePedestalOnlineRMSMap_[1]->setBinContent( ix, iy, -1. );
1489 
1490  if ( meLaserL1_[0] ) meLaserL1_[0]->setBinContent( ix, iy, 6. );
1491  if ( meLaserL1_[1] ) meLaserL1_[1]->setBinContent( ix, iy, 6. );
1492  if ( meLaserL2_[0] ) meLaserL2_[0]->setBinContent( ix, iy, 6. );
1493  if ( meLaserL2_[1] ) meLaserL2_[1]->setBinContent( ix, iy, 6. );
1494  if ( meLaserL3_[0] ) meLaserL3_[0]->setBinContent( ix, iy, 6. );
1495  if ( meLaserL3_[1] ) meLaserL3_[1]->setBinContent( ix, iy, 6. );
1496  if ( meLaserL4_[0] ) meLaserL4_[0]->setBinContent( ix, iy, 6. );
1497  if ( meLaserL4_[1] ) meLaserL4_[1]->setBinContent( ix, iy, 6. );
1498  if ( meLedL1_[0] ) meLedL1_[0]->setBinContent( ix, iy, 6. );
1499  if ( meLedL1_[1] ) meLedL1_[1]->setBinContent( ix, iy, 6. );
1500  if ( meLedL2_[0] ) meLedL2_[0]->setBinContent( ix, iy, 6. );
1501  if ( meLedL2_[1] ) meLedL2_[1]->setBinContent( ix, iy, 6. );
1502  if ( mePedestalG01_[0] ) mePedestalG01_[0]->setBinContent( ix, iy, 6. );
1503  if ( mePedestalG01_[1] ) mePedestalG01_[1]->setBinContent( ix, iy, 6. );
1504  if ( mePedestalG06_[0] ) mePedestalG06_[0]->setBinContent( ix, iy, 6. );
1505  if ( mePedestalG06_[1] ) mePedestalG06_[1]->setBinContent( ix, iy, 6. );
1506  if ( mePedestalG12_[0] ) mePedestalG12_[0]->setBinContent( ix, iy, 6. );
1507  if ( mePedestalG12_[1] ) mePedestalG12_[1]->setBinContent( ix, iy, 6. );
1508  if ( meTestPulseG01_[0] ) meTestPulseG01_[0]->setBinContent( ix, iy, 6. );
1509  if ( meTestPulseG01_[1] ) meTestPulseG01_[1]->setBinContent( ix, iy, 6. );
1510  if ( meTestPulseG06_[0] ) meTestPulseG06_[0]->setBinContent( ix, iy, 6. );
1511  if ( meTestPulseG06_[1] ) meTestPulseG06_[1]->setBinContent( ix, iy, 6. );
1512  if ( meTestPulseG12_[0] ) meTestPulseG12_[0]->setBinContent( ix, iy, 6. );
1513  if ( meTestPulseG12_[1] ) meTestPulseG12_[1]->setBinContent( ix, iy, 6. );
1514  if ( meRecHitEnergy_[0] ) meRecHitEnergy_[0]->setBinContent( ix, iy, 0. );
1515  if ( meRecHitEnergy_[1] ) meRecHitEnergy_[1]->setBinContent( ix, iy, 0. );
1516 
1517  if( meGlobalSummary_[0] ) meGlobalSummary_[0]->setBinContent( ix, iy, 6. );
1518  if( meGlobalSummary_[1] ) meGlobalSummary_[1]->setBinContent( ix, iy, 6. );
1519 
1520  }
1521  }
1522 
1523  // default is 6 because we want white for the non existing MEM
1524  for ( int ix = 1; ix <= 45; ix++ ) {
1525  for ( int iy = 1; iy <= 20; iy++ ) {
1526 
1527  if ( meIntegrityPN_ ) meIntegrityPN_->setBinContent( ix, iy, 6. );
1528  if ( meOccupancyPN_ ) meOccupancyPN_->setBinContent( ix, iy, 0. );
1529  if ( meLaserL1PN_ ) meLaserL1PN_->setBinContent( ix, iy, 6. );
1530  if ( meLaserL2PN_ ) meLaserL2PN_->setBinContent( ix, iy, 6. );
1531  if ( meLaserL3PN_ ) meLaserL3PN_->setBinContent( ix, iy, 6. );
1532  if ( meLaserL4PN_ ) meLaserL4PN_->setBinContent( ix, iy, 6. );
1533  if ( meLedL1PN_ ) meLedL1PN_->setBinContent( ix, iy, 6. );
1534  if ( meLedL2PN_ ) meLedL2PN_->setBinContent( ix, iy, 6. );
1535  if ( mePedestalPNG01_ ) mePedestalPNG01_->setBinContent( ix, iy, 6. );
1536  if ( mePedestalPNG16_ ) mePedestalPNG16_->setBinContent( ix, iy, 6. );
1537  if ( meTestPulsePNG01_ ) meTestPulsePNG01_->setBinContent( ix, iy, 6. );
1538  if ( meTestPulsePNG16_ ) meTestPulsePNG16_->setBinContent( ix, iy, 6. );
1539 
1540  }
1541  }
1542 
1543  for ( int ix = 1; ix <= 100; ix++ ) {
1544  for ( int iy = 1; iy <= 100; iy++ ) {
1545  if ( meTriggerTowerEt_[0] ) meTriggerTowerEt_[0]->setBinContent( ix, iy, 0. );
1546  if ( meTriggerTowerEt_[1] ) meTriggerTowerEt_[1]->setBinContent( ix, iy, 0. );
1549  if ( meTriggerTowerTiming_[0] ) meTriggerTowerTiming_[0]->setBinContent( ix, iy, 0. );
1550  if ( meTriggerTowerTiming_[1] ) meTriggerTowerTiming_[1]->setBinContent( ix, iy, 0. );
1553  }
1554  }
1555 
1556  for ( int ix = 1; ix <= 20; ix++ ) {
1557  for ( int iy = 1; iy <= 20; iy++ ) {
1558  if ( meTiming_[0] ) meTiming_[0]->setBinContent( ix, iy, 6. );
1559  if ( meTiming_[1] ) meTiming_[1]->setBinContent( ix, iy, 6. );
1560  }
1561  }
1562 
1563  if ( meIntegrity_[0] ) meIntegrity_[0]->setEntries( 0 );
1564  if ( meIntegrity_[1] ) meIntegrity_[1]->setEntries( 0 );
1567  if ( meOccupancy_[0] ) meOccupancy_[0]->setEntries( 0 );
1568  if ( meOccupancy_[1] ) meOccupancy_[1]->setEntries( 0 );
1571  if ( meStatusFlags_[0] ) meStatusFlags_[0]->setEntries( 0 );
1572  if ( meStatusFlags_[1] ) meStatusFlags_[1]->setEntries( 0 );
1574  if ( mePedestalOnline_[0] ) mePedestalOnline_[0]->setEntries( 0 );
1575  if ( mePedestalOnline_[1] ) mePedestalOnline_[1]->setEntries( 0 );
1579  if ( meLaserL1_[0] ) meLaserL1_[0]->setEntries( 0 );
1580  if ( meLaserL1_[1] ) meLaserL1_[1]->setEntries( 0 );
1581  if ( meLaserL1Err_ ) meLaserL1Err_->Reset();
1582  if ( meLaserL1PN_ ) meLaserL1PN_->setEntries( 0 );
1587  if ( meLaserL2_[0] ) meLaserL2_[0]->setEntries( 0 );
1588  if ( meLaserL2_[1] ) meLaserL2_[1]->setEntries( 0 );
1589  if ( meLaserL2Err_ ) meLaserL2Err_->Reset();
1590  if ( meLaserL2PN_ ) meLaserL2PN_->setEntries( 0 );
1595  if ( meLaserL3_[0] ) meLaserL3_[0]->setEntries( 0 );
1596  if ( meLaserL3_[1] ) meLaserL3_[1]->setEntries( 0 );
1597  if ( meLaserL3Err_ ) meLaserL3Err_->Reset();
1598  if ( meLaserL3PN_ ) meLaserL3PN_->setEntries( 0 );
1603  if ( meLaserL4_[0] ) meLaserL4_[0]->setEntries( 0 );
1604  if ( meLaserL4_[1] ) meLaserL4_[1]->setEntries( 0 );
1605  if ( meLaserL4Err_ ) meLaserL4Err_->Reset();
1606  if ( meLaserL4PN_ ) meLaserL4PN_->setEntries( 0 );
1611  if ( meLedL1_[0] ) meLedL1_[0]->setEntries( 0 );
1612  if ( meLedL1_[1] ) meLedL1_[1]->setEntries( 0 );
1613  if ( meLedL1Err_ ) meLedL1Err_->Reset();
1614  if ( meLedL1PN_ ) meLedL1PN_->setEntries( 0 );
1615  if ( meLedL1PNErr_ ) meLedL1PNErr_->Reset();
1616  if ( meLedL1Ampl_ ) meLedL1Ampl_->Reset();
1619  if ( meLedL2_[0] ) meLedL2_[0]->setEntries( 0 );
1620  if ( meLedL2_[1] ) meLedL2_[1]->setEntries( 0 );
1621  if ( meLedL2Err_ ) meLedL2Err_->Reset();
1622  if ( meLedL2PN_ ) meLedL2PN_->setEntries( 0 );
1623  if ( meLedL2PNErr_ ) meLedL2PNErr_->Reset();
1624  if ( meLedL2Ampl_ ) meLedL2Ampl_->Reset();
1627  if ( mePedestalG01_[0] ) mePedestalG01_[0]->setEntries( 0 );
1628  if ( mePedestalG01_[1] ) mePedestalG01_[1]->setEntries( 0 );
1629  if ( mePedestalG06_[0] ) mePedestalG06_[0]->setEntries( 0 );
1630  if ( mePedestalG06_[1] ) mePedestalG06_[1]->setEntries( 0 );
1631  if ( mePedestalG12_[0] ) mePedestalG12_[0]->setEntries( 0 );
1632  if ( mePedestalG12_[1] ) mePedestalG12_[1]->setEntries( 0 );
1635  if ( meTestPulseG01_[0] ) meTestPulseG01_[0]->setEntries( 0 );
1636  if ( meTestPulseG01_[1] ) meTestPulseG01_[1]->setEntries( 0 );
1637  if ( meTestPulseG06_[0] ) meTestPulseG06_[0]->setEntries( 0 );
1638  if ( meTestPulseG06_[1] ) meTestPulseG06_[1]->setEntries( 0 );
1639  if ( meTestPulseG12_[0] ) meTestPulseG12_[0]->setEntries( 0 );
1640  if ( meTestPulseG12_[1] ) meTestPulseG12_[1]->setEntries( 0 );
1646 
1647  if ( meRecHitEnergy_[0] ) meRecHitEnergy_[0]->setEntries( 0 );
1648  if ( meRecHitEnergy_[1] ) meRecHitEnergy_[1]->setEntries( 0 );
1649  if ( meTiming_[0] ) meTiming_[0]->setEntries( 0 );
1650  if ( meTiming_[1] ) meTiming_[1]->setEntries( 0 );
1651  if ( meTimingMean1D_[0] ) meTimingMean1D_[0]->Reset();
1652  if ( meTimingMean1D_[1] ) meTimingMean1D_[1]->Reset();
1653  if ( meTimingRMS1D_[0] ) meTimingRMS1D_[0]->Reset();
1654  if ( meTimingRMS1D_[1] ) meTimingRMS1D_[1]->Reset();
1655  if ( meTimingMean_ ) meTimingMean_->Reset();
1656  if ( meTimingRMS_ ) meTimingRMS_->Reset();
1657  if ( meTriggerTowerEt_[0] ) meTriggerTowerEt_[0]->setEntries( 0 );
1658  if ( meTriggerTowerEt_[1] ) meTriggerTowerEt_[1]->setEntries( 0 );
1665 
1666  if( meGlobalSummary_[0] ) meGlobalSummary_[0]->setEntries( 0 );
1668 
1670 
1671  MonitorElement *me(0);
1672  me = dqmStore_->get(prefixME_ + "/EETimingTask/EETMT timing map EE +");
1673  TProfile2D *htmtp(0);
1674  htmtp = UtilsClient::getHisto(me, false, htmtp);
1675 
1676  me = dqmStore_->get(prefixME_ + "/EETimingTask/EETMT timing map EE -");
1677  TProfile2D *htmtm(0);
1678  htmtm = UtilsClient::getHisto(me, false, htmtm);
1679 
1680  std::string subdir(subfolder_ == "" ? "" : subfolder_ + "/");
1681 
1682  TH1F* oosTrend(0);
1683 
1684  for ( unsigned int i=0; i<clients_.size(); i++ ) {
1685 
1686  EEIntegrityClient* eeic = dynamic_cast<EEIntegrityClient*>(clients_[i]);
1687  EEStatusFlagsClient* eesfc = dynamic_cast<EEStatusFlagsClient*>(clients_[i]);
1688  if(!produceReports_) eesfc = 0;
1689  EEPedestalOnlineClient* eepoc = dynamic_cast<EEPedestalOnlineClient*>(clients_[i]);
1690  if(!produceReports_) eepoc = 0;
1691 
1692  EELaserClient* eelc = dynamic_cast<EELaserClient*>(clients_[i]);
1693  EELedClient* eeldc = dynamic_cast<EELedClient*>(clients_[i]);
1694  EEPedestalClient* eepc = dynamic_cast<EEPedestalClient*>(clients_[i]);
1695  EETestPulseClient* eetpc = dynamic_cast<EETestPulseClient*>(clients_[i]);
1696 
1697  EETimingClient* eetmc = dynamic_cast<EETimingClient*>(clients_[i]);
1698  EETriggerTowerClient* eetttc = dynamic_cast<EETriggerTowerClient*>(clients_[i]);
1699 
1700  MonitorElement *me_01, *me_02, *me_03;
1701  MonitorElement *me_04, *me_05;
1702  // MonitorElement *me_f[6], *me_fg[2];
1703  TH2F* h2;
1704  TH2F* h3;
1705 
1706  me = dqmStore_->get( prefixME_ + "/EcalInfo/EEMM DCC" );
1708 
1709  me = dqmStore_->get( prefixME_ + "/EERawDataTask/" + subdir + "EERDT L1A FE errors" );
1711 
1712  me = dqmStore_->get(prefixME_ + "/EERawDataTask/" + subdir + "EERDT accumulated FE synchronization errors");
1713  oosTrend = UtilsClient::getHisto(me, cloneME_, oosTrend);
1714 
1715  for ( unsigned int i=0; i<superModules_.size(); i++ ) {
1716 
1717  int ism = superModules_[i];
1718 
1719  me = dqmStore_->get( prefixME_ + "/EEOccupancyTask/" + subdir + "EEOT rec hit energy " + Numbers::sEE(ism) );
1720  hot01_[ism-1] = UtilsClient::getHisto( me, cloneME_, hot01_[ism-1] );
1721 
1722  me = dqmStore_->get( prefixME_ + "/EEPedestalOnlineTask/" + subdir + "Gain12/EEPOT pedestal " + Numbers::sEE(ism) + " G12" );
1723  hpot01_[ism-1] = UtilsClient::getHisto( me, cloneME_, hpot01_[ism-1] );
1724 
1725  me = dqmStore_->get( prefixME_ + "/EETriggerTowerTask/EETTT Et map Real Digis " + Numbers::sEE(ism) );
1726  httt01_[ism-1] = UtilsClient::getHisto( me, cloneME_, httt01_[ism-1] );
1727 
1728  me = dqmStore_->get( prefixME_ + "/EETimingTask/EETMT timing " + Numbers::sEE(ism) );
1729  htmt01_[ism-1] = UtilsClient::getHisto( me, cloneME_, htmt01_[ism-1] );
1730 
1731  for ( int ix = 1; ix <= 50; ix++ ) {
1732  for ( int iy = 1; iy <= 50; iy++ ) {
1733 
1734  int jx = ix + Numbers::ix0EE(ism);
1735  int jy = iy + Numbers::iy0EE(ism);
1736 
1737  if ( ism >= 1 && ism <= 9 ) {
1738  if ( ! Numbers::validEE(ism, 101 - jx, jy) ) continue;
1739  } else {
1740  if ( ! Numbers::validEE(ism, jx, jy) ) continue;
1741  }
1742 
1743  if ( eeic ) {
1744 
1745  me = eeic->meg01_[ism-1];
1746 
1747  if ( me ) {
1748 
1749  float xval = me->getBinContent( ix, iy );
1750 
1751  if ( ism >= 1 && ism <= 9 ) {
1752  if(meIntegrity_[0]) meIntegrity_[0]->setBinContent( 101 - jx, jy, xval );
1753  } else {
1754  if(meIntegrity_[1]) meIntegrity_[1]->setBinContent( jx, jy, xval );
1755  }
1756 
1757  if ( xval == 0 && meIntegrityErr_) meIntegrityErr_->Fill( ism );
1758 
1759  }
1760 
1761  h2 = eeic->h_[ism-1];
1762 
1763  if ( h2 ) {
1764 
1765  float xval = h2->GetBinContent( ix, iy );
1766 
1767  if ( ism >= 1 && ism <= 9 ) {
1768  if ( xval != 0 && meOccupancy_[0]) meOccupancy_[0]->setBinContent( 101 - jx, jy, xval );
1769  } else {
1770  if ( xval != 0 && meOccupancy_[1]) meOccupancy_[1]->setBinContent( jx, jy, xval );
1771  }
1772 
1773  if(meOccupancy1D_) meOccupancy1D_->Fill( ism, xval );
1774 
1775  }
1776 
1777  }
1778 
1779  if ( eepoc ) {
1780 
1781  me = eepoc->meg03_[ism-1];
1782 
1783  if ( me ) {
1784 
1785  float xval = me->getBinContent( ix, iy );
1786 
1787  if ( ism >= 1 && ism <= 9 ) {
1788  if(mePedestalOnline_[0]) mePedestalOnline_[0]->setBinContent( 101 - jx, jy, xval );
1789  } else {
1790  if(mePedestalOnline_[1]) mePedestalOnline_[1]->setBinContent( jx, jy, xval );
1791  }
1792 
1793  if ( xval == 0 && mePedestalOnlineErr_) mePedestalOnlineErr_->Fill( ism );
1794 
1795  }
1796 
1797  float num01, mean01, rms01;
1798  bool update01 = UtilsClient::getBinStatistics(hpot01_[ism-1], ix, iy, num01, mean01, rms01);
1799 
1800  if ( update01 ) {
1801 
1802  if(mePedestalOnlineRMS_) mePedestalOnlineRMS_->Fill( ism, rms01 );
1803  if(mePedestalOnlineMean_) mePedestalOnlineMean_->Fill( ism, mean01 );
1804 
1805  if ( ism >= 1 && ism <= 9 ) {
1806  if(mePedestalOnlineRMSMap_[0]) mePedestalOnlineRMSMap_[0]->setBinContent( 101 - jx, jy, rms01 );
1807  } else {
1809  }
1810 
1811  }
1812 
1813  }
1814 
1815  if ( eelc ) {
1816 
1817  if ( find(laserWavelengths_.begin(), laserWavelengths_.end(), 1) != laserWavelengths_.end() ) {
1818 
1819  me = eelc->meg01_[ism-1];
1820 
1821  if ( me ) {
1822 
1823  float xval = me->getBinContent( ix, iy );
1824 
1825  if ( me->getEntries() != 0 ) {
1826  if ( ism >= 1 && ism <= 9 ) {
1827  meLaserL1_[0]->setBinContent( 101 - jx, jy, xval );
1828  } else {
1829  meLaserL1_[1]->setBinContent( jx, jy, xval );
1830  }
1831 
1832  if ( xval == 0 ) meLaserL1Err_->Fill( ism );
1833  }
1834 
1835  }
1836 
1837  }
1838 
1839  if ( find(laserWavelengths_.begin(), laserWavelengths_.end(), 2) != laserWavelengths_.end() ) {
1840 
1841  me = eelc->meg02_[ism-1];
1842 
1843  if ( me ) {
1844 
1845  float xval = me->getBinContent( ix, iy );
1846 
1847  if ( me->getEntries() != 0 ) {
1848  if ( ism >= 1 && ism <= 9 ) {
1849  meLaserL2_[0]->setBinContent( 101 - jx, jy, xval );
1850  } else {
1851  meLaserL2_[1]->setBinContent( jx, jy, xval );
1852  }
1853 
1854  if ( xval == 0 ) meLaserL2Err_->Fill( ism );
1855  }
1856 
1857  }
1858 
1859  }
1860 
1861  if ( find(laserWavelengths_.begin(), laserWavelengths_.end(), 3) != laserWavelengths_.end() ) {
1862 
1863  me = eelc->meg03_[ism-1];
1864 
1865  if ( me ) {
1866 
1867  float xval = me->getBinContent( ix, iy );
1868 
1869  if ( me->getEntries() != 0 ) {
1870  if ( ism >= 1 && ism <= 9 ) {
1871  meLaserL3_[0]->setBinContent( 101 - jx, jy, xval );
1872  } else {
1873  meLaserL3_[1]->setBinContent( jx, jy, xval );
1874  }
1875 
1876  if ( xval == 0 ) meLaserL3Err_->Fill( ism );
1877  }
1878 
1879  }
1880 
1881  }
1882 
1883  if ( find(laserWavelengths_.begin(), laserWavelengths_.end(), 4) != laserWavelengths_.end() ) {
1884 
1885  me = eelc->meg04_[ism-1];
1886 
1887  if ( me ) {
1888 
1889  float xval = me->getBinContent( ix, iy );
1890 
1891  if ( me->getEntries() != 0 ) {
1892  if ( ism >= 1 && ism <= 9 ) {
1893  meLaserL4_[0]->setBinContent( 101 - jx, jy, xval );
1894  } else {
1895  meLaserL4_[1]->setBinContent( jx, jy, xval );
1896  }
1897 
1898  if ( xval == 0 ) meLaserL4Err_->Fill( ism );
1899  }
1900 
1901  }
1902 
1903  }
1904 
1905  }
1906 
1907  if ( eeldc ) {
1908 
1909  if ( find(ledWavelengths_.begin(), ledWavelengths_.end(), 1) != ledWavelengths_.end() ) {
1910 
1911  me = eeldc->meg01_[ism-1];
1912 
1913  if ( me ) {
1914 
1915  float xval = me->getBinContent( ix, iy );
1916 
1917  if ( me->getEntries() != 0 ) {
1918  if ( ism >= 1 && ism <= 9 ) {
1919  meLedL1_[0]->setBinContent( 101 - jx, jy, xval );
1920  } else {
1921  meLedL1_[1]->setBinContent( jx, jy, xval );
1922  }
1923 
1924  if ( xval == 0 ) meLedL1Err_->Fill( ism );
1925  }
1926 
1927  }
1928 
1929  }
1930 
1931  if ( find(ledWavelengths_.begin(), ledWavelengths_.end(), 2) != ledWavelengths_.end() ) {
1932 
1933  me = eeldc->meg02_[ism-1];
1934 
1935  if ( me ) {
1936 
1937  float xval = me->getBinContent( ix, iy );
1938 
1939  if ( me->getEntries() != 0 ) {
1940  if ( ism >= 1 && ism <= 9 ) {
1941  meLedL2_[0]->setBinContent( 101 - jx, jy, xval );
1942  } else {
1943  meLedL2_[1]->setBinContent( jx, jy, xval );
1944  }
1945 
1946  if ( xval == 0 ) meLedL2Err_->Fill( ism );
1947  }
1948 
1949  }
1950 
1951  }
1952 
1953  }
1954 
1955  if ( eepc ) {
1956 
1957  me_01 = eepc->meg01_[ism-1];
1958  me_02 = eepc->meg02_[ism-1];
1959  me_03 = eepc->meg03_[ism-1];
1960 
1961  if ( me_01 ) {
1962  float val_01=me_01->getBinContent(ix,iy);
1963  if ( me_01->getEntries() != 0 ) {
1964  if ( ism >= 1 && ism <= 9 ) {
1965  mePedestalG01_[0]->setBinContent( 101 - jx, jy, val_01 );
1966  } else {
1967  mePedestalG01_[1]->setBinContent( jx, jy, val_01 );
1968  }
1969  }
1970  }
1971  if ( me_02 ) {
1972  float val_02=me_02->getBinContent(ix,iy);
1973  if ( me_02->getEntries() != 0 ) {
1974  if ( ism >= 1 && ism <= 9 ) {
1975  mePedestalG06_[0]->setBinContent( 101 - jx, jy, val_02 );
1976  } else {
1977  mePedestalG06_[1]->setBinContent( jx, jy, val_02 );
1978  }
1979  }
1980  }
1981  if ( me_03 ) {
1982  float val_03=me_03->getBinContent(ix,iy);
1983  if ( me_03->getEntries() != 0 ) {
1984  if ( ism >= 1 && ism <= 9 ) {
1985  mePedestalG12_[0]->setBinContent( 101 - jx, jy, val_03 );
1986  } else {
1987  mePedestalG12_[1]->setBinContent( jx, jy, val_03 );
1988  }
1989  }
1990  }
1991 
1992  }
1993 
1994  if ( eetpc ) {
1995 
1996  me_01 = eetpc->meg01_[ism-1];
1997  me_02 = eetpc->meg02_[ism-1];
1998  me_03 = eetpc->meg03_[ism-1];
1999 
2000  if ( me_01 ) {
2001  float val_01=me_01->getBinContent(ix,iy);
2002  if ( me_01->getEntries() != 0 ) {
2003  if ( ism >= 1 && ism <= 9 ) {
2004  meTestPulseG01_[0]->setBinContent( 101 - jx, jy, val_01 );
2005  } else {
2006  meTestPulseG01_[1]->setBinContent( jx, jy, val_01 );
2007  }
2008  }
2009  }
2010  if ( me_02 ) {
2011  float val_02=me_02->getBinContent(ix,iy);
2012  if ( me_02->getEntries() != 0 ) {
2013  if ( ism >= 1 && ism <= 9 ) {
2014  meTestPulseG06_[0]->setBinContent( 101 - jx, jy, val_02 );
2015  } else {
2016  meTestPulseG06_[1]->setBinContent( jx, jy, val_02 );
2017  }
2018  }
2019  }
2020  if ( me_03 ) {
2021  float val_03=me_03->getBinContent(ix,iy);
2022  if ( me_03->getEntries() != 0 ) {
2023  if ( ism >= 1 && ism <= 9 ) {
2024  meTestPulseG12_[0]->setBinContent( 101 - jx, jy, val_03 );
2025  } else {
2026  meTestPulseG12_[1]->setBinContent( jx, jy, val_03 );
2027  }
2028  }
2029  }
2030 
2031  }
2032 
2033  if ( hot01_[ism-1] ) {
2034 
2035  float xval = hot01_[ism-1]->GetBinContent( ix, iy );
2036 
2037  if ( ism >= 1 && ism <= 9 ) {
2038  if(meRecHitEnergy_[0]) meRecHitEnergy_[0]->setBinContent( 101 - jx, jy, xval );
2039  } else {
2040  if(meRecHitEnergy_[1]) meRecHitEnergy_[1]->setBinContent( jx, jy, xval );
2041  }
2042 
2043  }
2044 
2045  }
2046  }
2047 
2048  for ( int ix = 1; ix <= 50; ix++ ) {
2049  for ( int iy = 1; iy <= 50; iy++ ) {
2050 
2051  int jx = ix + Numbers::ix0EE(ism);
2052  int jy = iy + Numbers::iy0EE(ism);
2053 
2054  if ( ism >= 1 && ism <= 9 ) {
2055  if ( ! Numbers::validEE(ism, 101 - jx, jy) ) continue;
2056  } else {
2057  if ( ! Numbers::validEE(ism, jx, jy) ) continue;
2058  }
2059 
2060  if ( eesfc ) {
2061 
2062  me = dqmStore_->get(prefixME_ + "/EcalInfo/EEMM DCC");
2063 
2064  float xval = 6;
2065 
2066  if ( me ) {
2067 
2068  xval = 2;
2069  if ( me->getBinContent( ism ) > 0 ) xval = 1;
2070 
2071  }
2072 
2073  me = eesfc->meh01_[ism-1];
2074 
2075  if ( me ) {
2076 
2077  if ( me->getBinContent( ix, iy ) > 0 ) xval = 0;
2078 
2079  if ( ism >= 1 && ism <= 9 ) {
2080 
2081  meStatusFlags_[0]->setBinContent( 101 - jx, jy, xval );
2082 
2083  if ( me->getBinError( ix, iy ) > 0 && me->getBinError( ix, iy ) < 0.1 ) {
2084  UtilsClient::maskBinContent( meStatusFlags_[0], 101 - jx, jy );
2085  }
2086  } else {
2087 
2088  meStatusFlags_[1]->setBinContent( jx, jy, xval );
2089 
2090  if ( me->getBinError( ix, iy ) > 0 && me->getBinError( ix, iy ) < 0.1 ) {
2092  }
2093  }
2094 
2095  if ( xval == 0 ) meStatusFlagsErr_->Fill( ism );
2096 
2097  }
2098 
2099  }
2100 
2101  }
2102  }
2103 
2104  for ( int ix = 1; ix <= 50; ix++ ) {
2105  for ( int iy = 1; iy <= 50; iy++ ) {
2106 
2107  int jx = ix + Numbers::ix0EE(ism);
2108  int jy = iy + Numbers::iy0EE(ism);
2109 
2110  if ( eetttc ) {
2111 
2112  float mean01 = 0;
2113  bool hadNonZeroInterest = false;
2114 
2115  if ( httt01_[ism-1] ) {
2116 
2117  mean01 = httt01_[ism-1]->GetBinContent( ix, iy );
2118 
2119  if ( mean01 != 0. ) {
2120  if ( ism >= 1 && ism <= 9 ) {
2121  if ( meTriggerTowerEt_[0] ) meTriggerTowerEt_[0]->setBinContent( 101 - jx, jy, mean01 );
2122  } else {
2123  if ( meTriggerTowerEt_[1] ) meTriggerTowerEt_[1]->setBinContent( jx, jy, mean01 );
2124  }
2125  }
2126 
2127  }
2128 
2129  me = eetttc->me_o01_[ism-1];
2130 
2131  if ( me ) {
2132 
2133  float xval = me->getBinContent( ix, iy );
2134 
2135  if ( xval != 0. ) {
2136  if ( ism >= 1 && ism <= 9 ) {
2137  meTriggerTowerTiming_[0]->setBinContent( 101 - jx, jy, xval );
2138  } else {
2139  meTriggerTowerTiming_[1]->setBinContent( jx, jy, xval );
2140  }
2141  hadNonZeroInterest = true;
2142  }
2143 
2144  }
2145 
2146  me = eetttc->me_o02_[ism-1];
2147 
2148  if ( me ) {
2149 
2150  float xval = me->getBinContent( ix, iy );
2151 
2152  if ( xval != 0. ) {
2153  if ( ism >= 1 && ism <= 9 ) {
2154  meTriggerTowerNonSingleTiming_[0]->setBinContent( 101 - jx, jy, xval );
2155  } else {
2156  meTriggerTowerNonSingleTiming_[1]->setBinContent( jx, jy, xval );
2157  }
2158  }
2159 
2160  }
2161 
2162  float xval = 2;
2163  if( mean01 > 0. ) {
2164 
2165  h2 = eetttc->l01_[ism-1];
2166  h3 = eetttc->l02_[ism-1];
2167 
2168  if ( h2 && h3 ) {
2169 
2170  // float emulErrorVal = h2->GetBinContent( ix, iy ) + h3->GetBinContent( ix, iy );
2171  float emulErrorVal = h2->GetBinContent( ix, iy );
2172 
2173  float errorThresh(0.01);
2174  if((ix - 50) * (ix - 50) + (iy - 50) * (iy - 50) < 400.) errorThresh = 0.05;
2175 
2176  if( emulErrorVal > errorThresh * ievt_ && hadNonZeroInterest ) xval = 0;
2177 
2178  }
2179 
2180  if ( xval!=0 && hadNonZeroInterest ) xval = 1;
2181 
2182  }
2183 
2184  // see fix below
2185  if ( xval == 2 ) continue;
2186 
2187  if ( ism >= 1 && ism <= 9 ) {
2188  meTriggerTowerEmulError_[0]->setBinContent( 101 - jx, jy, xval );
2189  } else {
2190  meTriggerTowerEmulError_[1]->setBinContent( jx, jy, xval );
2191  }
2192 
2193  }
2194 
2195  if ( eetmc ) {
2196 
2197  float num01, mean01, rms01;
2198  bool update01 = UtilsClient::getBinStatistics(htmt01_[ism-1], ix, iy, num01, mean01, rms01, timingNHitThreshold_);
2199  mean01 -= 50.;
2200 
2201  if( update01 ){
2202 
2203  if ( ism >= 1 && ism <= 9 ) {
2204  meTimingMean1D_[0]->Fill(mean01);
2205  meTimingRMS1D_[0]->Fill(rms01);
2206  } else {
2207  meTimingMean1D_[1]->Fill(mean01);
2208  meTimingRMS1D_[1]->Fill(rms01);
2209  }
2210 
2211  meTimingMean_->Fill( ism, mean01 );
2212 
2213  meTimingRMS_->Fill( ism, rms01 );
2214 
2215  }
2216 
2217  }
2218 
2219  }
2220  }
2221 
2222  for ( int ix = 1; ix <= 10; ix++ ) {
2223  for( int iy = 1; iy <= 10; iy++ ) {
2224 
2225  int jx = ix + Numbers::ix0EE(ism) / 5;
2226  int jy = iy + Numbers::iy0EE(ism) / 5;
2227 
2228  if( jx <= 0 || jx >= 21 || jy <= 0 || jy >= 21 ) continue;
2229 
2230  if ( ism >= 1 && ism <= 9 ) {
2231  if ( ! Numbers::validEESc(ism, 21 - jx, jy) ) continue;
2232  } else {
2233  if ( ! Numbers::validEESc(ism, jx, jy) ) continue;
2234  }
2235 
2236  if ( eetmc ) {
2237 
2238  if ( htmt01_[ism-1] ) {
2239 
2240  int ixedge = (ix-1) * 5;
2241  int iyedge = (iy-1) * 5;
2242  int jxedge = (jx-1) * 5;
2243  int jyedge = (jy-1) * 5;
2244 
2245  float num(0);
2246  int nValid(0);
2247  bool mask(false);
2248 
2249  for(int cx=1; cx<=5; cx++){
2250  for(int cy=1; cy<=5; cy++){
2251  int scjx = (ism >= 1 && ism <= 9) ? 101 - (jxedge + cx) : jxedge + cx;
2252  int scjy = jyedge + cy;
2253  int scix = ixedge + cx;
2254  int sciy = iyedge + cy;
2255 
2256  if ( ! Numbers::validEE(ism, scjx, scjy) ) continue;
2257 
2258  nValid += 1;
2259 
2260  num += htmt01_[ism-1]->GetBinEntries(htmt01_[ism-1]->GetBin(scix, sciy));
2261 
2262  if(Masks::maskChannel(ism, scix, sciy, chWarnBit, EcalEndcap) ) mask = true;
2263  }
2264  }
2265 
2266  float nHitThreshold(timingNHitThreshold_ * 15. * nValid / 25.);
2267 
2268  bool update01(false);
2269  float num01, mean01, rms01;
2270  if(ism >= 1 && ism <= 9)
2271  update01 = UtilsClient::getBinStatistics(htmtm, 21 - jx, jy, num01, mean01, rms01, nHitThreshold);
2272  else
2273  update01 = UtilsClient::getBinStatistics(htmtp, jx, jy, num01, mean01, rms01, nHitThreshold);
2274 
2275  mean01 -= 50.;
2276 
2277  if(!update01){
2278  mean01 = 0.;
2279  rms01 = 0.;
2280  }
2281 
2282  update01 |= num > 1.4 * nHitThreshold; // allow 40% outliers
2283 
2284  float xval = 2.;
2285 
2286  if( update01 ){
2287 
2288  float rmsThresh(6.);
2289  float meanThresh(3.);
2290  if((ix - 50) * (ix - 50) + (iy - 50) * (iy - 50) < 400.){
2291  rmsThresh = 10.;
2292  meanThresh = 6.;
2293  }
2294 
2295  // quality BAD if mean large, rms large, or significantly more outliers (num: # events in +-20 ns time window)
2296  if( std::abs(mean01) > meanThresh || rms01 > rmsThresh || num > 1.4 * num01 ) xval = 0.;
2297  else xval = 1.;
2298 
2299  }
2300 
2301  int ind;
2302  if ( ism >= 1 && ism <= 9 ){
2303  jx = 21 - jx;
2304  ind = 0;
2305  }else{
2306  ind = 1;
2307  }
2308 
2309  meTiming_[ind]->setBinContent( jx, jy, xval );
2310  if ( mask ) UtilsClient::maskBinContent( meTiming_[ind], jx, jy );
2311 
2312  }
2313 
2314  }
2315 
2316  }
2317  }
2318  // PN's summaries
2319  for( int i = 1; i <= 10; i++ ) {
2320  for( int j = 1; j <= 5; j++ ) {
2321 
2322  int ichanx;
2323  int ipseudostripx;
2324 
2325  if(ism<=9) {
2326  ichanx = i;
2327  ipseudostripx = (ism<=3) ? j+5*(ism-1+6) : j+5*(ism-1-3);
2328  } else {
2329  ichanx = i+10;
2330  ipseudostripx = (ism<=12) ? j+5*(ism-10+6) : j+5*(ism-10-3);
2331  }
2332 
2333  if ( eeic ) {
2334 
2335  me_04 = eeic->meg02_[ism-1];
2336  h2 = eeic->hmem_[ism-1];
2337 
2338 
2339  if( me_04 ) {
2340 
2341  float xval = me_04->getBinContent(i,j);
2342  if(meIntegrityPN_) meIntegrityPN_->setBinContent( ipseudostripx, ichanx, xval );
2343 
2344  }
2345 
2346  if ( h2 ) {
2347 
2348  float xval = h2->GetBinContent(i,1);
2349  if(meOccupancyPN_) meOccupancyPN_->setBinContent( ipseudostripx, ichanx, xval );
2350 
2351  }
2352 
2353  }
2354 
2355  if ( eepc ) {
2356 
2357  me_04 = eepc->meg04_[ism-1];
2358  me_05 = eepc->meg05_[ism-1];
2359 
2360  if( me_04 ) {
2361  float val_04=me_04->getBinContent(i,1);
2362  mePedestalPNG01_->setBinContent( ipseudostripx, ichanx, val_04 );
2363  }
2364  if( me_05 ) {
2365  float val_05=me_05->getBinContent(i,1);
2366  mePedestalPNG16_->setBinContent( ipseudostripx, ichanx, val_05 );
2367  }
2368 
2369  }
2370 
2371  if ( eetpc ) {
2372 
2373  me_04 = eetpc->meg04_[ism-1];
2374  me_05 = eetpc->meg05_[ism-1];
2375 
2376  if( me_04 ) {
2377  float val_04=me_04->getBinContent(i,1);
2378  meTestPulsePNG01_->setBinContent( ipseudostripx, ichanx, val_04 );
2379  }
2380  if( me_05 ) {
2381  float val_05=me_05->getBinContent(i,1);
2382  meTestPulsePNG16_->setBinContent( ipseudostripx, ichanx, val_05 );
2383  }
2384 
2385  }
2386 
2387  if ( eelc ) {
2388 
2389  if ( find(laserWavelengths_.begin(), laserWavelengths_.end(), 1) != laserWavelengths_.end() ) {
2390 
2391  me = eelc->meg09_[ism-1];
2392 
2393  if( me ) {
2394 
2395  float xval = me->getBinContent(i,1);
2396 
2397  if ( me->getEntries() != 0 && me->getEntries() != 0 ) {
2398  meLaserL1PN_->setBinContent( ipseudostripx, ichanx, xval );
2399  if ( xval == 0 ) meLaserL1PNErr_->Fill( ism );
2400  }
2401 
2402  }
2403 
2404  }
2405 
2406  if ( find(laserWavelengths_.begin(), laserWavelengths_.end(), 2) != laserWavelengths_.end() ) {
2407 
2408  me = eelc->meg10_[ism-1];
2409 
2410  if( me ) {
2411 
2412  float xval = me->getBinContent(i,1);
2413 
2414  if ( me->getEntries() != 0 && me->getEntries() != 0 ) {
2415  meLaserL2PN_->setBinContent( ipseudostripx, ichanx, xval );
2416  if ( xval == 0 ) meLaserL2PNErr_->Fill( ism );
2417  }
2418 
2419  }
2420 
2421  }
2422 
2423  if ( find(laserWavelengths_.begin(), laserWavelengths_.end(), 3) != laserWavelengths_.end() ) {
2424 
2425  me = eelc->meg11_[ism-1];
2426 
2427  if( me ) {
2428 
2429  float xval = me->getBinContent(i,1);
2430 
2431  if ( me->getEntries() != 0 && me->getEntries() != 0 ) {
2432  meLaserL3PN_->setBinContent( ipseudostripx, ichanx, xval );
2433  if ( xval == 0 ) meLaserL3PNErr_->Fill( ism );
2434  }
2435 
2436  }
2437 
2438  }
2439 
2440  if ( find(laserWavelengths_.begin(), laserWavelengths_.end(), 4) != laserWavelengths_.end() ) {
2441 
2442  me = eelc->meg12_[ism-1];
2443 
2444  if( me ) {
2445 
2446  float xval = me->getBinContent(i,1);
2447 
2448  if ( me->getEntries() != 0 && me->getEntries() != 0 ) {
2449  meLaserL4PN_->setBinContent( ipseudostripx, ichanx, xval );
2450  if ( xval == 0 ) meLaserL4PNErr_->Fill( ism );
2451  }
2452 
2453  }
2454 
2455  }
2456 
2457  }
2458 
2459  if ( eeldc ) {
2460 
2461  if ( find(ledWavelengths_.begin(), ledWavelengths_.end(), 1) != ledWavelengths_.end() ) {
2462 
2463  me = eeldc->meg09_[ism-1];
2464 
2465  if( me ) {
2466 
2467  float xval = me->getBinContent(i,1);
2468 
2469  if ( me->getEntries() != 0 && me->getEntries() != 0 ) {
2470  meLedL1PN_->setBinContent( ipseudostripx, ichanx, xval );
2471  if ( xval == 0 ) meLedL1PNErr_->Fill( ism );
2472  }
2473 
2474  }
2475 
2476  }
2477 
2478  if ( find(ledWavelengths_.begin(), ledWavelengths_.end(), 2) != ledWavelengths_.end() ) {
2479 
2480  me = eeldc->meg10_[ism-1];
2481 
2482  if( me ) {
2483 
2484  float xval = me->getBinContent(i,1);
2485 
2486  if ( me->getEntries() != 0 && me->getEntries() != 0 ) {
2487  meLedL2PN_->setBinContent( ipseudostripx, ichanx, xval );
2488  if ( xval == 0 ) meLedL2PNErr_->Fill( ism );
2489  }
2490 
2491  }
2492 
2493  }
2494 
2495  }
2496 
2497  }
2498  }
2499 
2500  for ( int ix=1; ix<=50; ix++ ) {
2501  for (int iy=1; iy<=50; iy++ ) {
2502 
2503  int jx = ix + Numbers::ix0EE(ism);
2504  int jy = iy + Numbers::iy0EE(ism);
2505  if( ism >= 1 && ism <= 9 ) jx = 101 - jx;
2506 
2507  if( !Numbers::validEE(ism, jx, jy) ) continue;
2508 
2509  int ic = Numbers::icEE(ism, jx, jy);
2510 
2511  if ( eelc ) {
2512 
2513  if ( find(laserWavelengths_.begin(), laserWavelengths_.end(), 1) != laserWavelengths_.end() ) {
2514 
2515  MonitorElement *meg = eelc->meg01_[ism-1];
2516 
2517  float xval = 2;
2518  if ( meg ) xval = meg->getBinContent( ix, iy );
2519 
2520  // exclude channels without laser data (yellow in the quality map)
2521  if( xval != 2 && xval != 5 ) {
2522 
2523  MonitorElement* mea01 = eelc->mea01_[ism-1];
2524  MonitorElement* met01 = eelc->met01_[ism-1];
2525  MonitorElement* meaopn01 = eelc->meaopn01_[ism-1];
2526 
2527  if( mea01 && met01 && meaopn01 ) {
2528  meLaserL1Ampl_->Fill( ism, mea01->getBinContent( ic ) );
2529  if( met01->getBinContent( ic ) > 0. ) meLaserL1Timing_->Fill( ism, met01->getBinContent( ic ) );
2530  meLaserL1AmplOverPN_->Fill( ism, meaopn01->getBinContent( ic ) );
2531  }
2532 
2533  }
2534 
2535  }
2536 
2537  if ( find(laserWavelengths_.begin(), laserWavelengths_.end(), 2) != laserWavelengths_.end() ) {
2538 
2539  MonitorElement *meg = eelc->meg02_[ism-1];
2540 
2541  float xval = 2;
2542  if ( meg ) xval = meg->getBinContent( ix, iy );
2543 
2544  // exclude channels without laser data (yellow in the quality map)
2545  if( xval != 2 && xval != 5 ) {
2546 
2547  MonitorElement* mea02 = eelc->mea02_[ism-1];
2548  MonitorElement* met02 = eelc->met02_[ism-1];
2549  MonitorElement* meaopn02 = eelc->meaopn02_[ism-1];
2550 
2551  if( mea02 && met02 && meaopn02 ) {
2552  meLaserL2Ampl_->Fill( ism, mea02->getBinContent( ic ) );
2553  if( met02->getBinContent( ic ) > 0. ) meLaserL2Timing_->Fill( ism, met02->getBinContent( ic ) );
2554  meLaserL2AmplOverPN_->Fill( ism, meaopn02->getBinContent( ic ) );
2555  }
2556 
2557  }
2558 
2559  }
2560 
2561  if ( find(laserWavelengths_.begin(), laserWavelengths_.end(), 3) != laserWavelengths_.end() ) {
2562 
2563  MonitorElement *meg = eelc->meg03_[ism-1];
2564 
2565  float xval = 2;
2566  if ( meg ) xval = meg->getBinContent( ix, iy );
2567 
2568  // exclude channels without laser data (yellow in the quality map)
2569  if( xval != 2 && xval != 5 ) {
2570 
2571  MonitorElement* mea03 = eelc->mea03_[ism-1];
2572  MonitorElement* met03 = eelc->met03_[ism-1];
2573  MonitorElement* meaopn03 = eelc->meaopn03_[ism-1];
2574 
2575  if( mea03 && met03 && meaopn03 ) {
2576  meLaserL3Ampl_->Fill( ism, mea03->getBinContent( ic ) );
2577  if( met03->getBinContent( ic ) > 0. ) meLaserL3Timing_->Fill( ism, met03->getBinContent( ic ) );
2578  meLaserL3AmplOverPN_->Fill( ism, meaopn03->getBinContent( ic ) );
2579  }
2580 
2581  }
2582 
2583  }
2584 
2585  if ( find(laserWavelengths_.begin(), laserWavelengths_.end(), 4) != laserWavelengths_.end() ) {
2586 
2587  MonitorElement *meg = eelc->meg04_[ism-1];
2588 
2589  float xval = 2;
2590  if ( meg ) xval = meg->getBinContent( ix, iy );
2591 
2592  // exclude channels without laser data (yellow in the quality map)
2593  if( xval != 2 && xval != 5 ) {
2594 
2595  MonitorElement* mea04 = eelc->mea04_[ism-1];
2596  MonitorElement* met04 = eelc->met04_[ism-1];
2597  MonitorElement* meaopn04 = eelc->meaopn04_[ism-1];
2598 
2599  if( mea04 && met04 && meaopn04 ) {
2600  meLaserL4Ampl_->Fill( ism, mea04->getBinContent( ic ) );
2601  if( met04->getBinContent( ic ) > 0. ) meLaserL4Timing_->Fill( ism, met04->getBinContent( ic ) );
2602  meLaserL4AmplOverPN_->Fill( ism, meaopn04->getBinContent( ic ) );
2603  }
2604 
2605  }
2606 
2607  }
2608 
2609  }
2610 
2611  if ( eeldc ) {
2612 
2613  if ( find(ledWavelengths_.begin(), ledWavelengths_.end(), 1) != ledWavelengths_.end() ) {
2614 
2615  MonitorElement *meg = eeldc->meg01_[ism-1];
2616 
2617  float xval = 2;
2618  if ( meg ) xval = meg->getBinContent( ix, iy );
2619 
2620  // exclude channels without led data (yellow in the quality map)
2621  if( xval != 2 && xval != 5 ) {
2622 
2623  MonitorElement* mea01 = eeldc->mea01_[ism-1];
2624  MonitorElement* met01 = eeldc->met01_[ism-1];
2625  MonitorElement* meaopn01 = eeldc->meaopn01_[ism-1];
2626 
2627  if( mea01 && met01 && meaopn01 ) {
2628  meLedL1Ampl_->Fill( ism, mea01->getBinContent( ic ) );
2629  if( met01->getBinContent( ic ) > 0. ) meLedL1Timing_->Fill( ism, met01->getBinContent( ic ) );
2630  meLedL1AmplOverPN_->Fill( ism, meaopn01->getBinContent( ic ) );
2631  }
2632 
2633  }
2634 
2635  }
2636 
2637  if ( find(ledWavelengths_.begin(), ledWavelengths_.end(), 2) != ledWavelengths_.end() ) {
2638 
2639  MonitorElement *meg = eeldc->meg02_[ism-1];
2640 
2641  float xval = 2;
2642  if ( meg ) xval = meg->getBinContent( ix, iy );
2643 
2644  // exclude channels without led data (yellow in the quality map)
2645  if( xval != 2 && xval != 5 ) {
2646 
2647  MonitorElement* mea02 = eeldc->mea02_[ism-1];
2648  MonitorElement* met02 = eeldc->met02_[ism-1];
2649  MonitorElement* meaopn02 = eeldc->meaopn02_[ism-1];
2650 
2651  if( mea02 && met02 && meaopn02 ) {
2652  meLedL2Ampl_->Fill( ism, mea02->getBinContent( ic ) );
2653  if( met02->getBinContent( ic ) > 0. ) meLedL2Timing_->Fill( ism, met02->getBinContent( ic ) );
2654  meLedL2AmplOverPN_->Fill( ism, meaopn02->getBinContent( ic ) );
2655  }
2656 
2657  }
2658 
2659  }
2660 
2661  }
2662 
2663  if ( eetpc ) {
2664 
2665  MonitorElement *meg01 = eetpc->meg01_[ism-1];
2666  MonitorElement *meg02 = eetpc->meg02_[ism-1];
2667  MonitorElement *meg03 = eetpc->meg03_[ism-1];
2668 
2669  if ( meg01 ) {
2670 
2671  float xval01 = meg01->getBinContent( ix, iy );
2672 
2673  if ( xval01 != 2 && xval01 != 5 ) {
2674 
2675  me = eetpc->mea01_[ism-1];
2676 
2677  if ( me ) {
2678 
2679  meTestPulseAmplG01_->Fill( ism, me->getBinContent( ic ) );
2680 
2681  }
2682 
2683  }
2684 
2685  }
2686 
2687  if ( meg02 ) {
2688 
2689  float xval02 = meg02->getBinContent( ix, iy );
2690 
2691  if ( xval02 != 2 && xval02 != 5 ) {
2692 
2693  me = eetpc->mea02_[ism-1];
2694 
2695  if ( me ) {
2696 
2697  meTestPulseAmplG06_->Fill( ism, me->getBinContent( ic ) );
2698 
2699  }
2700 
2701  }
2702 
2703  }
2704 
2705  if ( meg03 ) {
2706 
2707  float xval03 = meg03->getBinContent( ix, iy );
2708 
2709  if ( xval03 != 2 && xval03 != 5 ) {
2710 
2711  me = eetpc->mea03_[ism-1];
2712 
2713  if ( me ) {
2714 
2715  meTestPulseAmplG12_->Fill( ism, me->getBinContent( ic ) );
2716 
2717  }
2718 
2719  }
2720 
2721  }
2722 
2723  } //etpc
2724 
2725 
2726  } // loop on iy
2727  } // loop on ix
2728 
2729  } // loop on SM
2730 
2731  // fix TPG quality plots
2732 
2733  for ( unsigned int i=0; i<superModules_.size(); i++ ) {
2734 
2735  int ism = superModules_[i];
2736 
2737  for ( int ix = 1; ix <= 50; ix++ ) {
2738  for ( int iy = 1; iy <= 50; iy++ ) {
2739 
2740  int jx = ix + Numbers::ix0EE(ism);
2741  int jy = iy + Numbers::iy0EE(ism);
2742 
2743  if ( eetttc ) {
2744 
2745  if ( ism >= 1 && ism <= 9 ) {
2746  if ( meTriggerTowerEmulError_[0]->getBinContent( 101 - jx, jy ) == 6 ) {
2747  if ( Numbers::validEE(ism, 101 - jx, jy) ) meTriggerTowerEmulError_[0]->setBinContent( 101 - jx, jy, 2 );
2748  }
2749  } else {
2750  if ( meTriggerTowerEmulError_[1]->getBinContent( jx, jy ) == 6 ) {
2751  if ( Numbers::validEE(ism, jx, jy) ) meTriggerTowerEmulError_[1]->setBinContent( jx, jy, 2 );
2752  }
2753  }
2754 
2755  }
2756 
2757  }
2758  }
2759 
2760  }
2761 
2762  } // loop on clients
2763 
2764  // The global-summary
2765  int nGlobalErrors = 0;
2766  int nGlobalErrorsEE[18];
2767  int nValidChannels = 0;
2768  int nValidChannelsEE[18];
2769 
2770  for (int i = 0; i < 18; i++) {
2771  nGlobalErrorsEE[i] = 0;
2772  nValidChannelsEE[i] = 0;
2773  }
2774 
2775  for ( int jx = 1; jx <= 100; jx++ ) {
2776  for ( int jy = 1; jy <= 100; jy++ ) {
2777 
2778  if(meGlobalSummary_[0]) {
2779 
2780  float xval = 6;
2781  float val_in = meIntegrity_[0]->getBinContent(jx,jy);
2782  float val_po = mePedestalOnline_[0]->getBinContent(jx,jy);
2783  float val_tm = reducedReports_ ? 1. : meTiming_[0]->getBinContent((jx-1)/5+1,(jy-1)/5+1);
2784  float val_sf = meStatusFlags_[0]->getBinContent(jx,jy);
2785  float val_ee = reducedReports_ ? 1. : meTriggerTowerEmulError_[0]->getBinContent(jx,jy); // removed temporarily from the global summary
2786  // float val_ee = 1;
2787 
2788  // combine all the available wavelenghts in unique laser status
2789  // for each laser turn dark color and yellow into bright green
2790  float val_ls_1=2, val_ls_2=2, val_ls_3=2, val_ls_4=2;
2791  if ( find(laserWavelengths_.begin(), laserWavelengths_.end(), 1) != laserWavelengths_.end() ) {
2792  if ( meLaserL1_[0] ) val_ls_1 = meLaserL1_[0]->getBinContent(jx,jy);
2793  if(val_ls_1==2 || val_ls_1==3 || val_ls_1==4 || val_ls_1==5) val_ls_1=1;
2794  }
2795  if ( find(laserWavelengths_.begin(), laserWavelengths_.end(), 2) != laserWavelengths_.end() ) {
2796  if ( meLaserL2_[0] ) val_ls_2 = meLaserL2_[0]->getBinContent(jx,jy);
2797  if(val_ls_2==2 || val_ls_2==3 || val_ls_2==4 || val_ls_2==5) val_ls_2=1;
2798  }
2799  if ( find(laserWavelengths_.begin(), laserWavelengths_.end(), 3) != laserWavelengths_.end() ) {
2800  if ( meLaserL3_[0] ) val_ls_3 = meLaserL3_[0]->getBinContent(jx,jy);
2801  if(val_ls_3==2 || val_ls_3==3 || val_ls_3==4 || val_ls_3==5) val_ls_3=1;
2802  }
2803  if ( find(laserWavelengths_.begin(), laserWavelengths_.end(), 4) != laserWavelengths_.end() ) {
2804  if ( meLaserL4_[0] ) val_ls_4 = meLaserL4_[0]->getBinContent(jx,jy);
2805  if(val_ls_4==2 || val_ls_4==3 || val_ls_4==4 || val_ls_4==5) val_ls_4=1;
2806  }
2807 
2808  float val_ls = 1;
2809  if (val_ls_1 == 0 || val_ls_2==0 || val_ls_3==0 || val_ls_4==0) val_ls=0;
2810 
2811  // combine all the available wavelenghts in unique led status
2812  // for each laser turn dark color and yellow into bright green
2813  float val_ld_1=2, val_ld_2=2;
2814  if ( find(ledWavelengths_.begin(), ledWavelengths_.end(), 1) != ledWavelengths_.end() ) {
2815  if ( meLedL1_[0] ) val_ld_1 = meLedL1_[0]->getBinContent(jx,jy);
2816  if(val_ld_1==2 || val_ld_1==3 || val_ld_1==4 || val_ld_1==5) val_ld_1=1;
2817  }
2818  if ( find(ledWavelengths_.begin(), ledWavelengths_.end(), 2) != ledWavelengths_.end() ) {
2819  if ( meLedL2_[0] ) val_ld_2 = meLedL2_[0]->getBinContent(jx,jy);
2820  if(val_ld_2==2 || val_ld_2==3 || val_ld_2==4 || val_ld_2==5) val_ld_2=1;
2821  }
2822 
2823  float val_ld = 1;
2824  if (val_ld_1 == 0 || val_ld_2==0) val_ld=0;
2825 
2826  // DO NOT CONSIDER CALIBRATION EVENTS IN THE REPORT SUMMARY FOR NOW
2827  val_ls = 1;
2828  val_ld = 1;
2829 
2830  // turn each dark color (masked channel) to bright green
2831  // for laser & timing & trigger turn also yellow into bright green
2832  // for pedestal online too because is not computed in calibration events
2833 
2834  // 0/3 = red/dark red
2835  // 1/4 = green/dark green
2836  // 2/5 = yellow/dark yellow
2837  // 6 = unknown
2838 
2839  if( val_in==3 || val_in==4 || val_in==5) val_in=1;
2840  if(val_po==2 || val_po==3 || val_po==4 || val_po==5) val_po=1;
2841  if(val_ls==2 || val_ls==3 || val_ls==4 || val_ls==5) val_ls=1;
2842  if(val_ld==2 || val_ld==3 || val_ld==4 || val_ld==5) val_ld=1;
2843  if(val_tm==2 || val_tm==3 || val_tm==4 || val_tm==5) val_tm=1;
2844  if( val_sf==3 || val_sf==4 || val_sf==5) val_sf=1;
2845  if(val_ee==2 || val_ee==3 || val_ee==4 || val_ee==5) val_ee=1;
2846 
2847  if(val_in==6) xval=6;
2848  else if(val_in==0) xval=0;
2849  else if(val_po==0 || val_ls==0 || val_ld==0 || val_tm==0 || val_sf==0 || val_ee==0) xval=0;
2850  else if(val_po==2 || val_ls==2 || val_ld==2 || val_tm==2 || val_sf==2 || val_ee==2) xval=2;
2851  else xval=1;
2852 
2853  bool validCry = false;
2854 
2855  // if the SM is entirely not read, the masked channels
2856  // are reverted back to yellow
2857  float iEntries=0;
2858 
2859  for(int ism = 1; ism <= 9; ism++) {
2860  std::vector<int>::iterator iter = find(superModules_.begin(), superModules_.end(), ism);
2861  if (iter != superModules_.end()) {
2862  if ( Numbers::validEE(ism, jx, jy) ) {
2863  validCry = true;
2864 
2865  // recycle the validEE for the synch check of the DCC
2866  if(norm01_ && synch01_) {
2867  float frac_synch_errors = 0.;
2868  float norm = norm01_->GetBinContent(ism);
2869  if(norm > 0) frac_synch_errors = float(synch01_->GetBinContent(ism))/float(norm);
2870  if(frac_synch_errors > synchErrorThreshold_){
2871  xval = 0;
2872  if(oosTrend && oosTrend->GetBinContent(oosTrend->GetNbinsX()) - oosTrend->GetBinContent(1) < 1.) xval += 3.;
2873  }
2874  }
2875 
2876  for ( unsigned int i=0; i<clients_.size(); i++ ) {
2877  EEIntegrityClient* eeic = dynamic_cast<EEIntegrityClient*>(clients_[i]);
2878  if ( eeic ) {
2879  TH2F* h2 = eeic->h_[ism-1];
2880  if ( h2 ) {
2881  iEntries = h2->GetEntries();
2882  }
2883  }
2884  }
2885  }
2886  }
2887  }
2888 
2889  if ( validCry && iEntries==0 ) {
2890  xval=2;
2891  }
2892 
2893  meGlobalSummary_[0]->setBinContent( jx, jy, xval );
2894 
2895  if ( xval >= 0 && xval <= 5 ) {
2896  if ( xval != 2 && xval != 5 ) ++nValidChannels;
2897  for (int i = 1; i <= 9; i++) {
2898  if ( xval != 2 && xval != 5 ) {
2899  if ( Numbers::validEE(i, jx, jy) ) ++nValidChannelsEE[i-1];
2900  }
2901  }
2902  if ( xval == 0 ) ++nGlobalErrors;
2903  for (int i = 1; i <= 9; i++) {
2904  if ( xval == 0 ) {
2905  if ( Numbers::validEE(i, jx, jy) ) ++nGlobalErrorsEE[i-1];
2906  }
2907  }
2908  }
2909 
2910  }
2911 
2912  if(meGlobalSummary_[1]) {
2913 
2914  float xval = 6;
2915  float val_in = meIntegrity_[1]->getBinContent(jx,jy);
2916  float val_po = mePedestalOnline_[1]->getBinContent(jx,jy);
2917  float val_tm = reducedReports_ ? 1. : meTiming_[1]->getBinContent((jx-1)/5+1,(jy-1)/5+1);
2918  float val_sf = meStatusFlags_[1]->getBinContent(jx,jy);
2919  float val_ee = reducedReports_ ? 1. : meTriggerTowerEmulError_[1]->getBinContent(jx,jy); // removed temporarily from the global summary
2920  // float val_ee = 1;
2921 
2922  // combine all the available wavelenghts in unique laser status
2923  // for each laser turn dark color and yellow into bright green
2924  float val_ls_1=2, val_ls_2=2, val_ls_3=2, val_ls_4=2;
2925  if ( find(laserWavelengths_.begin(), laserWavelengths_.end(), 1) != laserWavelengths_.end() ) {
2926  if ( meLaserL1_[1] ) val_ls_1 = meLaserL1_[1]->getBinContent(jx,jy);
2927  if(val_ls_1==2 || val_ls_1==3 || val_ls_1==4 || val_ls_1==5) val_ls_1=1;
2928  }
2929  if ( find(laserWavelengths_.begin(), laserWavelengths_.end(), 2) != laserWavelengths_.end() ) {
2930  if ( meLaserL2_[1] ) val_ls_2 = meLaserL2_[1]->getBinContent(jx,jy);
2931  if(val_ls_2==2 || val_ls_2==3 || val_ls_2==4 || val_ls_2==5) val_ls_2=1;
2932  }
2933  if ( find(laserWavelengths_.begin(), laserWavelengths_.end(), 3) != laserWavelengths_.end() ) {
2934  if ( meLaserL3_[1] ) val_ls_3 = meLaserL3_[1]->getBinContent(jx,jy);
2935  if(val_ls_3==2 || val_ls_3==3 || val_ls_3==4 || val_ls_3==5) val_ls_3=1;
2936  }
2937  if ( find(laserWavelengths_.begin(), laserWavelengths_.end(), 4) != laserWavelengths_.end() ) {
2938  if ( meLaserL4_[1] ) val_ls_4 = meLaserL4_[1]->getBinContent(jx,jy);
2939  if(val_ls_4==2 || val_ls_4==3 || val_ls_4==4 || val_ls_4==5) val_ls_4=1;
2940  }
2941 
2942  float val_ls = 1;
2943  if (val_ls_1 == 0 || val_ls_2==0 || val_ls_3==0 || val_ls_4==0) val_ls=0;
2944 
2945  // combine all the available wavelenghts in unique laser status
2946  // for each laser turn dark color and yellow into bright green
2947  float val_ld_1=2, val_ld_2=2;
2948  if ( find(ledWavelengths_.begin(), ledWavelengths_.end(), 1) != ledWavelengths_.end() ) {
2949  if ( meLedL1_[1] ) val_ld_1 = meLedL1_[1]->getBinContent(jx,jy);
2950  if(val_ld_1==2 || val_ld_1==3 || val_ld_1==4 || val_ld_1==5) val_ld_1=1;
2951  }
2952  if ( find(ledWavelengths_.begin(), ledWavelengths_.end(), 2) != ledWavelengths_.end() ) {
2953  if ( meLedL2_[1] ) val_ld_2 = meLedL2_[1]->getBinContent(jx,jy);
2954  if(val_ld_2==2 || val_ld_2==3 || val_ld_2==4 || val_ld_2==5) val_ld_2=1;
2955  }
2956 
2957  float val_ld = 1;
2958  if (val_ld_1 == 0 || val_ld_2==0) val_ld=0;
2959 
2960  // DO NOT CONSIDER CALIBRATION EVENTS IN THE REPORT SUMMARY FOR NOW
2961  val_ls = 1;
2962  val_ld = 1;
2963 
2964  // turn each dark color to bright green
2965  // for laser & timing & trigger turn also yellow into bright green
2966  // for pedestal online too because is not computed in calibration events
2967 
2968  // 0/3 = red/dark red
2969  // 1/4 = green/dark green
2970  // 2/5 = yellow/dark yellow
2971  // 6 = unknown
2972 
2973  if( val_in==3 || val_in==4 || val_in==5) val_in=1;
2974  if(val_po==2 || val_po==3 || val_po==4 || val_po==5) val_po=1;
2975  if(val_ls==2 || val_ls==3 || val_ls==4 || val_ls==5) val_ls=1;
2976  if(val_ld==2 || val_ld==3 || val_ld==4 || val_ld==5) val_ld=1;
2977  if(val_tm==2 || val_tm==3 || val_tm==4 || val_tm==5) val_tm=1;
2978  if( val_sf==3 || val_sf==4 || val_sf==5) val_sf=1;
2979  if(val_ee==2 || val_ee==3 || val_ee==4 || val_ee==5) val_ee=1;
2980 
2981  if(val_in==6) xval=6;
2982  else if(val_in==0) xval=0;
2983  else if(val_po==0 || val_ls==0 || val_ld==0 || val_tm==0 || val_sf==0 || val_ee==0) xval=0;
2984  else if(val_po==2 || val_ls==2 || val_ld==2 || val_tm==2 || val_sf==2 || val_ee==2) xval=2;
2985  else xval=1;
2986 
2987  bool validCry = false;
2988 
2989  // if the SM is entirely not read, the masked channels
2990  // are reverted back in yellow
2991  float iEntries=0;
2992 
2993  for(int ism = 10; ism <= 18; ism++) {
2994  std::vector<int>::iterator iter = find(superModules_.begin(), superModules_.end(), ism);
2995  if (iter != superModules_.end()) {
2996  if ( Numbers::validEE(ism, jx, jy) ) {
2997  validCry = true;
2998 
2999  // recycle the validEE for the synch check of the DCC
3000  if(norm01_ && synch01_) {
3001  float frac_synch_errors = 0.;
3002  float norm = norm01_->GetBinContent(ism);
3003  if(norm > 0) frac_synch_errors = float(synch01_->GetBinContent(ism))/float(norm);
3004  if(frac_synch_errors > synchErrorThreshold_){
3005  xval = 0.;
3006  if(oosTrend && oosTrend->GetBinContent(oosTrend->GetNbinsX()) - oosTrend->GetBinContent(1) < 1.) xval += 3.;
3007  }
3008  }
3009 
3010  for ( unsigned int i=0; i<clients_.size(); i++ ) {
3011  EEIntegrityClient* eeic = dynamic_cast<EEIntegrityClient*>(clients_[i]);
3012  if ( eeic ) {
3013  TH2F* h2 = eeic->h_[ism-1];
3014  if ( h2 ) {
3015  iEntries = h2->GetEntries();
3016  }
3017  }
3018  }
3019  }
3020  }
3021  }
3022 
3023  if ( validCry && iEntries==0 ) {
3024  xval=2;
3025  }
3026 
3027  meGlobalSummary_[1]->setBinContent( jx, jy, xval );
3028 
3029  if ( xval >= 0 && xval <= 5 ) {
3030  if ( xval != 2 && xval != 5 ) ++nValidChannels;
3031  for (int i = 10; i <= 18; i++) {
3032  if ( xval != 2 && xval != 5 ) {
3033  if ( Numbers::validEE(i, jx, jy) ) ++nValidChannelsEE[i-1];
3034  }
3035  }
3036  if ( xval == 0 ) ++nGlobalErrors;
3037  for (int i = 10; i <= 18; i++) {
3038  if ( xval == 0 ) {
3039  if ( Numbers::validEE(i, jx, jy) ) ++nGlobalErrorsEE[i-1];
3040  }
3041  }
3042  }
3043 
3044  }
3045 
3046  }
3047  }
3048 
3049  if(meSummaryErr_)
3050  meSummaryErr_->setBinContent(1, double(nGlobalErrors) / double(nValidChannels));
3051 
3052  float reportSummary = -1.0;
3053  if ( nValidChannels != 0 )
3054  reportSummary = 1.0 - float(nGlobalErrors)/float(nValidChannels);
3055  me = dqmStore_->get(prefixME_ + "/EventInfo/reportSummary");
3056  if ( me ) me->Fill(reportSummary);
3057 
3058  for (int i = 0; i < 18; i++) {
3059  float reportSummaryEE = -1.0;
3060  if ( nValidChannelsEE[i] != 0 )
3061  reportSummaryEE = 1.0 - float(nGlobalErrorsEE[i])/float(nValidChannelsEE[i]);
3062  me = dqmStore_->get( prefixME_ + "/EventInfo/reportSummaryContents/EcalEndcap_" + Numbers::sEE(i+1) );
3063  if ( me ) me->Fill(reportSummaryEE);
3064  }
3065 
3066  if(meGlobalSummary_[0] && meGlobalSummary_[1]){
3067 
3068  me = dqmStore_->get(prefixME_ + "/EventInfo/reportSummaryMap");
3069  if ( me ) {
3070 
3071  int nValidChannelsSC[2][20][20];
3072  int nGlobalErrorsSC[2][20][20];
3073  for ( int iside = 0; iside < 2; iside++ ) {
3074  for ( int jxdcc = 0; jxdcc < 20; jxdcc++ ) {
3075  for ( int jydcc = 0; jydcc < 20; jydcc++ ) {
3076  nValidChannelsSC[iside][jxdcc][jydcc] = 0;
3077  nGlobalErrorsSC[iside][jxdcc][jydcc] = 0;
3078  }
3079  }
3080  }
3081 
3082  for (int iside = 0; iside < 2; iside++ ) {
3083  for ( int ix = 1; ix <= 100; ix++ ) {
3084  for ( int iy = 1; iy <= 100; iy++ ) {
3085 
3086  int jxsc = (ix-1)/5;
3087  int jysc = (iy-1)/5;
3088 
3089  float xval = meGlobalSummary_[iside]->getBinContent( ix, iy );
3090 
3091  if ( xval >= 0 && xval <= 5 ) {
3092  if ( xval != 2 && xval != 5 ) ++nValidChannelsSC[iside][jxsc][jysc];
3093  if ( xval == 0 ) ++nGlobalErrorsSC[iside][jxsc][jysc];
3094  }
3095 
3096  }
3097  }
3098  }
3099 
3100  // Countermeasure to partial TR failure
3101  // make the whole Dee red if more than 2 towers within a 2x2 matrix fails
3102 
3103  for(int iside(0); iside < 2; iside++){
3104  for(int jy(1); jy < 20; jy++){
3105  for(int jx(1); jx < 20; jx++){
3106  if(jy > 6 && jy < 14 && jx > 6 && jx < 14) continue;
3107  int nErr(0);
3108  if(nValidChannelsSC[iside][jx - 1][jy - 1] > 0 && nGlobalErrorsSC[iside][jx - 1][jy - 1] == nValidChannelsSC[iside][jx - 1][jy - 1]) nErr += 1;
3109  if(nValidChannelsSC[iside][jx][jy - 1] > 0 && nGlobalErrorsSC[iside][jx][jy - 1] == nValidChannelsSC[iside][jx][jy - 1]) nErr += 1;
3110  if(nValidChannelsSC[iside][jx - 1][jy] > 0 && nGlobalErrorsSC[iside][jx - 1][jy] == nValidChannelsSC[iside][jx - 1][jy]) nErr += 1;
3111  if(nValidChannelsSC[iside][jx][jy] > 0 && nGlobalErrorsSC[iside][jx][jy] == nValidChannelsSC[iside][jx][jy]) nErr += 1;
3112  if(nErr > 2){
3113  int jx0(((jx - 1) / 10) * 10);
3114  for(int jjx(jx0); jjx < jx0 + 10; jjx++){
3115  for(int jjy(0); jjy < 20; jjy++){
3116  nGlobalErrorsSC[iside][jjx][jjy] = nValidChannelsSC[iside][jjx][jjy];
3117  }
3118  }
3119  }
3120  }
3121  }
3122  }
3123 
3124  for (int iside = 0; iside < 2; iside++ ) {
3125  for ( int jxsc = 0; jxsc < 20; jxsc++ ) {
3126  for ( int jysc = 0; jysc < 20; jysc++ ) {
3127 
3128  float scval = -1;
3129 
3130  if( nValidChannelsSC[iside][jxsc][jysc] != 0 )
3131  scval = 1.0 - float(nGlobalErrorsSC[iside][jxsc][jysc])/float(nValidChannelsSC[iside][jxsc][jysc]);
3132 
3133  me->setBinContent( jxsc+iside*20+1, jysc+1, scval );
3134 
3135  }
3136  }
3137  }
3138  }
3139 
3140 // for ( int jxdcc = 0; jxdcc < 20; jxdcc++ ) {
3141 // for ( int jydcc = 0; jydcc < 20; jydcc++ ) {
3142 // for ( int iside = 0; iside < 2; iside++ ) {
3143 
3144 // float xval = -1.0;
3145 // if ( nOutOfGeometryTT[iside][jxdcc][jydcc] < 25 ) {
3146 // if ( nValidChannelsTT[iside][jxdcc][jydcc] != 0 )
3147 // xval = 1.0 - float(nGlobalErrorsTT[iside][jxdcc][jydcc])/float(nValidChannelsTT[iside][jxdcc][jydcc]);
3148 // }
3149 
3150 // me->setBinContent( 20*iside+jxdcc+1, jydcc+1, xval );
3151 
3152 // }
3153 // }
3154 // }
3155 
3156  }
3157 
3158 }
static std::string sEE(const unsigned ism)
Definition: Numbers.cc:226
MonitorElement * meg09_[18]
Definition: EELedClient.h:110
int i
Definition: DBlmapReader.cc:9
MonitorElement * mea03_[18]
static bool validEE(const unsigned ism, const unsigned ix, const unsigned iy)
Definition: Numbers.cc:832
float synchErrorThreshold_
MonitorElement * met01_[18]
void setBinContent(int binx, double content)
set content of bin (1-D)
TProfile2D * httt01_[18]
static bool maskChannel(int ism, int i1, int i2, uint32_t bits, const EcalSubdetector subdet)
Definition: Masks.cc:60
MonitorElement * meLaserL4Ampl_
MonitorElement * meTestPulseG12_[2]
MonitorElement * meLaserL4Timing_
MonitorElement * meg04_[18]
static unsigned icEE(const unsigned ism, const unsigned ix, const unsigned iy)
Definition: Numbers.cc:739
static const int PHYSICS_BAD_CHANNEL_WARNING
MonitorElement * meLaserL3Err_
MonitorElement * meTimingRMS_
static T getHisto(const MonitorElement *me, bool clone=false, T ret=0)
Returns the histogram contained by the Monitor Element.
Definition: UtilsClient.h:91
std::vector< int > superModules_
MonitorElement * meTestPulsePNG01_
MonitorElement * mePedestalOnlineErr_
MonitorElement * me_o01_[18]
TProfile2D * hpot01_[18]
MonitorElement * meTiming_[2]
MonitorElement * meg05_[18]
MonitorElement * meLaserL1Ampl_
MonitorElement * met02_[18]
Definition: EELedClient.h:117
MonitorElement * meLedL1AmplOverPN_
MonitorElement * mePedestalOnlineRMSMap_[2]
TProfile2D * htmt01_[18]
MonitorElement * meLedL1_[2]
static bool validEESc(const unsigned ism, const unsigned ix, const unsigned iy)
Definition: Numbers.cc:855
MonitorElement * mePedestalPNG16_
MonitorElement * meLaserL3AmplOverPN_
MonitorElement * meLaserL3Timing_
MonitorElement * meTestPulseAmplG01_
MonitorElement * meTestPulseAmplG06_
MonitorElement * meg04_[18]
MonitorElement * mePedestalG01_[2]
MonitorElement * meLaserL4_[2]
MonitorElement * meTestPulseG01_[2]
MonitorElement * meLedL1Err_
MonitorElement * met02_[18]
#define abs(x)
Definition: mlp_lapack.h:159
MonitorElement * meLaserL4AmplOverPN_
MonitorElement * meg01_[18]
MonitorElement * meg10_[18]
Definition: EELedClient.h:111
MonitorElement * meg11_[18]
MonitorElement * meg03_[18]
MonitorElement * meLaserL3PNErr_
MonitorElement * meOccupancy_[2]
MonitorElement * meLaserL2AmplOverPN_
MonitorElement * met01_[18]
Definition: EELedClient.h:116
MonitorElement * mePedestalG12_[2]
static int ix0EE(const unsigned ism)
Definition: Numbers.cc:773
MonitorElement * mea01_[18]
MonitorElement * meTriggerTowerEmulError_[2]
MonitorElement * meSummaryErr_
MonitorElement * meLaserL2_[2]
MonitorElement * met04_[18]
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
MonitorElement * meLedL2PN_
MonitorElement * meIntegrityPN_
MonitorElement * meg12_[18]
static void maskBinContent(const MonitorElement *me, const int ix, const int iy)
Mask the bin content.
Definition: UtilsClient.cc:231
MonitorElement * meg09_[18]
MonitorElement * meIntegrity_[2]
MonitorElement * meaopn02_[18]
Definition: EELedClient.h:126
MonitorElement * meh01_[18]
static int iy0EE(const unsigned ism)
Definition: Numbers.cc:812
MonitorElement * meg01_[18]
MonitorElement * meg05_[18]
MonitorElement * meLaserL4PN_
void Fill(long long x)
MonitorElement * meRecHitEnergy_[2]
MonitorElement * meg02_[18]
MonitorElement * mea04_[18]
MonitorElement * meLaserL3_[2]
MonitorElement * meaopn01_[18]
MonitorElement * meTimingRMS1D_[2]
MonitorElement * mePedestalOnline_[2]
MonitorElement * meStatusFlags_[2]
MonitorElement * meg03_[18]
MonitorElement * meLaserL4Err_
MonitorElement * meaopn03_[18]
MonitorElement * meLedL2PNErr_
MonitorElement * meTriggerTowerTiming_[2]
MonitorElement * meLaserL1PNErr_
MonitorElement * meg04_[18]
MonitorElement * meLaserL1Timing_
int j
Definition: DBlmapReader.cc:9
MonitorElement * meLaserL3PN_
MonitorElement * meg03_[18]
MonitorElement * meaopn04_[18]
MonitorElement * meLedL1Ampl_
MonitorElement * mea02_[18]
MonitorElement * meLaserL1_[2]
MonitorElement * meTimingMean_
void setEntries(double nentries)
set # of entries
MonitorElement * get(const std::string &path) const
get ME from full pathname (e.g. &quot;my/long/dir/my_histo&quot;)
Definition: DQMStore.cc:1473
MonitorElement * meTriggerTowerNonSingleTiming_[2]
std::string subfolder_
MonitorElement * meg02_[18]
MonitorElement * mea03_[18]
MonitorElement * meg03_[18]
MonitorElement * meaopn01_[18]
Definition: EELedClient.h:125
MonitorElement * meLedL2Timing_
std::string prefixME_
MonitorElement * meLedL1PN_
MonitorElement * mea01_[18]
MonitorElement * meLaserL4PNErr_
std::vector< EEClient * > clients_
MonitorElement * me_o02_[18]
MonitorElement * meTimingMean1D_[2]
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
std::vector< int > laserWavelengths_
MonitorElement * mea02_[18]
MonitorElement * meg01_[18]
Definition: EELedClient.h:104
MonitorElement * meTestPulsePNG16_
MonitorElement * meLedL1Timing_
MonitorElement * mePedestalPNG01_
MonitorElement * meg02_[18]
MonitorElement * meLedL1PNErr_
MonitorElement * meStatusFlagsErr_
MonitorElement * meTriggerTowerEt_[2]
long long int num
Definition: procUtils.cc:71
MonitorElement * meg02_[18]
MonitorElement * mePedestalG06_[2]
MonitorElement * meOccupancyPN_
MonitorElement * mea02_[18]
Definition: EELedClient.h:114
MonitorElement * meLedL2AmplOverPN_
MonitorElement * mePedestalOnlineRMS_
MonitorElement * meg10_[18]
MonitorElement * meLaserL2Timing_
MonitorElement * meLaserL2Err_
double getBinContent(int binx) const
get content of bin (1-D)
MonitorElement * meLaserL2Ampl_
MonitorElement * meLaserL1AmplOverPN_
MonitorElement * meLaserL2PN_
std::vector< int > ledWavelengths_
TProfile2D * hot01_[18]
tuple cout
Definition: gather_cfg.py:121
MonitorElement * meLedL2Err_
MonitorElement * meTestPulseG06_[2]
MonitorElement * meLaserL3Ampl_
MonitorElement * met03_[18]
MonitorElement * meg01_[18]
MonitorElement * meLaserL1PN_
MonitorElement * meaopn02_[18]
MonitorElement * meLedL2Ampl_
MonitorElement * meGlobalSummary_[2]
MonitorElement * mePedestalOnlineMean_
int ism(int ieta, int iphi)
Definition: EcalPyUtils.cc:56
void Reset(void)
reset ME (ie. contents, errors, etc)
MonitorElement * meOccupancy1D_
DQMStore * dqmStore_
MonitorElement * meg02_[18]
Definition: EELedClient.h:105
MonitorElement * meLedL2_[2]
MonitorElement * meTestPulseAmplG12_
MonitorElement * meLaserL2PNErr_
MonitorElement * meLaserL1Err_
MonitorElement * meIntegrityErr_
MonitorElement * mea01_[18]
Definition: EELedClient.h:113
MonitorElement * meg01_[18]
void EESummaryClient::beginJob ( void  )
virtual

BeginJob.

Implements EEClient.

Definition at line 233 of file EESummaryClient.cc.

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

Referenced by EcalEndcapMonitorClient::beginJob().

233  {
234 
236 
237  if ( debug_ ) std::cout << "EESummaryClient: beginJob" << std::endl;
238 
239  ievt_ = 0;
240  jevt_ = 0;
241 
242 }
tuple cout
Definition: gather_cfg.py:121
DQMStore * dqmStore_
void EESummaryClient::beginRun ( void  )
virtual

BeginRun.

Implements EEClient.

Definition at line 244 of file EESummaryClient.cc.

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

Referenced by EcalEndcapMonitorClient::beginRun().

244  {
245 
246  if ( debug_ ) std::cout << "EESummaryClient: beginRun" << std::endl;
247 
248  jevt_ = 0;
249 
250  this->setup();
251 
252 }
void setup(void)
Setup.
tuple cout
Definition: gather_cfg.py:121
void EESummaryClient::cleanup ( void  )
virtual

Cleanup.

Implements EEClient.

Definition at line 1122 of file EESummaryClient.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_, meLedL1_, meLedL1Ampl_, meLedL1AmplOverPN_, meLedL1Err_, meLedL1PN_, meLedL1PNErr_, meLedL1Timing_, meLedL2_, meLedL2Ampl_, meLedL2AmplOverPN_, meLedL2Err_, meLedL2PN_, meLedL2PNErr_, meLedL2Timing_, 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_, meTimingRMS1D_, meTriggerTowerEmulError_, meTriggerTowerEt_, meTriggerTowerNonSingleTiming_, meTriggerTowerTiming_, prefixME_, DQMStore::removeElement(), DQMStore::setCurrentFolder(), and superModules_.

Referenced by endJob(), and endRun().

1122  {
1123 
1124  if ( ! enableCleanup_ ) return;
1125 
1126  dqmStore_->setCurrentFolder( prefixME_ + "/EESummaryClient" );
1127 
1128  for ( unsigned int i=0; i<superModules_.size(); i++ ) {
1129 
1130  int ism = superModules_[i];
1131 
1132  if ( cloneME_ ) {
1133  if ( hpot01_[ism-1] ) delete hpot01_[ism-1];
1134  if ( httt01_[ism-1] ) delete httt01_[ism-1];
1135  }
1136 
1137  hpot01_[ism-1] = 0;
1138  httt01_[ism-1] = 0;
1139 
1140  }
1141 
1142  if ( meIntegrity_[0] ) dqmStore_->removeElement( meIntegrity_[0]->getName() );
1143  meIntegrity_[0] = 0;
1144 
1145  if ( meIntegrity_[1] ) dqmStore_->removeElement( meIntegrity_[1]->getName() );
1146  meIntegrity_[1] = 0;
1147 
1149  meIntegrityErr_ = 0;
1150 
1152  meIntegrityPN_ = 0;
1153 
1154  if ( meOccupancy_[0] ) dqmStore_->removeElement( meOccupancy_[0]->getName() );
1155  meOccupancy_[0] = 0;
1156 
1157  if ( meOccupancy_[1] ) dqmStore_->removeElement( meOccupancy_[1]->getName() );
1158  meOccupancy_[1] = 0;
1159 
1161  meOccupancy1D_ = 0;
1162 
1164  meOccupancyPN_ = 0;
1165 
1166  if ( meStatusFlags_[0] ) dqmStore_->removeElement( meStatusFlags_[0]->getName() );
1167  meStatusFlags_[0] = 0;
1168 
1169  if ( meStatusFlags_[1] ) dqmStore_->removeElement( meStatusFlags_[1]->getName() );
1170  meStatusFlags_[1] = 0;
1171 
1173  meStatusFlagsErr_ = 0;
1174 
1175  if ( mePedestalOnline_[0] ) dqmStore_->removeElement( mePedestalOnline_[0]->getName() );
1176  mePedestalOnline_[0] = 0;
1177 
1178  if ( mePedestalOnline_[1] ) dqmStore_->removeElement( mePedestalOnline_[1]->getName() );
1179  mePedestalOnline_[1] = 0;
1180 
1183 
1186 
1189 
1191  mePedestalOnlineRMSMap_[0] = 0;
1192 
1194  mePedestalOnlineRMSMap_[1] = 0;
1195 
1196  if ( meLaserL1_[0] ) dqmStore_->removeElement( meLaserL1_[0]->getName() );
1197  meLaserL1_[0] = 0;
1198 
1199  if ( meLaserL1_[1] ) dqmStore_->removeElement( meLaserL1_[1]->getName() );
1200  meLaserL1_[1] = 0;
1201 
1203  meLaserL1Err_ = 0;
1204 
1206  meLaserL1PN_ = 0;
1207 
1209  meLaserL1PNErr_ = 0;
1210 
1212  meLaserL1Ampl_ = 0;
1213 
1215  meLaserL1Timing_ = 0;
1216 
1219 
1220  if ( meLaserL2_[0] ) dqmStore_->removeElement( meLaserL2_[0]->getName() );
1221  meLaserL2_[0] = 0;
1222 
1223  if ( meLaserL2_[1] ) dqmStore_->removeElement( meLaserL2_[1]->getName() );
1224  meLaserL2_[1] = 0;
1225 
1227  meLaserL2Err_ = 0;
1228 
1230  meLaserL2PN_ = 0;
1231 
1233  meLaserL2PNErr_ = 0;
1234 
1236  meLaserL2Ampl_ = 0;
1237 
1239  meLaserL2Timing_ = 0;
1240 
1243 
1244  if ( meLaserL3_[0] ) dqmStore_->removeElement( meLaserL3_[0]->getName() );
1245  meLaserL3_[0] = 0;
1246 
1247  if ( meLaserL3_[1] ) dqmStore_->removeElement( meLaserL3_[1]->getName() );
1248  meLaserL3_[1] = 0;
1249 
1251  meLaserL3Err_ = 0;
1252 
1254  meLaserL3PN_ = 0;
1255 
1257  meLaserL3PNErr_ = 0;
1258 
1260  meLaserL3Ampl_ = 0;
1261 
1263  meLaserL3Timing_ = 0;
1264 
1267 
1268  if ( meLaserL4_[0] ) dqmStore_->removeElement( meLaserL4_[0]->getName() );
1269  meLaserL4_[0] = 0;
1270 
1271  if ( meLaserL4_[1] ) dqmStore_->removeElement( meLaserL4_[1]->getName() );
1272  meLaserL4_[1] = 0;
1273 
1275  meLaserL4Err_ = 0;
1276 
1278  meLaserL4PN_ = 0;
1279 
1281  meLaserL4PNErr_ = 0;
1282 
1284  meLaserL4Ampl_ = 0;
1285 
1287  meLaserL4Timing_ = 0;
1288 
1291 
1292  if ( meLedL1_[0] ) dqmStore_->removeElement( meLedL1_[0]->getName() );
1293  meLedL1_[0] = 0;
1294 
1295  if ( meLedL1_[1] ) dqmStore_->removeElement( meLedL1_[1]->getName() );
1296  meLedL1_[1] = 0;
1297 
1299  meLedL1Err_ = 0;
1300 
1302  meLedL1PN_ = 0;
1303 
1305  meLedL1PNErr_ = 0;
1306 
1308  meLedL1Ampl_ = 0;
1309 
1311  meLedL1Timing_ = 0;
1312 
1314  meLedL1AmplOverPN_ = 0;
1315 
1316  if ( meLedL2_[0] ) dqmStore_->removeElement( meLedL2_[0]->getName() );
1317  meLedL2_[0] = 0;
1318 
1319  if ( meLedL2_[1] ) dqmStore_->removeElement( meLedL2_[1]->getName() );
1320  meLedL2_[1] = 0;
1321 
1323  meLedL2Err_ = 0;
1324 
1326  meLedL2PN_ = 0;
1327 
1329  meLedL2PNErr_ = 0;
1330 
1332  meLedL2Ampl_ = 0;
1333 
1335  meLedL2Timing_ = 0;
1336 
1338  meLedL2AmplOverPN_ = 0;
1339 
1340  if ( mePedestalG01_[0] ) dqmStore_->removeElement( mePedestalG01_[0]->getName() );
1341  mePedestalG01_[0] = 0;
1342 
1343  if ( mePedestalG01_[1] ) dqmStore_->removeElement( mePedestalG01_[1]->getName() );
1344  mePedestalG01_[1] = 0;
1345 
1346  if ( mePedestalG06_[0] ) dqmStore_->removeElement( mePedestalG06_[0]->getName() );
1347  mePedestalG06_[0] = 0;
1348 
1349  if ( mePedestalG06_[1] ) dqmStore_->removeElement( mePedestalG06_[1]->getName() );
1350  mePedestalG06_[1] = 0;
1351 
1352  if ( mePedestalG12_[0] ) dqmStore_->removeElement( mePedestalG12_[0]->getName() );
1353  mePedestalG12_[0] = 0;
1354 
1355  if ( mePedestalG12_[1] ) dqmStore_->removeElement( mePedestalG12_[1]->getName() );
1356  mePedestalG12_[1] = 0;
1357 
1359  mePedestalPNG01_ = 0;
1360 
1362  mePedestalPNG16_ = 0;
1363 
1364  if ( meTestPulseG01_[0] ) dqmStore_->removeElement( meTestPulseG01_[0]->getName() );
1365  meTestPulseG01_[0] = 0;
1366 
1367  if ( meTestPulseG01_[1] ) dqmStore_->removeElement( meTestPulseG01_[1]->getName() );
1368  meTestPulseG01_[1] = 0;
1369 
1370  if ( meTestPulseG06_[0] ) dqmStore_->removeElement( meTestPulseG06_[0]->getName() );
1371  meTestPulseG06_[0] = 0;
1372 
1373  if ( meTestPulseG06_[1] ) dqmStore_->removeElement( meTestPulseG06_[1]->getName() );
1374  meTestPulseG06_[1] = 0;
1375 
1376  if ( meTestPulseG12_[0] ) dqmStore_->removeElement( meTestPulseG12_[0]->getName() );
1377  meTestPulseG12_[0] = 0;
1378 
1379  if ( meTestPulseG12_[1] ) dqmStore_->removeElement( meTestPulseG12_[1]->getName() );
1380  meTestPulseG12_[1] = 0;
1381 
1383  meTestPulsePNG01_ = 0;
1384 
1386  meTestPulsePNG16_ = 0;
1387 
1389  meTestPulseAmplG01_ = 0;
1390 
1392  meTestPulseAmplG06_ = 0;
1393 
1395  meTestPulseAmplG12_ = 0;
1396 
1397  if ( meRecHitEnergy_[0] ) dqmStore_->removeElement( meRecHitEnergy_[0]->getName() );
1398  meRecHitEnergy_[0] = 0;
1399 
1400  if ( meRecHitEnergy_[1] ) dqmStore_->removeElement( meRecHitEnergy_[1]->getName() );
1401  meRecHitEnergy_[1] = 0;
1402 
1403  if ( meTiming_[0] ) dqmStore_->removeElement( meTiming_[0]->getName() );
1404  meTiming_[0] = 0;
1405 
1406  if ( meTiming_[1] ) dqmStore_->removeElement( meTiming_[1]->getName() );
1407  meTiming_[1] = 0;
1408 
1409  if ( meTimingMean1D_[0] ) dqmStore_->removeElement( meTimingMean1D_[0]->getName() );
1410  meTimingMean1D_[0] = 0;
1411 
1412  if ( meTimingMean1D_[1] ) dqmStore_->removeElement( meTimingMean1D_[1]->getName() );
1413  meTimingMean1D_[1] = 0;
1414 
1415  if ( meTimingRMS1D_[0] ) dqmStore_->removeElement( meTimingRMS1D_[0]->getName() );
1416  meTimingRMS1D_[0] = 0;
1417 
1418  if ( meTimingRMS1D_[1] ) dqmStore_->removeElement( meTimingRMS1D_[1]->getName() );
1419  meTimingRMS1D_[1] = 0;
1420 
1421  if ( meTriggerTowerEt_[0] ) dqmStore_->removeElement( meTriggerTowerEt_[0]->getName() );
1422  meTriggerTowerEt_[0] = 0;
1423 
1424  if ( meTriggerTowerEt_[1] ) dqmStore_->removeElement( meTriggerTowerEt_[1]->getName() );
1425  meTriggerTowerEt_[1] = 0;
1426 
1428  meTriggerTowerEmulError_[0] = 0;
1429 
1431  meTriggerTowerEmulError_[1] = 0;
1432 
1434  meTriggerTowerTiming_[0] = 0;
1435 
1437  meTriggerTowerTiming_[1] = 0;
1438 
1441 
1444 
1445  if ( meGlobalSummary_[0] ) dqmStore_->removeElement( meGlobalSummary_[0]->getName() );
1446  meGlobalSummary_[0] = 0;
1447 
1448  if ( meGlobalSummary_[1] ) dqmStore_->removeElement( meGlobalSummary_[1]->getName() );
1449  meGlobalSummary_[1] = 0;
1450 
1452  meSummaryErr_ = 0;
1453 
1454 }
const std::string & getName(void) const
get name of ME
int i
Definition: DBlmapReader.cc:9
TProfile2D * httt01_[18]
MonitorElement * meLaserL4Ampl_
MonitorElement * meTestPulseG12_[2]
MonitorElement * meLaserL4Timing_
MonitorElement * meLaserL3Err_
std::vector< int > superModules_
MonitorElement * meTestPulsePNG01_
MonitorElement * mePedestalOnlineErr_
TProfile2D * hpot01_[18]
MonitorElement * meTiming_[2]
MonitorElement * meLaserL1Ampl_
MonitorElement * meLedL1AmplOverPN_
MonitorElement * mePedestalOnlineRMSMap_[2]
MonitorElement * meLedL1_[2]
MonitorElement * mePedestalPNG16_
MonitorElement * meLaserL3AmplOverPN_
MonitorElement * meLaserL3Timing_
MonitorElement * meTestPulseAmplG01_
MonitorElement * meTestPulseAmplG06_
MonitorElement * mePedestalG01_[2]
MonitorElement * meLaserL4_[2]
MonitorElement * meTestPulseG01_[2]
MonitorElement * meLedL1Err_
MonitorElement * meLaserL4AmplOverPN_
MonitorElement * meLaserL3PNErr_
MonitorElement * meOccupancy_[2]
MonitorElement * meLaserL2AmplOverPN_
MonitorElement * mePedestalG12_[2]
MonitorElement * meTriggerTowerEmulError_[2]
MonitorElement * meSummaryErr_
MonitorElement * meLaserL2_[2]
MonitorElement * meLedL2PN_
MonitorElement * meIntegrityPN_
MonitorElement * meIntegrity_[2]
MonitorElement * meLaserL4PN_
MonitorElement * meRecHitEnergy_[2]
MonitorElement * meLaserL3_[2]
MonitorElement * meTimingRMS1D_[2]
MonitorElement * mePedestalOnline_[2]
MonitorElement * meStatusFlags_[2]
MonitorElement * meLaserL4Err_
MonitorElement * meLedL2PNErr_
MonitorElement * meTriggerTowerTiming_[2]
MonitorElement * meLaserL1PNErr_
void removeElement(const std::string &name)
Definition: DQMStore.cc:2577
MonitorElement * meLaserL1Timing_
MonitorElement * meLaserL3PN_
MonitorElement * meLedL1Ampl_
MonitorElement * meLaserL1_[2]
MonitorElement * meTriggerTowerNonSingleTiming_[2]
MonitorElement * meLedL2Timing_
std::string prefixME_
MonitorElement * meLedL1PN_
MonitorElement * meLaserL4PNErr_
MonitorElement * meTimingMean1D_[2]
MonitorElement * meTestPulsePNG16_
MonitorElement * meLedL1Timing_
MonitorElement * mePedestalPNG01_
MonitorElement * meLedL1PNErr_
MonitorElement * meStatusFlagsErr_
MonitorElement * meTriggerTowerEt_[2]
MonitorElement * mePedestalG06_[2]
MonitorElement * meOccupancyPN_
MonitorElement * meLedL2AmplOverPN_
MonitorElement * mePedestalOnlineRMS_
MonitorElement * meLaserL2Timing_
MonitorElement * meLaserL2Err_
MonitorElement * meLaserL2Ampl_
MonitorElement * meLaserL1AmplOverPN_
MonitorElement * meLaserL2PN_
MonitorElement * meLedL2Err_
MonitorElement * meTestPulseG06_[2]
MonitorElement * meLaserL3Ampl_
MonitorElement * meLaserL1PN_
MonitorElement * meLedL2Ampl_
MonitorElement * meGlobalSummary_[2]
MonitorElement * mePedestalOnlineMean_
int ism(int ieta, int iphi)
Definition: EcalPyUtils.cc:56
MonitorElement * meOccupancy1D_
DQMStore * dqmStore_
MonitorElement * meLedL2_[2]
void setCurrentFolder(const std::string &fullpath)
Definition: DQMStore.cc:434
MonitorElement * meTestPulseAmplG12_
MonitorElement * meLaserL2PNErr_
MonitorElement * meLaserL1Err_
MonitorElement * meIntegrityErr_
void EESummaryClient::endJob ( void  )
virtual

EndJob.

Implements EEClient.

Definition at line 254 of file EESummaryClient.cc.

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

Referenced by EcalEndcapMonitorClient::endJob().

254  {
255 
256  if ( debug_ ) std::cout << "EESummaryClient: endJob, ievt = " << ievt_ << std::endl;
257 
258  this->cleanup();
259 
260 }
void cleanup(void)
Cleanup.
tuple cout
Definition: gather_cfg.py:121
void EESummaryClient::endRun ( void  )
virtual

EndRun.

Implements EEClient.

Definition at line 262 of file EESummaryClient.cc.

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

Referenced by EcalEndcapMonitorClient::endRun().

262  {
263 
264  if ( debug_ ) std::cout << "EESummaryClient: endRun, jevt = " << jevt_ << std::endl;
265 
266  this->cleanup();
267 
268 }
void cleanup(void)
Cleanup.
tuple cout
Definition: gather_cfg.py:121
int EESummaryClient::getEvtPerJob ( void  )
inlinevirtual

Get Functions.

Implements EEClient.

Definition at line 68 of file EESummaryClient.h.

References ievt_.

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

Returns the number of processed events in this Run.

Implements EEClient.

Definition at line 69 of file EESummaryClient.h.

References jevt_.

69 { return jevt_; }
void EESummaryClient::setFriends ( const std::vector< EEClient * > &  clients)
inline

Set Clients.

Definition at line 72 of file EESummaryClient.h.

References clients_.

Referenced by EcalEndcapMonitorClient::EcalEndcapMonitorClient().

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

Setup.

Implements EEClient.

Definition at line 270 of file EESummaryClient.cc.

References DQMStore::book1D(), DQMStore::book2D(), DQMStore::bookProfile(), clients_, dqmStore_, spr::find(), MonitorElement::getName(), i, IntegrityClient_cfi::integrityClient, LaserClient_cfi::laserClient, laserWavelengths_, ledWavelengths_, 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_, meLedL1_, meLedL1Ampl_, meLedL1AmplOverPN_, meLedL1Err_, meLedL1PN_, meLedL1PNErr_, meLedL1Timing_, meLedL2_, meLedL2Ampl_, meLedL2AmplOverPN_, meLedL2Err_, meLedL2PN_, meLedL2PNErr_, meLedL2Timing_, 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::sEE(), MonitorElement::setAxisTitle(), MonitorElement::setBinLabel(), DQMStore::setCurrentFolder(), AlCaHLTBitMon_QueryRunRegistry::string, and TimingClient_cfi::timingClient.

Referenced by beginRun().

270  {
271 
272  bool integrityClient(false);
273  bool occupancyClient(false);
274  bool statusFlagsClient(false);
275  bool pedestalOnlineClient(false);
276  bool laserClient(false);
277  bool ledClient(false);
278  bool pedestalClient(false);
279  bool testPulseClient(false);
280  bool timingClient(false);
281  bool triggerTowerClient(false);
282 
283  for(unsigned i = 0; i < clients_.size(); i++){
284 
285  if(dynamic_cast<EEIntegrityClient*>(clients_[i])) integrityClient = true;
286  if(dynamic_cast<EEOccupancyClient*>(clients_[i])) occupancyClient = true;
287  if(dynamic_cast<EEStatusFlagsClient*>(clients_[i])) statusFlagsClient = true;
288  if(dynamic_cast<EEPedestalOnlineClient*>(clients_[i])) pedestalOnlineClient = true;
289  if(dynamic_cast<EELaserClient*>(clients_[i])) laserClient = true;
290  if(dynamic_cast<EELedClient*>(clients_[i])) ledClient = true;
291  if(dynamic_cast<EEPedestalClient*>(clients_[i])) pedestalClient = true;
292  if(dynamic_cast<EETestPulseClient*>(clients_[i])) testPulseClient = true;
293  if(dynamic_cast<EETimingClient*>(clients_[i])) timingClient = true;
294  if(dynamic_cast<EETriggerTowerClient*>(clients_[i])) triggerTowerClient = true;
295 
296  }
297 
299 
300  dqmStore_->setCurrentFolder( prefixME_ + "/EESummaryClient" );
301 
302  if(integrityClient){
303  if(produceReports_){
304  if ( meIntegrity_[0] ) dqmStore_->removeElement( meIntegrity_[0]->getName() );
305  name = "EEIT EE - integrity quality summary";
306  meIntegrity_[0] = dqmStore_->book2D(name, name, 100, 0., 100., 100, 0., 100.);
307  meIntegrity_[0]->setAxisTitle("ix", 1);
308  meIntegrity_[0]->setAxisTitle("iy", 2);
309 
310  if ( meIntegrity_[1] ) dqmStore_->removeElement( meIntegrity_[1]->getName() );
311  name = "EEIT EE + integrity quality summary";
312  meIntegrity_[1] = dqmStore_->book2D(name, name, 100, 0., 100., 100, 0., 100.);
313  meIntegrity_[1]->setAxisTitle("ix", 1);
314  meIntegrity_[1]->setAxisTitle("iy", 2);
315 
317  name = "EEIT integrity quality errors summary";
318  meIntegrityErr_ = dqmStore_->book1D(name, name, 18, 1, 19);
319  for (int i = 0; i < 18; i++) {
321  }
322  }
323  if(laserClient){
325  name = "EEIT PN integrity quality summary";
326  meIntegrityPN_ = dqmStore_->book2D(name, name, 45, 0., 45., 20, -10., 10.);
327  meIntegrityPN_->setAxisTitle("jchannel", 1);
328  meIntegrityPN_->setAxisTitle("jpseudo-strip", 2);
329  }
330  }
331 
332  if(occupancyClient){
333  if(produceReports_){
334  if ( meOccupancy_[0] ) dqmStore_->removeElement( meOccupancy_[0]->getName() );
335  name = "EEOT EE - digi occupancy summary";
336  meOccupancy_[0] = dqmStore_->book2D(name, name, 100, 0., 100., 100, 0., 100.);
337  meOccupancy_[0]->setAxisTitle("ix", 1);
338  meOccupancy_[0]->setAxisTitle("iy", 2);
339 
340  if ( meOccupancy_[1] ) dqmStore_->removeElement( meOccupancy_[1]->getName() );
341  name = "EEOT EE + digi occupancy summary";
342  meOccupancy_[1] = dqmStore_->book2D(name, name, 100, 0., 100., 100, 0., 100.);
343  meOccupancy_[1]->setAxisTitle("ix", 1);
344  meOccupancy_[1]->setAxisTitle("iy", 2);
345 
347  name = "EEIT digi occupancy summary 1D";
348  meOccupancy1D_ = dqmStore_->book1D(name, name, 18, 1, 19);
349  for (int i = 0; i < 18; i++) {
350  meOccupancy1D_->setBinLabel(i+1, Numbers::sEE(i+1), 1);
351  }
352 
353  if( meRecHitEnergy_[0] ) dqmStore_->removeElement( meRecHitEnergy_[0]->getName() );
354  name = "EEOT EE - energy summary";
355  meRecHitEnergy_[0] = dqmStore_->book2D(name, name, 100, 0., 100., 100, 0., 100.);
356  meRecHitEnergy_[0]->setAxisTitle("ix", 1);
357  meRecHitEnergy_[0]->setAxisTitle("iy", 2);
358  meRecHitEnergy_[0]->setAxisTitle("energy (GeV)", 3);
359 
360  if( meRecHitEnergy_[1] ) dqmStore_->removeElement( meRecHitEnergy_[1]->getName() );
361  name = "EEOT EE + energy summary";
362  meRecHitEnergy_[1] = dqmStore_->book2D(name, name, 100, 0., 100., 100, 0., 100.);
363  meRecHitEnergy_[1]->setAxisTitle("ix", 1);
364  meRecHitEnergy_[1]->setAxisTitle("iy", 2);
365  meRecHitEnergy_[1]->setAxisTitle("energy (GeV)", 3);
366  }
367  if(laserClient){
369  name = "EEOT PN digi occupancy summary";
370  meOccupancyPN_ = dqmStore_->book2D(name, name, 45, 0., 45., 20, -10., 10.);
371  meOccupancyPN_->setAxisTitle("channel", 1);
372  meOccupancyPN_->setAxisTitle("pseudo-strip", 2);
373  }
374  }
375 
376  if(statusFlagsClient && produceReports_){
377  if ( meStatusFlags_[0] ) dqmStore_->removeElement( meStatusFlags_[0]->getName() );
378  name = "EESFT EE - front-end status summary";
379  meStatusFlags_[0] = dqmStore_->book2D(name, name, 100, 0., 100., 100, 0., 100.);
380  meStatusFlags_[0]->setAxisTitle("ix", 1);
381  meStatusFlags_[0]->setAxisTitle("iy", 2);
382 
383  if ( meStatusFlags_[1] ) dqmStore_->removeElement( meStatusFlags_[1]->getName() );
384  name = "EESFT EE + front-end status summary";
385  meStatusFlags_[1] = dqmStore_->book2D(name, name, 100, 0., 100., 100, 0., 100.);
386  meStatusFlags_[1]->setAxisTitle("ix", 1);
387  meStatusFlags_[1]->setAxisTitle("iy", 2);
388 
390  name = "EESFT front-end status errors summary";
391  meStatusFlagsErr_ = dqmStore_->book1D(name, name, 18, 1, 19);
392  for (int i = 0; i < 18; i++) {
394  }
395  }
396 
397  if(pedestalOnlineClient && produceReports_){
398  if ( mePedestalOnline_[0] ) dqmStore_->removeElement( mePedestalOnline_[0]->getName() );
399  name = "EEPOT EE - pedestal quality summary G12";
400  mePedestalOnline_[0] = dqmStore_->book2D(name, name, 100, 0., 100., 100, 0., 100.);
401  mePedestalOnline_[0]->setAxisTitle("ix", 1);
402  mePedestalOnline_[0]->setAxisTitle("iy", 2);
403 
404  if ( mePedestalOnline_[1] ) dqmStore_->removeElement( mePedestalOnline_[1]->getName() );
405  name = "EEPOT EE + pedestal quality summary G12";
406  mePedestalOnline_[1] = dqmStore_->book2D(name, name, 100, 0., 100., 100, 0., 100.);
407  mePedestalOnline_[1]->setAxisTitle("ix", 1);
408  mePedestalOnline_[1]->setAxisTitle("iy", 2);
409 
411  name = "EEPOT EE - pedestal G12 RMS map";
412  mePedestalOnlineRMSMap_[0] = dqmStore_->book2D(name, name, 100, 0., 100., 100, 0., 100.);
416 
418  name = "EEPOT EE + pedestal G12 RMS map";
419  mePedestalOnlineRMSMap_[1] = dqmStore_->book2D(name, name, 100, 0., 100., 100, 0., 100.);
423 
425  name = "EEPOT pedestal G12 mean";
426  mePedestalOnlineMean_ = dqmStore_->bookProfile(name, name, 18, 1, 19, 100, 150., 250.);
427  for (int i = 0; i < 18; i++) {
429  }
430 
432  name = "EEPOT pedestal G12 rms";
433  mePedestalOnlineRMS_ = dqmStore_->bookProfile(name, name, 18, 1, 19, 100, 0., 10.);
434  for (int i = 0; i < 18; i++) {
436  }
437 
439  name = "EEPOT pedestal quality errors summary G12";
440  mePedestalOnlineErr_ = dqmStore_->book1D(name, name, 18, 1, 19);
441  for (int i = 0; i < 18; i++) {
443  }
444  }
445 
446  if(laserClient){
447  if ( find(laserWavelengths_.begin(), laserWavelengths_.end(), 1) != laserWavelengths_.end() ) {
448 
449  if ( meLaserL1_[0] ) dqmStore_->removeElement( meLaserL1_[0]->getName() );
450  name = "EELT EE - laser quality summary L1";
451  meLaserL1_[0] = dqmStore_->book2D(name, name, 100, 0., 100., 100, 0., 100.);
452  meLaserL1_[0]->setAxisTitle("ix", 1);
453  meLaserL1_[0]->setAxisTitle("iy", 2);
454 
455  if ( meLaserL1_[1] ) dqmStore_->removeElement( meLaserL1_[1]->getName() );
456  name = "EELT EE + laser quality summary L1";
457  meLaserL1_[1] = dqmStore_->book2D(name, name, 100, 0., 100., 100, 0., 100.);
458  meLaserL1_[1]->setAxisTitle("ix", 1);
459  meLaserL1_[1]->setAxisTitle("iy", 2);
460 
462  name = "EELT laser quality errors summary L1";
463  meLaserL1Err_ = dqmStore_->book1D(name, name, 18, 1, 19);
464  for (int i = 0; i < 18; i++) {
465  meLaserL1Err_->setBinLabel(i+1, Numbers::sEE(i+1), 1);
466  }
467 
469  name = "EELT PN laser quality summary L1";
470  meLaserL1PN_ = dqmStore_->book2D(name, name, 45, 0., 45., 20, -10., 10.);
471  meLaserL1PN_->setAxisTitle("jchannel", 1);
472  meLaserL1PN_->setAxisTitle("jpseudo-strip", 2);
473 
475  name = "EELT PN laser quality errors summary L1";
476  meLaserL1PNErr_ = dqmStore_->book1D(name, name, 18, 1, 19);
477  for (int i = 0; i < 18; i++) {
479  }
480 
482  name = "EELT laser L1 amplitude summary";
483  meLaserL1Ampl_ = dqmStore_->bookProfile(name, name, 18, 1, 19, 4096, 0., 4096., "s");
484  for (int i = 0; i < 18; i++) {
485  meLaserL1Ampl_->setBinLabel(i+1, Numbers::sEE(i+1), 1);
486  }
487 
489  name = "EELT laser L1 timing summary";
490  meLaserL1Timing_ = dqmStore_->bookProfile(name, name, 18, 1, 19, 100, 0., 10., "s");
491  for (int i = 0; i < 18; i++) {
493  }
494 
496  name = "EELT laser L1 amplitude over PN summary";
497  meLaserL1AmplOverPN_ = dqmStore_->bookProfile(name, name, 18, 1, 19, 4096, 0., 4096.*12., "s");
498  for (int i = 0; i < 18; i++) {
500  }
501 
502  }
503 
504  if ( find(laserWavelengths_.begin(), laserWavelengths_.end(), 2) != laserWavelengths_.end() ) {
505 
506  if ( meLaserL2_[0] ) dqmStore_->removeElement( meLaserL2_[0]->getName() );
507  name = "EELT EE - laser quality summary L2";
508  meLaserL2_[0] = dqmStore_->book2D(name, name, 100, 0., 100., 100, 0., 100.);
509  meLaserL2_[0]->setAxisTitle("ix", 1);
510  meLaserL2_[0]->setAxisTitle("iy", 2);
511 
512  if ( meLaserL2_[1] ) dqmStore_->removeElement( meLaserL2_[1]->getName() );
513  name = "EELT EE + laser quality summary L2";
514  meLaserL2_[1] = dqmStore_->book2D(name, name, 100, 0., 100., 100, 0., 100.);
515  meLaserL2_[1]->setAxisTitle("ix", 1);
516  meLaserL2_[1]->setAxisTitle("iy", 2);
517 
519  name = "EELT laser quality errors summary L2";
520  meLaserL2Err_ = dqmStore_->book1D(name, name, 18, 1, 19);
521  for (int i = 0; i < 18; i++) {
522  meLaserL2Err_->setBinLabel(i+1, Numbers::sEE(i+1), 1);
523  }
524 
526  name = "EELT PN laser quality summary L2";
527  meLaserL2PN_ = dqmStore_->book2D(name, name, 45, 0., 45., 20, -10., 10.);
528  meLaserL2PN_->setAxisTitle("jchannel", 1);
529  meLaserL2PN_->setAxisTitle("jpseudo-strip", 2);
530 
532  name = "EELT PN laser quality errors summary L2";
533  meLaserL2PNErr_ = dqmStore_->book1D(name, name, 18, 1, 19);
534  for (int i = 0; i < 18; i++) {
536  }
537 
539  name = "EELT laser L2 amplitude summary";
540  meLaserL2Ampl_ = dqmStore_->bookProfile(name, name, 18, 1, 19, 4096, 0., 4096., "s");
541  for (int i = 0; i < 18; i++) {
542  meLaserL2Ampl_->setBinLabel(i+1, Numbers::sEE(i+1), 1);
543  }
544 
546  name = "EELT laser L2 timing summary";
547  meLaserL2Timing_ = dqmStore_->bookProfile(name, name, 18, 1, 19, 100, 0., 10., "s");
548  for (int i = 0; i < 18; i++) {
550  }
551 
553  name = "EELT laser L2 amplitude over PN summary";
554  meLaserL2AmplOverPN_ = dqmStore_->bookProfile(name, name, 18, 1, 19, 4096, 0., 4096.*12., "s");
555  for (int i = 0; i < 18; i++) {
557  }
558 
559  }
560 
561  if ( find(laserWavelengths_.begin(), laserWavelengths_.end(), 3) != laserWavelengths_.end() ) {
562 
563  if ( meLaserL3_[0] ) dqmStore_->removeElement( meLaserL3_[0]->getName() );
564  name = "EELT EE - laser quality summary L3";
565  meLaserL3_[0] = dqmStore_->book2D(name, name, 100, 0., 100., 100, 0., 100.);
566  meLaserL3_[0]->setAxisTitle("ix", 1);
567  meLaserL3_[0]->setAxisTitle("iy", 2);
568 
569  if ( meLaserL3_[1] ) dqmStore_->removeElement( meLaserL3_[1]->getName() );
570  name = "EELT EE + laser quality summary L3";
571  meLaserL3_[1] = dqmStore_->book2D(name, name, 100, 0., 100., 100, 0., 100.);
572  meLaserL3_[1]->setAxisTitle("ix", 1);
573  meLaserL3_[1]->setAxisTitle("iy", 2);
574 
576  name = "EELT laser quality errors summary L3";
577  meLaserL3Err_ = dqmStore_->book1D(name, name, 18, 1, 19);
578  for (int i = 0; i < 18; i++) {
579  meLaserL3Err_->setBinLabel(i+1, Numbers::sEE(i+1), 1);
580  }
581 
583  name = "EELT PN laser quality summary L3";
584  meLaserL3PN_ = dqmStore_->book2D(name, name, 45, 0., 45., 20, -10., 10.);
585  meLaserL3PN_->setAxisTitle("jchannel", 1);
586  meLaserL3PN_->setAxisTitle("jpseudo-strip", 2);
587 
589  name = "EELT PN laser quality errors summary L3";
590  meLaserL3PNErr_ = dqmStore_->book1D(name, name, 18, 1, 19);
591  for (int i = 0; i < 18; i++) {
593  }
594 
596  name = "EELT laser L3 amplitude summary";
597  meLaserL3Ampl_ = dqmStore_->bookProfile(name, name, 18, 1, 19, 4096, 0., 4096., "s");
598  for (int i = 0; i < 18; i++) {
599  meLaserL3Ampl_->setBinLabel(i+1, Numbers::sEE(i+1), 1);
600  }
601 
603  name = "EELT laser L3 timing summary";
604  meLaserL3Timing_ = dqmStore_->bookProfile(name, name, 18, 1, 19, 100, 0., 10., "s");
605  for (int i = 0; i < 18; i++) {
607  }
608 
610  name = "EELT laser L3 amplitude over PN summary";
611  meLaserL3AmplOverPN_ = dqmStore_->bookProfile(name, name, 18, 1, 19, 4096, 0., 4096.*12., "s");
612  for (int i = 0; i < 18; i++) {
614  }
615 
616  }
617 
618  if ( find(laserWavelengths_.begin(), laserWavelengths_.end(), 4) != laserWavelengths_.end() ) {
619 
620  if ( meLaserL4_[0] ) dqmStore_->removeElement( meLaserL4_[0]->getName() );
621  name = "EELT EE - laser quality summary L4";
622  meLaserL4_[0] = dqmStore_->book2D(name, name, 100, 0., 100., 100, 0., 100.);
623  meLaserL4_[0]->setAxisTitle("ix", 1);
624  meLaserL4_[0]->setAxisTitle("iy", 2);
625 
626  if ( meLaserL4_[1] ) dqmStore_->removeElement( meLaserL4_[1]->getName() );
627  name = "EELT EE + laser quality summary L4";
628  meLaserL4_[1] = dqmStore_->book2D(name, name, 100, 0., 100., 100, 0., 100.);
629  meLaserL4_[1]->setAxisTitle("ix", 1);
630  meLaserL4_[1]->setAxisTitle("iy", 2);
631 
633  name = "EELT laser quality errors summary L4";
634  meLaserL4Err_ = dqmStore_->book1D(name, name, 18, 1, 19);
635  for (int i = 0; i < 18; i++) {
636  meLaserL4Err_->setBinLabel(i+1, Numbers::sEE(i+1), 1);
637  }
638 
640  name = "EELT PN laser quality summary L4";
641  meLaserL4PN_ = dqmStore_->book2D(name, name, 45, 0., 45., 20, -10., 10.);
642  meLaserL4PN_->setAxisTitle("jchannel", 1);
643  meLaserL4PN_->setAxisTitle("jpseudo-strip", 2);
644 
646  name = "EELT PN laser quality errors summary L4";
647  meLaserL4PNErr_ = dqmStore_->book1D(name, name, 18, 1, 19);
648  for (int i = 0; i < 18; i++) {
650  }
651 
653  name = "EELT laser L4 amplitude summary";
654  meLaserL4Ampl_ = dqmStore_->bookProfile(name, name, 18, 1, 19, 4096, 0., 4096., "s");
655  for (int i = 0; i < 18; i++) {
656  meLaserL4Ampl_->setBinLabel(i+1, Numbers::sEE(i+1), 1);
657  }
658 
660  name = "EELT laser L4 timing summary";
661  meLaserL4Timing_ = dqmStore_->bookProfile(name, name, 18, 1, 19, 100, 0., 10., "s");
662  for (int i = 0; i < 18; i++) {
664  }
665 
667  name = "EELT laser L4 amplitude over PN summary";
668  meLaserL4AmplOverPN_ = dqmStore_->bookProfile(name, name, 18, 1, 19, 4096, 0., 4096.*12., "s");
669  for (int i = 0; i < 18; i++) {
671  }
672 
673  }
674  }
675 
676  if(ledClient){
677  if ( find(ledWavelengths_.begin(), ledWavelengths_.end(), 1) != ledWavelengths_.end() ) {
678 
679  if ( meLedL1_[0] ) dqmStore_->removeElement( meLedL1_[0]->getName() );
680  name = "EELDT EE - led quality summary L1";
681  meLedL1_[0] = dqmStore_->book2D(name, name, 100, 0., 100., 100, 0., 100.);
682  meLedL1_[0]->setAxisTitle("ix", 1);
683  meLedL1_[0]->setAxisTitle("iy", 2);
684 
685  if ( meLedL1_[1] ) dqmStore_->removeElement( meLedL1_[1]->getName() );
686  name = "EELDT EE + led quality summary L1";
687  meLedL1_[1] = dqmStore_->book2D(name, name, 100, 0., 100., 100, 0., 100.);
688  meLedL1_[1]->setAxisTitle("ix", 1);
689  meLedL1_[1]->setAxisTitle("iy", 2);
690 
692  name = "EELDT led quality errors summary L1";
693  meLedL1Err_ = dqmStore_->book1D(name, name, 18, 1, 19);
694  for (int i = 0; i < 18; i++) {
695  meLedL1Err_->setBinLabel(i+1, Numbers::sEE(i+1), 1);
696  }
697 
699  name = "EELDT PN led quality summary L1";
700  meLedL1PN_ = dqmStore_->book2D(name, name, 45, 0., 45., 20, -10., 10.);
701  meLedL1PN_->setAxisTitle("jchannel", 1);
702  meLedL1PN_->setAxisTitle("jpseudo-strip", 2);
703 
705  name = "EELDT PN led quality errors summary L1";
706  meLedL1PNErr_ = dqmStore_->book1D(name, name, 18, 1, 19);
707  for (int i = 0; i < 18; i++) {
708  meLedL1PNErr_->setBinLabel(i+1, Numbers::sEE(i+1), 1);
709  }
710 
712  name = "EELDT led L1 amplitude summary";
713  meLedL1Ampl_ = dqmStore_->bookProfile(name, name, 18, 1, 19, 4096, 0., 4096., "s");
714  for (int i = 0; i < 18; i++) {
715  meLedL1Ampl_->setBinLabel(i+1, Numbers::sEE(i+1), 1);
716  }
717 
719  name = "EELDT led L1 timing summary";
720  meLedL1Timing_ = dqmStore_->bookProfile(name, name, 18, 1, 19, 100, 0., 10., "s");
721  for (int i = 0; i < 18; i++) {
722  meLedL1Timing_->setBinLabel(i+1, Numbers::sEE(i+1), 1);
723  }
724 
726  name = "EELDT led L1 amplitude over PN summary";
727  meLedL1AmplOverPN_ = dqmStore_->bookProfile(name, name, 18, 1, 19, 4096, 0., 4096.*12., "s");
728  for (int i = 0; i < 18; i++) {
730  }
731 
732  }
733 
734  if ( find(ledWavelengths_.begin(), ledWavelengths_.end(), 2) != ledWavelengths_.end() ) {
735 
736  if ( meLedL2_[0] ) dqmStore_->removeElement( meLedL2_[0]->getName() );
737  name = "EELDT EE - led quality summary L2";
738  meLedL2_[0] = dqmStore_->book2D(name, name, 100, 0., 100., 100, 0., 100.);
739  meLedL2_[0]->setAxisTitle("ix", 1);
740  meLedL2_[0]->setAxisTitle("iy", 2);
741 
742  if ( meLedL2_[1] ) dqmStore_->removeElement( meLedL2_[1]->getName() );
743  name = "EELDT EE + led quality summary L2";
744  meLedL2_[1] = dqmStore_->book2D(name, name, 100, 0., 100., 100, 0., 100.);
745  meLedL2_[1]->setAxisTitle("ix", 1);
746  meLedL2_[1]->setAxisTitle("iy", 2);
747 
749  name = "EELDT led quality errors summary L2";
750  meLedL2Err_ = dqmStore_->book1D(name, name, 18, 1, 19);
751  for (int i = 0; i < 18; i++) {
752  meLedL2Err_->setBinLabel(i+1, Numbers::sEE(i+1), 1);
753  }
754 
756  name = "EELDT PN led quality summary L2";
757  meLedL2PN_ = dqmStore_->book2D(name, name, 45, 0., 45., 20, -10., 10.);
758  meLedL2PN_->setAxisTitle("jchannel", 1);
759  meLedL2PN_->setAxisTitle("jpseudo-strip", 2);
760 
762  name = "EELDT PN led quality errors summary L2";
763  meLedL2PNErr_ = dqmStore_->book1D(name, name, 18, 1, 19);
764  for (int i = 0; i < 18; i++) {
765  meLedL2PNErr_->setBinLabel(i+1, Numbers::sEE(i+1), 1);
766  }
767 
769  name = "EELDT led L2 amplitude summary";
770  meLedL2Ampl_ = dqmStore_->bookProfile(name, name, 18, 1, 19, 4096, 0., 4096., "s");
771  for (int i = 0; i < 18; i++) {
772  meLedL2Ampl_->setBinLabel(i+1, Numbers::sEE(i+1), 1);
773  }
774 
776  name = "EELDT led L2 timing summary";
777  meLedL2Timing_ = dqmStore_->bookProfile(name, name, 18, 1, 19, 100, 0., 10., "s");
778  for (int i = 0; i < 18; i++) {
779  meLedL2Timing_->setBinLabel(i+1, Numbers::sEE(i+1), 1);
780  }
781 
783  name = "EELDT led L2 amplitude over PN summary";
784  meLedL2AmplOverPN_ = dqmStore_->bookProfile(name, name, 18, 1, 19, 4096, 0., 4096.*12., "s");
785  for (int i = 0; i < 18; i++) {
787  }
788 
789  }
790  }
791 
792  if(pedestalClient){
793  if (find(MGPAGains_.begin(), MGPAGains_.end(), 1) != MGPAGains_.end() ) {
794 
795  if( mePedestalG01_[0] ) dqmStore_->removeElement( mePedestalG01_[0]->getName() );
796  name = "EEPT EE - pedestal quality G01 summary";
797  mePedestalG01_[0] = dqmStore_->book2D(name, name, 100, 0., 100., 100, 0., 100.);
798  mePedestalG01_[0]->setAxisTitle("ix", 1);
799  mePedestalG01_[0]->setAxisTitle("iy", 2);
800 
801  }
802 
803  if (find(MGPAGains_.begin(), MGPAGains_.end(), 6) != MGPAGains_.end() ) {
804 
805  if( mePedestalG06_[0] ) dqmStore_->removeElement( mePedestalG06_[0]->getName() );
806  name = "EEPT EE - pedestal quality G06 summary";
807  mePedestalG06_[0] = dqmStore_->book2D(name, name, 100, 0., 100., 100, 0., 100.);
808  mePedestalG06_[0]->setAxisTitle("ix", 1);
809  mePedestalG06_[0]->setAxisTitle("iy", 2);
810 
811  }
812 
813  if (find(MGPAGains_.begin(), MGPAGains_.end(), 12) != MGPAGains_.end() ) {
814 
815  if( mePedestalG12_[0] ) dqmStore_->removeElement( mePedestalG12_[0]->getName() );
816  name = "EEPT EE - pedestal quality G12 summary";
817  mePedestalG12_[0] = dqmStore_->book2D(name, name, 100, 0., 100., 100, 0., 100.);
818  mePedestalG12_[0]->setAxisTitle("ix", 1);
819  mePedestalG12_[0]->setAxisTitle("iy", 2);
820 
821  }
822 
823 
824  if (find(MGPAGainsPN_.begin(), MGPAGainsPN_.end(), 1) != MGPAGainsPN_.end() ) {
825 
827  name = "EEPT PN pedestal quality G01 summary";
828  mePedestalPNG01_ = dqmStore_->book2D(name, name, 45, 0., 45., 20, -10, 10.);
829  mePedestalPNG01_->setAxisTitle("jchannel", 1);
830  mePedestalPNG01_->setAxisTitle("jpseudo-strip", 2);
831 
832  }
833 
834  if (find(MGPAGainsPN_.begin(), MGPAGainsPN_.end(), 16) != MGPAGainsPN_.end() ) {
835 
837  name = "EEPT PN pedestal quality G16 summary";
838  mePedestalPNG16_ = dqmStore_->book2D(name, name, 45, 0., 45., 20, -10, 10.);
839  mePedestalPNG16_->setAxisTitle("jchannel", 1);
840  mePedestalPNG16_->setAxisTitle("jpseudo-strip", 2);
841 
842  }
843 
844  if (find(MGPAGains_.begin(), MGPAGains_.end(), 1) != MGPAGains_.end() ) {
845 
846  if( mePedestalG01_[1] ) dqmStore_->removeElement( mePedestalG01_[1]->getName() );
847  name = "EEPT EE + pedestal quality G01 summary";
848  mePedestalG01_[1] = dqmStore_->book2D(name, name, 100, 0., 100., 100, 0., 100.);
849  mePedestalG01_[1]->setAxisTitle("ix", 1);
850  mePedestalG01_[1]->setAxisTitle("iy", 2);
851 
852  }
853 
854 
855  if (find(MGPAGains_.begin(), MGPAGains_.end(), 6) != MGPAGains_.end() ) {
856 
857  if( mePedestalG06_[1] ) dqmStore_->removeElement( mePedestalG06_[1]->getName() );
858  name = "EEPT EE + pedestal quality G06 summary";
859  mePedestalG06_[1] = dqmStore_->book2D(name, name, 100, 0., 100., 100, 0., 100.);
860  mePedestalG06_[1]->setAxisTitle("ix", 1);
861  mePedestalG06_[1]->setAxisTitle("iy", 2);
862 
863  }
864 
865  if (find(MGPAGains_.begin(), MGPAGains_.end(), 12) != MGPAGains_.end() ) {
866 
867  if( mePedestalG12_[1] ) dqmStore_->removeElement( mePedestalG12_[1]->getName() );
868  name = "EEPT EE + pedestal quality G12 summary";
869  mePedestalG12_[1] = dqmStore_->book2D(name, name, 100, 0., 100., 100, 0., 100.);
870  mePedestalG12_[1]->setAxisTitle("ix", 1);
871  mePedestalG12_[1]->setAxisTitle("iy", 2);
872 
873  }
874  }
875 
876  if(testPulseClient){
877  if (find(MGPAGains_.begin(), MGPAGains_.end(), 1) != MGPAGains_.end() ) {
878 
879  if( meTestPulseG01_[0] ) dqmStore_->removeElement( meTestPulseG01_[0]->getName() );
880  name = "EETPT EE - test pulse quality G01 summary";
881  meTestPulseG01_[0] = dqmStore_->book2D(name, name, 100, 0., 100., 100, 0., 100.);
882  meTestPulseG01_[0]->setAxisTitle("ix", 1);
883  meTestPulseG01_[0]->setAxisTitle("iy", 2);
884 
885  }
886 
887  if (find(MGPAGains_.begin(), MGPAGains_.end(), 6) != MGPAGains_.end() ) {
888 
889  if( meTestPulseG06_[0] ) dqmStore_->removeElement( meTestPulseG06_[0]->getName() );
890  name = "EETPT EE - test pulse quality G06 summary";
891  meTestPulseG06_[0] = dqmStore_->book2D(name, name, 100, 0., 100., 100, 0., 100.);
892  meTestPulseG06_[0]->setAxisTitle("ix", 1);
893  meTestPulseG06_[0]->setAxisTitle("iy", 2);
894 
895  }
896 
897  if (find(MGPAGains_.begin(), MGPAGains_.end(), 12) != MGPAGains_.end() ) {
898 
899  if( meTestPulseG12_[0] ) dqmStore_->removeElement( meTestPulseG12_[0]->getName() );
900  name = "EETPT EE - test pulse quality G12 summary";
901  meTestPulseG12_[0] = dqmStore_->book2D(name, name, 100, 0., 100., 100, 0., 100.);
902  meTestPulseG12_[0]->setAxisTitle("ix", 1);
903  meTestPulseG12_[0]->setAxisTitle("iy", 2);
904 
905  }
906 
907 
908  if (find(MGPAGainsPN_.begin(), MGPAGainsPN_.end(), 1) != MGPAGainsPN_.end() ) {
909 
911  name = "EETPT PN test pulse quality G01 summary";
912  meTestPulsePNG01_ = dqmStore_->book2D(name, name, 45, 0., 45., 20, -10., 10.);
913  meTestPulsePNG01_->setAxisTitle("jchannel", 1);
914  meTestPulsePNG01_->setAxisTitle("jpseudo-strip", 2);
915 
916  }
917 
918  if (find(MGPAGainsPN_.begin(), MGPAGainsPN_.end(), 16) != MGPAGainsPN_.end() ) {
919 
921  name = "EETPT PN test pulse quality G16 summary";
922  meTestPulsePNG16_ = dqmStore_->book2D(name, name, 45, 0., 45., 20, -10., 10.);
923  meTestPulsePNG16_->setAxisTitle("jchannel", 1);
924  meTestPulsePNG16_->setAxisTitle("jpseudo-strip", 2);
925 
926  }
927 
928  if (find(MGPAGains_.begin(), MGPAGains_.end(), 1) != MGPAGains_.end() ) {
929 
930  if( meTestPulseG01_[1] ) dqmStore_->removeElement( meTestPulseG01_[1]->getName() );
931  name = "EETPT EE + test pulse quality G01 summary";
932  meTestPulseG01_[1] = dqmStore_->book2D(name, name, 100, 0., 100., 100, 0., 100.);
933  meTestPulseG01_[1]->setAxisTitle("ix", 1);
934  meTestPulseG01_[1]->setAxisTitle("iy", 2);
935 
936  }
937 
938  if (find(MGPAGains_.begin(), MGPAGains_.end(), 6) != MGPAGains_.end() ) {
939 
940  if( meTestPulseG06_[1] ) dqmStore_->removeElement( meTestPulseG06_[1]->getName() );
941  name = "EETPT EE + test pulse quality G06 summary";
942  meTestPulseG06_[1] = dqmStore_->book2D(name, name, 100, 0., 100., 100, 0., 100.);
943  meTestPulseG06_[1]->setAxisTitle("ix", 1);
944  meTestPulseG06_[1]->setAxisTitle("iy", 2);
945 
946  }
947 
948  if (find(MGPAGains_.begin(), MGPAGains_.end(), 12) != MGPAGains_.end() ) {
949 
950  if( meTestPulseG12_[1] ) dqmStore_->removeElement( meTestPulseG12_[1]->getName() );
951  name = "EETPT EE + test pulse quality G12 summary";
952  meTestPulseG12_[1] = dqmStore_->book2D(name, name, 100, 0., 100., 100, 0., 100.);
953  meTestPulseG12_[1]->setAxisTitle("ix", 1);
954  meTestPulseG12_[1]->setAxisTitle("iy", 2);
955 
956  }
957 
958  if (find(MGPAGains_.begin(), MGPAGains_.end(), 1) != MGPAGains_.end() ) {
959 
961  name = "EETPT test pulse amplitude G01 summary";
962  meTestPulseAmplG01_ = dqmStore_->bookProfile(name, name, 18, 1, 19, 4096, 0., 4096.*12., "s");
963  for (int i = 0; i < 18; i++) {
965  }
966 
967  }
968 
969  if (find(MGPAGains_.begin(), MGPAGains_.end(), 6) != MGPAGains_.end() ) {
970 
972  name = "EETPT test pulse amplitude G06 summary";
973  meTestPulseAmplG06_ = dqmStore_->bookProfile(name, name, 18, 1, 19, 4096, 0., 4096.*12., "s");
974  for (int i = 0; i < 18; i++) {
976  }
977 
978  }
979 
980  if (find(MGPAGains_.begin(), MGPAGains_.end(), 12) != MGPAGains_.end() ) {
981 
983  name = "EETPT test pulse amplitude G12 summary";
984  meTestPulseAmplG12_ = dqmStore_->bookProfile(name, name, 18, 1, 19, 4096, 0., 4096.*12., "s");
985  for (int i = 0; i < 18; i++) {
987  }
988 
989  }
990  }
991 
992  if(timingClient){
993 
994  if( meTiming_[0] ) dqmStore_->removeElement( meTiming_[0]->getName() );
995  name = "EETMT EE - timing quality summary";
996  meTiming_[0] = dqmStore_->book2D(name, name, 20, 0., 100., 20, 0., 100.);
997  meTiming_[0]->setAxisTitle("ix", 1);
998  meTiming_[0]->setAxisTitle("iy", 2);
999 
1000  if( meTiming_[1] ) dqmStore_->removeElement( meTiming_[1]->getName() );
1001  name = "EETMT EE + timing quality summary";
1002  meTiming_[1] = dqmStore_->book2D(name, name, 20, 0., 100., 20, 0., 100.);
1003  meTiming_[1]->setAxisTitle("ix", 1);
1004  meTiming_[1]->setAxisTitle("iy", 2);
1005 
1006  if( meTimingMean1D_[0] ) dqmStore_->removeElement( meTimingMean1D_[0]->getName() );
1007  name = "EETMT EE - timing mean 1D summary";
1008  meTimingMean1D_[0] = dqmStore_->book1D(name, name, 100, -25., 25.);
1009  meTimingMean1D_[0]->setAxisTitle("mean (ns)", 1);
1010 
1011  if( meTimingMean1D_[1] ) dqmStore_->removeElement( meTimingMean1D_[1]->getName() );
1012  name = "EETMT EE + timing mean 1D summary";
1013  meTimingMean1D_[1] = dqmStore_->book1D(name, name, 100, -25., 25.);
1014  meTimingMean1D_[1]->setAxisTitle("mean (ns)", 1);
1015 
1016  if( meTimingRMS1D_[0] ) dqmStore_->removeElement( meTimingRMS1D_[0]->getName() );
1017  name = "EETMT EE - timing rms 1D summary";
1018  meTimingRMS1D_[0] = dqmStore_->book1D(name, name, 100, 0.0, 10.0);
1019  meTimingRMS1D_[0]->setAxisTitle("rms (ns)", 1);
1020 
1021  if( meTimingRMS1D_[1] ) dqmStore_->removeElement( meTimingRMS1D_[1]->getName() );
1022  name = "EETMT EE + timing rms 1D summary";
1023  meTimingRMS1D_[1] = dqmStore_->book1D(name, name, 100, 0.0, 10.0);
1024  meTimingRMS1D_[1]->setAxisTitle("rms (ns)", 1);
1025 
1027  name = "EETMT timing mean";
1028  meTimingMean_ = dqmStore_->bookProfile(name, name, 18, 1, 19, 100, -20., 20.,"");
1029  for (int i = 0; i < 18; i++) {
1030  meTimingMean_->setBinLabel(i+1, Numbers::sEE(i+1), 1);
1031  }
1032  meTimingMean_->setAxisTitle("mean (ns)", 2);
1033 
1035  name = "EETMT timing rms";
1036  meTimingRMS_ = dqmStore_->bookProfile(name, name, 18, 1, 19, 100, 0., 10.,"");
1037  for (int i = 0; i < 18; i++) {
1038  meTimingRMS_->setBinLabel(i+1, Numbers::sEE(i+1), 1);
1039  }
1040  meTimingRMS_->setAxisTitle("rms (ns)", 2);
1041  }
1042 
1043  if(triggerTowerClient){
1044  if( meTriggerTowerEt_[0] ) dqmStore_->removeElement( meTriggerTowerEt_[0]->getName() );
1045  name = "EETTT EE - Et trigger tower summary";
1046  meTriggerTowerEt_[0] = dqmStore_->book2D(name, name, 100, 0., 100., 100, 0., 100.);
1047  meTriggerTowerEt_[0]->setAxisTitle("ix", 1);
1048  meTriggerTowerEt_[0]->setAxisTitle("iy", 2);
1049  meTriggerTowerEt_[0]->setAxisTitle("Et (GeV)", 3);
1050 
1051  if( meTriggerTowerEt_[1] ) dqmStore_->removeElement( meTriggerTowerEt_[1]->getName() );
1052  name = "EETTT EE + Et trigger tower summary";
1053  meTriggerTowerEt_[1] = dqmStore_->book2D(name, name, 100, 0., 100., 100, 0., 100.);
1054  meTriggerTowerEt_[1]->setAxisTitle("ix", 1);
1055  meTriggerTowerEt_[1]->setAxisTitle("iy", 2);
1056  meTriggerTowerEt_[1]->setAxisTitle("Et (GeV)", 3);
1057 
1059  name = "EETTT EE - emulator error quality summary";
1060  meTriggerTowerEmulError_[0] = dqmStore_->book2D(name, name, 100, 0., 100., 100, 0., 100.);
1063 
1065  name = "EETTT EE + emulator error quality summary";
1066  meTriggerTowerEmulError_[1] = dqmStore_->book2D(name, name, 100, 0., 100., 100, 0., 100.);
1069 
1071  name = "EETTT EE - Trigger Primitives Timing summary";
1072  meTriggerTowerTiming_[0] = dqmStore_->book2D(name, name, 100, 0., 100., 100, 0., 100.);
1073  meTriggerTowerTiming_[0]->setAxisTitle("ix", 1);
1074  meTriggerTowerTiming_[0]->setAxisTitle("iy", 2);
1075  meTriggerTowerTiming_[0]->setAxisTitle("TP data matching emulator", 3);
1076 
1078  name = "EETTT EE + Trigger Primitives Timing summary";
1079  meTriggerTowerTiming_[1] = dqmStore_->book2D(name, name, 100, 0., 100., 100, 0., 100.);
1080  meTriggerTowerTiming_[1]->setAxisTitle("ix", 1);
1081  meTriggerTowerTiming_[1]->setAxisTitle("iy", 2);
1082  meTriggerTowerTiming_[1]->setAxisTitle("TP data matching emulator", 3);
1083 
1085  name = "EETTT EE - Trigger Primitives Non Single Timing summary";
1086  meTriggerTowerNonSingleTiming_[0] = dqmStore_->book2D(name, name, 100, 0., 100., 100, 0., 100.);
1089  meTriggerTowerNonSingleTiming_[0]->setAxisTitle("fraction", 3);
1090 
1092  name = "EETTT EE + Trigger Primitives Non Single Timing summary";
1093  meTriggerTowerNonSingleTiming_[1] = dqmStore_->book2D(name, name, 100, 0., 100., 100, 0., 100.);
1096  meTriggerTowerNonSingleTiming_[1]->setAxisTitle("fraction", 3);
1097  }
1098 
1100  if( meGlobalSummary_[0] ) dqmStore_->removeElement( meGlobalSummary_[0]->getName() );
1101  name = "EE global summary EE -";
1102  meGlobalSummary_[0] = dqmStore_->book2D(name, name, 100, 0., 100., 100, 0., 100.);
1103  meGlobalSummary_[0]->setAxisTitle("ix", 1);
1104  meGlobalSummary_[0]->setAxisTitle("iy", 2);
1105  }
1106 
1108  if( meGlobalSummary_[1] ) dqmStore_->removeElement( meGlobalSummary_[1]->getName() );
1109  name = "EE global summary EE +";
1110  meGlobalSummary_[1] = dqmStore_->book2D(name, name, 100, 0., 100., 100, 0., 100.);
1111  meGlobalSummary_[1]->setAxisTitle("ix", 1);
1112  meGlobalSummary_[1]->setAxisTitle("iy", 2);
1113  }
1114 
1115  if(meGlobalSummary_[0] && meGlobalSummary_[1]){
1117  name = "EE global summary errors";
1118  meSummaryErr_ = dqmStore_->book1D(name, name, 1, 0., 1.);
1119  }
1120 }
const std::string & getName(void) const
get name of ME
static std::string sEE(const unsigned ism)
Definition: Numbers.cc:226
int i
Definition: DBlmapReader.cc:9
MonitorElement * meLaserL4Ampl_
MonitorElement * meTestPulseG12_[2]
MonitorElement * meLaserL4Timing_
MonitorElement * book1D(const char *name, const char *title, int nchX, double lowX, double highX)
Book 1D histogram.
Definition: DQMStore.cc:722
MonitorElement * meLaserL3Err_
MonitorElement * meTimingRMS_
std::vector< int > MGPAGainsPN_
MonitorElement * meTestPulsePNG01_
MonitorElement * mePedestalOnlineErr_
MonitorElement * meTiming_[2]
MonitorElement * meLaserL1Ampl_
MonitorElement * meLedL1AmplOverPN_
MonitorElement * mePedestalOnlineRMSMap_[2]
MonitorElement * meLedL1_[2]
MonitorElement * mePedestalPNG16_
MonitorElement * meLaserL3AmplOverPN_
MonitorElement * meLaserL3Timing_
MonitorElement * meTestPulseAmplG01_
MonitorElement * meTestPulseAmplG06_
MonitorElement * mePedestalG01_[2]
MonitorElement * meLaserL4_[2]
MonitorElement * meTestPulseG01_[2]
MonitorElement * meLedL1Err_
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 * meLaserL4AmplOverPN_
MonitorElement * meLaserL3PNErr_
MonitorElement * meOccupancy_[2]
MonitorElement * meLaserL2AmplOverPN_
MonitorElement * mePedestalG12_[2]
MonitorElement * meTriggerTowerEmulError_[2]
MonitorElement * meSummaryErr_
MonitorElement * meLaserL2_[2]
void find(edm::Handle< EcalRecHitCollection > &hits, DetId thisDet, std::vector< EcalRecHitCollection::const_iterator > &hit, bool debug=false)
Definition: FindCaloHit.cc:7
MonitorElement * meLedL2PN_
MonitorElement * meIntegrityPN_
MonitorElement * meIntegrity_[2]
MonitorElement * meLaserL4PN_
MonitorElement * meRecHitEnergy_[2]
MonitorElement * meLaserL3_[2]
MonitorElement * meTimingRMS1D_[2]
MonitorElement * mePedestalOnline_[2]
MonitorElement * meStatusFlags_[2]
MonitorElement * meLaserL4Err_
MonitorElement * meLedL2PNErr_
MonitorElement * meTriggerTowerTiming_[2]
MonitorElement * meLaserL1PNErr_
void removeElement(const std::string &name)
Definition: DQMStore.cc:2577
MonitorElement * meLaserL1Timing_
MonitorElement * meLaserL3PN_
MonitorElement * meLedL1Ampl_
MonitorElement * meLaserL1_[2]
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:1036
MonitorElement * meTimingMean_
MonitorElement * meTriggerTowerNonSingleTiming_[2]
MonitorElement * meLedL2Timing_
std::string prefixME_
MonitorElement * meLedL1PN_
MonitorElement * meLaserL4PNErr_
std::vector< EEClient * > clients_
MonitorElement * meTimingMean1D_[2]
std::vector< int > laserWavelengths_
MonitorElement * meTestPulsePNG16_
MonitorElement * meLedL1Timing_
MonitorElement * mePedestalPNG01_
MonitorElement * meLedL1PNErr_
MonitorElement * meStatusFlagsErr_
MonitorElement * meTriggerTowerEt_[2]
std::vector< int > MGPAGains_
MonitorElement * mePedestalG06_[2]
MonitorElement * meOccupancyPN_
MonitorElement * meLedL2AmplOverPN_
MonitorElement * mePedestalOnlineRMS_
MonitorElement * meLaserL2Timing_
MonitorElement * meLaserL2Err_
MonitorElement * meLaserL2Ampl_
MonitorElement * meLaserL1AmplOverPN_
MonitorElement * meLaserL2PN_
std::vector< int > ledWavelengths_
MonitorElement * meLedL2Err_
MonitorElement * meTestPulseG06_[2]
MonitorElement * meLaserL3Ampl_
MonitorElement * meLaserL1PN_
MonitorElement * meLedL2Ampl_
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:850
MonitorElement * meGlobalSummary_[2]
MonitorElement * mePedestalOnlineMean_
void setAxisTitle(const std::string &title, int axis=1)
set x-, y- or z-axis title (axis=1, 2, 3 respectively)
MonitorElement * meOccupancy1D_
DQMStore * dqmStore_
MonitorElement * meLedL2_[2]
void setCurrentFolder(const std::string &fullpath)
Definition: DQMStore.cc:434
MonitorElement * meTestPulseAmplG12_
MonitorElement * meLaserL2PNErr_
MonitorElement * meLaserL1Err_
MonitorElement * meIntegrityErr_

Member Data Documentation

std::vector<EEClient*> EESummaryClient::clients_
private

Definition at line 102 of file EESummaryClient.h.

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

bool EESummaryClient::cloneME_
private

Definition at line 81 of file EESummaryClient.h.

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

bool EESummaryClient::debug_
private

Definition at line 84 of file EESummaryClient.h.

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

DQMStore* EESummaryClient::dqmStore_
private

Definition at line 104 of file EESummaryClient.h.

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

bool EESummaryClient::enableCleanup_
private

Definition at line 90 of file EESummaryClient.h.

Referenced by cleanup(), and EESummaryClient().

TProfile2D* EESummaryClient::hot01_[18]
private

Definition at line 191 of file EESummaryClient.h.

Referenced by analyze().

TProfile2D* EESummaryClient::hpot01_[18]
private

Definition at line 192 of file EESummaryClient.h.

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

TProfile2D* EESummaryClient::htmt01_[18]
private

Definition at line 194 of file EESummaryClient.h.

Referenced by analyze().

TProfile2D* EESummaryClient::httt01_[18]
private

Definition at line 193 of file EESummaryClient.h.

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

int EESummaryClient::ievt_
private

Definition at line 76 of file EESummaryClient.h.

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

int EESummaryClient::jevt_
private

Definition at line 77 of file EESummaryClient.h.

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

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

Definition at line 97 of file EESummaryClient.h.

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

std::vector<int> EESummaryClient::ledWavelengths_
private

Definition at line 98 of file EESummaryClient.h.

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

MonitorElement* EESummaryClient::meGlobalSummary_[2]
private

Definition at line 187 of file EESummaryClient.h.

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

MonitorElement* EESummaryClient::meIntegrity_[2]
private

Definition at line 106 of file EESummaryClient.h.

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

MonitorElement* EESummaryClient::meIntegrityErr_
private

Definition at line 108 of file EESummaryClient.h.

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

MonitorElement* EESummaryClient::meIntegrityPN_
private

Definition at line 107 of file EESummaryClient.h.

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

MonitorElement* EESummaryClient::meLaserL1_[2]
private

Definition at line 119 of file EESummaryClient.h.

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

MonitorElement* EESummaryClient::meLaserL1Ampl_
private

Definition at line 123 of file EESummaryClient.h.

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

MonitorElement* EESummaryClient::meLaserL1AmplOverPN_
private

Definition at line 125 of file EESummaryClient.h.

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

MonitorElement* EESummaryClient::meLaserL1Err_
private

Definition at line 120 of file EESummaryClient.h.

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

MonitorElement* EESummaryClient::meLaserL1PN_
private

Definition at line 121 of file EESummaryClient.h.

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

MonitorElement* EESummaryClient::meLaserL1PNErr_
private

Definition at line 122 of file EESummaryClient.h.

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

MonitorElement* EESummaryClient::meLaserL1Timing_
private

Definition at line 124 of file EESummaryClient.h.

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

MonitorElement* EESummaryClient::meLaserL2_[2]
private

Definition at line 126 of file EESummaryClient.h.

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

MonitorElement* EESummaryClient::meLaserL2Ampl_
private

Definition at line 130 of file EESummaryClient.h.

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

MonitorElement* EESummaryClient::meLaserL2AmplOverPN_
private

Definition at line 132 of file EESummaryClient.h.

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

MonitorElement* EESummaryClient::meLaserL2Err_
private

Definition at line 127 of file EESummaryClient.h.

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

MonitorElement* EESummaryClient::meLaserL2PN_
private

Definition at line 128 of file EESummaryClient.h.

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

MonitorElement* EESummaryClient::meLaserL2PNErr_
private

Definition at line 129 of file EESummaryClient.h.

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

MonitorElement* EESummaryClient::meLaserL2Timing_
private

Definition at line 131 of file EESummaryClient.h.

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

MonitorElement* EESummaryClient::meLaserL3_[2]
private

Definition at line 133 of file EESummaryClient.h.

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

MonitorElement* EESummaryClient::meLaserL3Ampl_
private

Definition at line 137 of file EESummaryClient.h.

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

MonitorElement* EESummaryClient::meLaserL3AmplOverPN_
private

Definition at line 139 of file EESummaryClient.h.

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

MonitorElement* EESummaryClient::meLaserL3Err_
private

Definition at line 134 of file EESummaryClient.h.

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

MonitorElement* EESummaryClient::meLaserL3PN_
private

Definition at line 135 of file EESummaryClient.h.

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

MonitorElement* EESummaryClient::meLaserL3PNErr_
private

Definition at line 136 of file EESummaryClient.h.

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

MonitorElement* EESummaryClient::meLaserL3Timing_
private

Definition at line 138 of file EESummaryClient.h.

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

MonitorElement* EESummaryClient::meLaserL4_[2]
private

Definition at line 140 of file EESummaryClient.h.

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

MonitorElement* EESummaryClient::meLaserL4Ampl_
private

Definition at line 144 of file EESummaryClient.h.

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

MonitorElement* EESummaryClient::meLaserL4AmplOverPN_
private

Definition at line 146 of file EESummaryClient.h.

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

MonitorElement* EESummaryClient::meLaserL4Err_
private

Definition at line 141 of file EESummaryClient.h.

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

MonitorElement* EESummaryClient::meLaserL4PN_
private

Definition at line 142 of file EESummaryClient.h.

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

MonitorElement* EESummaryClient::meLaserL4PNErr_
private

Definition at line 143 of file EESummaryClient.h.

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

MonitorElement* EESummaryClient::meLaserL4Timing_
private

Definition at line 145 of file EESummaryClient.h.

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

MonitorElement* EESummaryClient::meLedL1_[2]
private

Definition at line 147 of file EESummaryClient.h.

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

MonitorElement* EESummaryClient::meLedL1Ampl_
private

Definition at line 151 of file EESummaryClient.h.

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

MonitorElement* EESummaryClient::meLedL1AmplOverPN_
private

Definition at line 153 of file EESummaryClient.h.

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

MonitorElement* EESummaryClient::meLedL1Err_
private

Definition at line 148 of file EESummaryClient.h.

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

MonitorElement* EESummaryClient::meLedL1PN_
private

Definition at line 149 of file EESummaryClient.h.

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

MonitorElement* EESummaryClient::meLedL1PNErr_
private

Definition at line 150 of file EESummaryClient.h.

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

MonitorElement* EESummaryClient::meLedL1Timing_
private

Definition at line 152 of file EESummaryClient.h.

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

MonitorElement* EESummaryClient::meLedL2_[2]
private

Definition at line 154 of file EESummaryClient.h.

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

MonitorElement* EESummaryClient::meLedL2Ampl_
private

Definition at line 158 of file EESummaryClient.h.

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

MonitorElement* EESummaryClient::meLedL2AmplOverPN_
private

Definition at line 160 of file EESummaryClient.h.

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

MonitorElement* EESummaryClient::meLedL2Err_
private

Definition at line 155 of file EESummaryClient.h.

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

MonitorElement* EESummaryClient::meLedL2PN_
private

Definition at line 156 of file EESummaryClient.h.

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

MonitorElement* EESummaryClient::meLedL2PNErr_
private

Definition at line 157 of file EESummaryClient.h.

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

MonitorElement* EESummaryClient::meLedL2Timing_
private

Definition at line 159 of file EESummaryClient.h.

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

MonitorElement* EESummaryClient::meOccupancy1D_
private

Definition at line 113 of file EESummaryClient.h.

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

MonitorElement* EESummaryClient::meOccupancy_[2]
private

Definition at line 111 of file EESummaryClient.h.

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

MonitorElement* EESummaryClient::meOccupancyPN_
private

Definition at line 112 of file EESummaryClient.h.

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

MonitorElement* EESummaryClient::mePedestalG01_[2]
private

Definition at line 161 of file EESummaryClient.h.

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

MonitorElement* EESummaryClient::mePedestalG06_[2]
private

Definition at line 162 of file EESummaryClient.h.

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

MonitorElement* EESummaryClient::mePedestalG12_[2]
private

Definition at line 163 of file EESummaryClient.h.

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

MonitorElement* EESummaryClient::mePedestalOnline_[2]
private

Definition at line 114 of file EESummaryClient.h.

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

MonitorElement* EESummaryClient::mePedestalOnlineErr_
private

Definition at line 115 of file EESummaryClient.h.

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

MonitorElement* EESummaryClient::mePedestalOnlineMean_
private

Definition at line 116 of file EESummaryClient.h.

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

MonitorElement* EESummaryClient::mePedestalOnlineRMS_
private

Definition at line 117 of file EESummaryClient.h.

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

MonitorElement* EESummaryClient::mePedestalOnlineRMSMap_[2]
private

Definition at line 118 of file EESummaryClient.h.

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

MonitorElement* EESummaryClient::mePedestalPNG01_
private

Definition at line 164 of file EESummaryClient.h.

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

MonitorElement* EESummaryClient::mePedestalPNG16_
private

Definition at line 165 of file EESummaryClient.h.

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

MonitorElement* EESummaryClient::meRecHitEnergy_[2]
private

Definition at line 175 of file EESummaryClient.h.

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

MonitorElement* EESummaryClient::meStatusFlags_[2]
private

Definition at line 109 of file EESummaryClient.h.

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

MonitorElement* EESummaryClient::meStatusFlagsErr_
private

Definition at line 110 of file EESummaryClient.h.

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

MonitorElement* EESummaryClient::meSummaryErr_
private

Definition at line 189 of file EESummaryClient.h.

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

MonitorElement* EESummaryClient::meTestPulseAmplG01_
private

Definition at line 171 of file EESummaryClient.h.

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

MonitorElement* EESummaryClient::meTestPulseAmplG06_
private

Definition at line 172 of file EESummaryClient.h.

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

MonitorElement* EESummaryClient::meTestPulseAmplG12_
private

Definition at line 173 of file EESummaryClient.h.

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

MonitorElement* EESummaryClient::meTestPulseG01_[2]
private

Definition at line 166 of file EESummaryClient.h.

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

MonitorElement* EESummaryClient::meTestPulseG06_[2]
private

Definition at line 167 of file EESummaryClient.h.

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

MonitorElement* EESummaryClient::meTestPulseG12_[2]
private

Definition at line 168 of file EESummaryClient.h.

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

MonitorElement* EESummaryClient::meTestPulsePNG01_
private

Definition at line 169 of file EESummaryClient.h.

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

MonitorElement* EESummaryClient::meTestPulsePNG16_
private

Definition at line 170 of file EESummaryClient.h.

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

MonitorElement* EESummaryClient::meTiming_[2]
private

Definition at line 176 of file EESummaryClient.h.

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

MonitorElement* EESummaryClient::meTimingMean1D_[2]
private

Definition at line 177 of file EESummaryClient.h.

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

MonitorElement* EESummaryClient::meTimingMean_
private

Definition at line 179 of file EESummaryClient.h.

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

MonitorElement* EESummaryClient::meTimingRMS1D_[2]
private

Definition at line 178 of file EESummaryClient.h.

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

MonitorElement* EESummaryClient::meTimingRMS_
private

Definition at line 180 of file EESummaryClient.h.

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

MonitorElement* EESummaryClient::meTriggerTowerEmulError_[2]
private

Definition at line 183 of file EESummaryClient.h.

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

MonitorElement* EESummaryClient::meTriggerTowerEt_[2]
private

Definition at line 181 of file EESummaryClient.h.

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

MonitorElement* EESummaryClient::meTriggerTowerEtSpectrum_[2]
private

Definition at line 182 of file EESummaryClient.h.

MonitorElement* EESummaryClient::meTriggerTowerNonSingleTiming_[2]
private

Definition at line 185 of file EESummaryClient.h.

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

MonitorElement* EESummaryClient::meTriggerTowerTiming_[2]
private

Definition at line 184 of file EESummaryClient.h.

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

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

Definition at line 99 of file EESummaryClient.h.

Referenced by EESummaryClient(), and setup().

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

Definition at line 100 of file EESummaryClient.h.

Referenced by EESummaryClient(), and setup().

TH1F* EESummaryClient::norm01_
private

Definition at line 195 of file EESummaryClient.h.

Referenced by analyze().

std::string EESummaryClient::prefixME_
private

Definition at line 86 of file EESummaryClient.h.

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

bool EESummaryClient::produceReports_
private

Definition at line 92 of file EESummaryClient.h.

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

bool EESummaryClient::reducedReports_
private

Definition at line 94 of file EESummaryClient.h.

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

std::string EESummaryClient::subfolder_
private

Definition at line 88 of file EESummaryClient.h.

Referenced by analyze(), and EESummaryClient().

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

Definition at line 96 of file EESummaryClient.h.

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

TH1F * EESummaryClient::synch01_
private

Definition at line 195 of file EESummaryClient.h.

Referenced by analyze().

float EESummaryClient::synchErrorThreshold_
private

Definition at line 79 of file EESummaryClient.h.

Referenced by analyze(), and EESummaryClient().

float EESummaryClient::timingNHitThreshold_
private

Definition at line 197 of file EESummaryClient.h.

Referenced by analyze(), and EESummaryClient().

bool EESummaryClient::verbose_
private

Definition at line 83 of file EESummaryClient.h.

Referenced by EESummaryClient().