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 | Static Private Attributes | Friends
EBIntegrityClient Class Reference

#include <EBIntegrityClient.h>

Inheritance diagram for EBIntegrityClient:
EBClient

Public Member Functions

void analyze (void)
 Analyze. More...
 
void beginJob (void)
 BeginJob. More...
 
void beginRun (void)
 BeginRun. More...
 
void cleanup (void)
 Cleanup. More...
 
 EBIntegrityClient (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 setup (void)
 Setup. More...
 
virtual ~EBIntegrityClient ()
 Destructor. More...
 
- Public Member Functions inherited from EBClient
virtual ~EBClient (void)
 

Private Attributes

bool cloneME_
 
bool debug_
 
DQMStoredqmStore_
 
bool enableCleanup_
 
TH1F * h00_
 
TH2F * h01_ [36]
 
TH2F * h02_ [36]
 
TH2F * h03_ [36]
 
TH2F * h04_ [36]
 
TH2F * h05_ [36]
 
TH2F * h06_ [36]
 
TH2F * h07_ [36]
 
TH2F * h08_ [36]
 
TH2F * h09_ [36]
 
TH2F * h_ [36]
 
TH2F * hmem_ [36]
 
int ievt_
 
int jevt_
 
MonitorElementmeg01_ [36]
 
MonitorElementmeg02_ [36]
 
std::string prefixME_
 
std::vector< int > superModules_
 
float threshCry_
 
bool verbose_
 

Static Private Attributes

static const int chNum [5][5]
 

Friends

class EBSummaryClient
 

Detailed Description

Definition at line 33 of file EBIntegrityClient.h.

Constructor & Destructor Documentation

EBIntegrityClient::EBIntegrityClient ( const edm::ParameterSet ps)

Constructor.

Definition at line 44 of file EBIntegrityClient.cc.

References cloneME_, debug_, enableCleanup_, edm::ParameterSet::getUntrackedParameter(), h00_, h01_, h02_, h03_, h04_, h05_, h06_, h07_, h08_, h09_, h_, hmem_, i, ecalpyutils::ism(), meg01_, meg02_, prefixME_, superModules_, threshCry_, and verbose_.

44  {
45 
46  // cloneME switch
47  cloneME_ = ps.getUntrackedParameter<bool>("cloneME", true);
48 
49  // verbose switch
50  verbose_ = ps.getUntrackedParameter<bool>("verbose", true);
51 
52  // debug switch
53  debug_ = ps.getUntrackedParameter<bool>("debug", false);
54 
55  // prefixME path
56  prefixME_ = ps.getUntrackedParameter<std::string>("prefixME", "");
57 
58  // enableCleanup_ switch
59  enableCleanup_ = ps.getUntrackedParameter<bool>("enableCleanup", false);
60 
61  // vector of selected Super Modules (Defaults to all 36).
62  superModules_.reserve(36);
63  for ( unsigned int i = 1; i <= 36; i++ ) superModules_.push_back(i);
64  superModules_ = ps.getUntrackedParameter<std::vector<int> >("superModules", superModules_);
65 
66  h00_ = 0;
67 
68  for ( unsigned int i=0; i<superModules_.size(); i++ ) {
69 
70  int ism = superModules_[i];
71 
72  h_[ism-1] = 0;
73  hmem_[ism-1] = 0;
74 
75  h01_[ism-1] = 0;
76  h02_[ism-1] = 0;
77  h03_[ism-1] = 0;
78  h04_[ism-1] = 0;
79  h05_[ism-1] = 0;
80  h06_[ism-1] = 0;
81  h07_[ism-1] = 0;
82  h08_[ism-1] = 0;
83  h09_[ism-1] = 0;
84 
85  }
86 
87  for ( unsigned int i=0; i<superModules_.size(); i++ ) {
88 
89  int ism = superModules_[i];
90 
91  // integrity summary histograms
92  meg01_[ism-1] = 0;
93  meg02_[ism-1] = 0;
94 
95  }
96 
97  threshCry_ = 0.01;
98 
99 }
T getUntrackedParameter(std::string const &, T const &) const
int i
Definition: DBlmapReader.cc:9
std::vector< int > superModules_
MonitorElement * meg01_[36]
MonitorElement * meg02_[36]
int ism(int ieta, int iphi)
Definition: EcalPyUtils.cc:47
EBIntegrityClient::~EBIntegrityClient ( )
virtual

Destructor.

Definition at line 101 of file EBIntegrityClient.cc.

101  {
102 
103 }

Member Function Documentation

void EBIntegrityClient::analyze ( void  )
virtual

Analyze.

Implements EBClient.

Definition at line 635 of file EBIntegrityClient.cc.

References EcalDQMStatusHelper::CH_GAIN_SWITCH_ERROR, EcalDQMStatusHelper::CH_GAIN_ZERO_ERROR, EcalDQMStatusHelper::CH_ID_ERROR, cloneME_, gather_cfg::cout, debug_, dqmStore_, EcalBarrel, DQMStore::get(), h00_, h01_, h02_, h03_, h04_, h05_, h06_, h07_, h08_, h09_, h_, trackerHits::histo, hmem_, i, ievt_, jevt_, UtilsClient::maskBinContent(), Masks::maskChannel(), Masks::maskPn(), meg01_, meg02_, prefixME_, MonitorElement::Reset(), Numbers::sEB(), MonitorElement::setBinContent(), superModules_, threshCry_, EcalDQMStatusHelper::TT_ID_ERROR, and EcalDQMStatusHelper::TT_SIZE_ERROR.

635  {
636 
637  ievt_++;
638  jevt_++;
639  if ( ievt_ % 10 == 0 ) {
640  if ( debug_ ) std::cout << "EBIntegrityClient: ievt/jevt = " << ievt_ << "/" << jevt_ << std::endl;
641  }
642 
643  uint32_t bits01 = 0;
644  bits01 |= 1 << EcalDQMStatusHelper::CH_ID_ERROR;
647  bits01 |= 1 << EcalDQMStatusHelper::TT_ID_ERROR;
648  bits01 |= 1 << EcalDQMStatusHelper::TT_SIZE_ERROR;
649 
650  char histo[200];
651 
652  MonitorElement* me;
653 
654  sprintf(histo, (prefixME_ + "/EBIntegrityTask/EBIT DCC size error").c_str());
655  me = dqmStore_->get(histo);
656  h00_ = UtilsClient::getHisto<TH1F*>( me, cloneME_, h00_ );
657 
658  for ( unsigned int i=0; i<superModules_.size(); i++ ) {
659 
660  int ism = superModules_[i];
661 
662  sprintf(histo, (prefixME_ + "/EBOccupancyTask/EBOT digi occupancy %s").c_str(), Numbers::sEB(ism).c_str());
663  me = dqmStore_->get(histo);
664  h_[ism-1] = UtilsClient::getHisto<TH2F*>( me, cloneME_, h_[ism-1] );
665 
666  sprintf(histo, (prefixME_ + "/EBOccupancyTask/EBOT MEM digi occupancy %s").c_str(), Numbers::sEB(ism).c_str());
667  me = dqmStore_->get(histo);
668  hmem_[ism-1] = UtilsClient::getHisto<TH2F*>( me, cloneME_, hmem_[ism-1] );
669 
670  sprintf(histo, (prefixME_ + "/EBIntegrityTask/Gain/EBIT gain %s").c_str(), Numbers::sEB(ism).c_str());
671  me = dqmStore_->get(histo);
672  h01_[ism-1] = UtilsClient::getHisto<TH2F*>( me, cloneME_, h01_[ism-1] );
673 
674  sprintf(histo, (prefixME_ + "/EBIntegrityTask/ChId/EBIT ChId %s").c_str(), Numbers::sEB(ism).c_str());
675  me = dqmStore_->get(histo);
676  h02_[ism-1] = UtilsClient::getHisto<TH2F*>( me, cloneME_, h02_[ism-1] );
677 
678  sprintf(histo, (prefixME_ + "/EBIntegrityTask/GainSwitch/EBIT gain switch %s").c_str(), Numbers::sEB(ism).c_str());
679  me = dqmStore_->get(histo);
680  h03_[ism-1] = UtilsClient::getHisto<TH2F*>( me, cloneME_, h03_[ism-1] );
681 
682  sprintf(histo, (prefixME_ + "/EBIntegrityTask/TTId/EBIT TTId %s").c_str(), Numbers::sEB(ism).c_str());
683  me = dqmStore_->get(histo);
684  h04_[ism-1] = UtilsClient::getHisto<TH2F*>( me, cloneME_, h04_[ism-1] );
685 
686  sprintf(histo, (prefixME_ + "/EBIntegrityTask/TTBlockSize/EBIT TTBlockSize %s").c_str(), Numbers::sEB(ism).c_str());
687  me = dqmStore_->get(histo);
688  h05_[ism-1] = UtilsClient::getHisto<TH2F*>( me, cloneME_, h05_[ism-1] );
689 
690  sprintf(histo, (prefixME_ + "/EBIntegrityTask/MemChId/EBIT MemChId %s").c_str(), Numbers::sEB(ism).c_str());
691  me = dqmStore_->get(histo);
692  h06_[ism-1] = UtilsClient::getHisto<TH2F*>( me, cloneME_, h06_[ism-1] );
693 
694  sprintf(histo, (prefixME_ + "/EBIntegrityTask/MemGain/EBIT MemGain %s").c_str(), Numbers::sEB(ism).c_str());
695  me = dqmStore_->get(histo);
696  h07_[ism-1] = UtilsClient::getHisto<TH2F*>( me, cloneME_, h07_[ism-1] );
697 
698  sprintf(histo, (prefixME_ + "/EBIntegrityTask/MemTTId/EBIT MemTTId %s").c_str(), Numbers::sEB(ism).c_str());
699  me = dqmStore_->get(histo);
700  h08_[ism-1] = UtilsClient::getHisto<TH2F*>( me, cloneME_, h08_[ism-1] );
701 
702  sprintf(histo, (prefixME_ + "/EBIntegrityTask/MemSize/EBIT MemSize %s").c_str(), Numbers::sEB(ism).c_str());
703  me = dqmStore_->get(histo);
704  h09_[ism-1] = UtilsClient::getHisto<TH2F*>( me, cloneME_, h09_[ism-1] );
705 
706  float num00;
707 
708  // integrity summary histograms
709  if ( meg01_[ism-1] ) meg01_[ism-1]->Reset();
710  if ( meg02_[ism-1] ) meg02_[ism-1]->Reset();
711 
712  num00 = 0.;
713 
714  bool update0 = false;
715 
716  // dcc size errors
717  if ( h00_ ) {
718  num00 = h00_->GetBinContent(ism);
719  update0 = true;
720  }
721 
722  float num01, num02, num03, num04, num05;
723 
724  for ( int ie = 1; ie <= 85; ie++ ) {
725  for ( int ip = 1; ip <= 20; ip++ ) {
726 
727  num01 = num02 = num03 = num04 = num05 = 0.;
728 
729  if ( meg01_[ism-1] ) meg01_[ism-1]->setBinContent( ie, ip, 2. );
730 
731  bool update1 = false;
732  bool update2 = false;
733 
734  float numTot = -1.;
735 
736  if ( h_[ism-1] ) numTot = h_[ism-1]->GetBinContent(ie, ip);
737 
738  if ( h01_[ism-1] ) {
739  num01 = h01_[ism-1]->GetBinContent(ie, ip);
740  update1 = true;
741  }
742 
743  if ( h02_[ism-1] ) {
744  num02 = h02_[ism-1]->GetBinContent(ie, ip);
745  update1 = true;
746  }
747 
748  if ( h03_[ism-1] ) {
749  num03 = h03_[ism-1]->GetBinContent(ie, ip);
750  update1 = true;
751  }
752 
753  int iet = 1 + ((ie-1)/5);
754  int ipt = 1 + ((ip-1)/5);
755 
756  if ( h04_[ism-1] ) {
757  num04 = h04_[ism-1]->GetBinContent(iet, ipt);
758  update2 = true;
759  }
760 
761  if ( h05_[ism-1] ) {
762  num05 = h05_[ism-1]->GetBinContent(iet, ipt);
763  update2 = true;
764  }
765 
766  if ( update0 || update1 || update2 ) {
767 
768  float val;
769 
770  val = 1.;
771  // number of events on a channel
772  if ( numTot > 0 ) {
773  float errorRate1 = num00 / ( numTot + num01 + num02 + num03 );
774  if ( errorRate1 > threshCry_ )
775  val = 0.;
776  errorRate1 = ( num01 + num02 + num03 ) / ( numTot + num01 + num02 + num03 ) / 3.;
777  if ( errorRate1 > threshCry_ )
778  val = 0.;
779  float errorRate2 = ( num04 + num05 ) / ( numTot/25. + num04 + num05 ) / 2.;
780  if ( errorRate2 > threshCry_ )
781  val = 0.;
782  } else {
783  val = 2.;
784  if ( num00 > 0 )
785  val = 0.;
786  if ( ( num01 + num02 + num03 ) > 0 )
787  val = 0.;
788  if ( ( num04 + num05 ) > 0 )
789  val = 0.;
790  }
791 
792  // filling the summary for SM channels
793  if ( meg01_[ism-1] ) meg01_[ism-1]->setBinContent( ie, ip, val );
794 
795  }
796 
797  if ( Masks::maskChannel(ism, ie, ip, bits01, EcalBarrel) ) UtilsClient::maskBinContent( meg01_[ism-1], ie, ip );
798 
799  }
800  } // end of loop on crystals
801 
802  // summaries for mem channels
803  float num06, num07, num08, num09;
804 
805  for ( int ie = 1; ie <= 10; ie++ ) {
806  for ( int ip = 1; ip <= 5; ip++ ) {
807 
808  num06 = num07 = num08 = num09 = 0.;
809 
810  // initialize summary histo for mem
811  if ( meg02_[ism-1] ) meg02_[ism-1]->setBinContent( ie, ip, 2. );
812 
813  bool update1 = false;
814  bool update2 = false;
815 
816  float numTotmem = -1.;
817 
818  if ( hmem_[ism-1] ) numTotmem = hmem_[ism-1]->GetBinContent(ie, ip);
819 
820  if ( h06_[ism-1] ) {
821  num06 = h06_[ism-1]->GetBinContent(ie, ip);
822  update1 = true;
823  }
824 
825  if ( h07_[ism-1] ) {
826  num07 = h07_[ism-1]->GetBinContent(ie, ip);
827  update1 = true;
828  }
829 
830  int iet = 1 + ((ie-1)/5);
831  int ipt = 1;
832 
833  if ( h08_[ism-1] ) {
834  num08 = h08_[ism-1]->GetBinContent(iet, ipt);
835  update2 = true;
836  }
837 
838  if ( h09_[ism-1] ) {
839  num09 = h09_[ism-1]->GetBinContent(iet, ipt);
840  update2 = true;
841  }
842 
843  if ( update0 || update1 || update2 ) {
844 
845  float val;
846 
847  val = 1.;
848  // number of events on a channel
849  if ( numTotmem > 0 ) {
850  float errorRate1 = ( num06 + num07 ) / ( numTotmem + num06 + num07 ) / 2.;
851  if ( errorRate1 > threshCry_ )
852  val = 0.;
853  float errorRate2 = ( num08 + num09 ) / ( numTotmem/25. + num08 + num09 ) / 2.;
854  if ( errorRate2 > threshCry_ )
855  val = 0.;
856  } else {
857  val = 2.;
858  if ( ( num06 + num07 ) > 0 )
859  val = 0.;
860  if ( ( num08 + num09 ) > 0 )
861  val = 0.;
862  }
863 
864  // filling summary for mem channels
865  if ( meg02_[ism-1] ) meg02_[ism-1]->setBinContent( ie, ip, val );
866 
867  }
868 
869  if ( Masks::maskPn(ism, ie, bits01, EcalBarrel) ) UtilsClient::maskBinContent( meg02_[ism-1], ie, ip );
870 
871  }
872  } // end loop on mem channels
873 
874  } // end loop on supermodules
875 
876 }
int i
Definition: DBlmapReader.cc:9
void setBinContent(int binx, double content)
set content of bin (1-D)
static bool maskChannel(int ism, int i1, int i2, uint32_t bits, const EcalSubdetector subdet)
Definition: Masks.cc:60
static std::string sEB(const int ism)
Definition: Numbers.cc:81
static void maskBinContent(const MonitorElement *me, const int ix, const int iy)
Mask the bin content.
Definition: UtilsClient.h:189
static const int TT_SIZE_ERROR
tuple histo
Definition: trackerHits.py:12
static const int CH_GAIN_SWITCH_ERROR
static bool maskPn(int ism, int i1, uint32_t bits, const EcalSubdetector subdet)
Definition: Masks.cc:112
std::vector< int > superModules_
MonitorElement * meg01_[36]
MonitorElement * get(const std::string &path) const
get ME from full pathname (e.g. &quot;my/long/dir/my_histo&quot;)
Definition: DQMStore.cc:1270
static const int CH_GAIN_ZERO_ERROR
static const int TT_ID_ERROR
tuple cout
Definition: gather_cfg.py:41
MonitorElement * meg02_[36]
static const int CH_ID_ERROR
int ism(int ieta, int iphi)
Definition: EcalPyUtils.cc:47
void Reset(void)
reset ME (ie. contents, errors, etc)
void EBIntegrityClient::beginJob ( void  )
virtual

BeginJob.

Implements EBClient.

Definition at line 105 of file EBIntegrityClient.cc.

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

105  {
106 
108 
109  if ( debug_ ) std::cout << "EBIntegrityClient: beginJob" << std::endl;
110 
111  ievt_ = 0;
112  jevt_ = 0;
113 
114 }
tuple cout
Definition: gather_cfg.py:41
void EBIntegrityClient::beginRun ( void  )
virtual

BeginRun.

Implements EBClient.

Definition at line 116 of file EBIntegrityClient.cc.

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

116  {
117 
118  if ( debug_ ) std::cout << "EBIntegrityClient: beginRun" << std::endl;
119 
120  jevt_ = 0;
121 
122  this->setup();
123 
124 }
void setup(void)
Setup.
tuple cout
Definition: gather_cfg.py:41
void EBIntegrityClient::cleanup ( void  )
virtual

Cleanup.

Implements EBClient.

Definition at line 193 of file EBIntegrityClient.cc.

References cloneME_, dqmStore_, enableCleanup_, edm::getName(), h00_, h01_, h02_, h03_, h04_, h05_, h06_, h07_, h08_, h09_, h_, hmem_, i, ecalpyutils::ism(), meg01_, meg02_, prefixME_, DQMStore::removeElement(), DQMStore::setCurrentFolder(), and superModules_.

Referenced by endJob(), and endRun().

193  {
194 
195  if ( ! enableCleanup_ ) return;
196 
197  if ( cloneME_ ) {
198  if ( h00_ ) delete h00_;
199  }
200 
201  h00_ = 0;
202 
203  for ( unsigned int i=0; i<superModules_.size(); i++ ) {
204 
205  int ism = superModules_[i];
206 
207  if ( cloneME_ ) {
208  if ( h_[ism-1] ) delete h_[ism-1];
209  if ( hmem_[ism-1] ) delete hmem_[ism-1];
210 
211  if ( h01_[ism-1] ) delete h01_[ism-1];
212  if ( h02_[ism-1] ) delete h02_[ism-1];
213  if ( h03_[ism-1] ) delete h03_[ism-1];
214  if ( h04_[ism-1] ) delete h04_[ism-1];
215  if ( h05_[ism-1] ) delete h05_[ism-1];
216  if ( h06_[ism-1] ) delete h06_[ism-1];
217  if ( h07_[ism-1] ) delete h07_[ism-1];
218  if ( h08_[ism-1] ) delete h08_[ism-1];
219  if ( h09_[ism-1] ) delete h09_[ism-1];
220  }
221 
222  h_[ism-1] = 0;
223  hmem_[ism-1] = 0;
224 
225  h01_[ism-1] = 0;
226  h02_[ism-1] = 0;
227  h03_[ism-1] = 0;
228  h04_[ism-1] = 0;
229  h05_[ism-1] = 0;
230  h06_[ism-1] = 0;
231  h07_[ism-1] = 0;
232  h08_[ism-1] = 0;
233  h09_[ism-1] = 0;
234 
235  }
236 
237  dqmStore_->setCurrentFolder( prefixME_ + "/EBIntegrityClient" );
238 
239  for ( unsigned int i=0; i<superModules_.size(); i++ ) {
240 
241  int ism = superModules_[i];
242 
243  if ( meg01_[ism-1] ) dqmStore_->removeElement( meg01_[ism-1]->getName() );
244  meg01_[ism-1] = 0;
245 
246  if ( meg02_[ism-1] ) dqmStore_->removeElement( meg02_[ism-1]->getName() );
247  meg02_[ism-1] = 0;
248 
249  }
250 
251 }
int i
Definition: DBlmapReader.cc:9
std::vector< int > superModules_
MonitorElement * meg01_[36]
void removeElement(const std::string &name)
Definition: DQMStore.cc:2338
std::string getName(Reflex::Type &cc)
Definition: ClassFiller.cc:18
MonitorElement * meg02_[36]
int ism(int ieta, int iphi)
Definition: EcalPyUtils.cc:47
void setCurrentFolder(const std::string &fullpath)
Definition: DQMStore.cc:237
void EBIntegrityClient::endJob ( void  )
virtual

EndJob.

Implements EBClient.

Definition at line 126 of file EBIntegrityClient.cc.

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

126  {
127 
128  if ( debug_ ) std::cout << "EBIntegrityClient: endJob, ievt = " << ievt_ << std::endl;
129 
130  this->cleanup();
131 
132 }
void cleanup(void)
Cleanup.
tuple cout
Definition: gather_cfg.py:41
void EBIntegrityClient::endRun ( void  )
virtual

EndRun.

Implements EBClient.

Definition at line 134 of file EBIntegrityClient.cc.

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

134  {
135 
136  if ( debug_ ) std::cout << "EBIntegrityClient: endRun, jevt = " << jevt_ << std::endl;
137 
138  this->cleanup();
139 
140 }
void cleanup(void)
Cleanup.
tuple cout
Definition: gather_cfg.py:41
int EBIntegrityClient::getEvtPerJob ( void  )
inlinevirtual

Get Functions.

Implements EBClient.

Definition at line 72 of file EBIntegrityClient.h.

References ievt_.

72 { return ievt_; }
int EBIntegrityClient::getEvtPerRun ( void  )
inlinevirtual

Returns the number of processed events in this Run.

Implements EBClient.

Definition at line 73 of file EBIntegrityClient.h.

References jevt_.

73 { return jevt_; }
void EBIntegrityClient::setup ( void  )
virtual

Setup.

Implements EBClient.

Definition at line 142 of file EBIntegrityClient.cc.

References DQMStore::book2D(), dqmStore_, edm::getName(), trackerHits::histo, i, ecalpyutils::ism(), meg01_, meg02_, prefixME_, DQMStore::removeElement(), MonitorElement::Reset(), Numbers::sEB(), MonitorElement::setAxisTitle(), MonitorElement::setBinContent(), DQMStore::setCurrentFolder(), and superModules_.

Referenced by beginRun().

142  {
143 
144  char histo[200];
145 
146  dqmStore_->setCurrentFolder( prefixME_ + "/EBIntegrityClient" );
147 
148  for ( unsigned int i=0; i<superModules_.size(); i++ ) {
149 
150  int ism = superModules_[i];
151 
152  if ( meg01_[ism-1] ) dqmStore_->removeElement( meg01_[ism-1]->getName() );
153  sprintf(histo, "EBIT data integrity quality %s", Numbers::sEB(ism).c_str());
154  meg01_[ism-1] = dqmStore_->book2D(histo, histo, 85, 0., 85., 20, 0., 20.);
155  meg01_[ism-1]->setAxisTitle("ieta", 1);
156  meg01_[ism-1]->setAxisTitle("iphi", 2);
157 
158  if ( meg02_[ism-1] ) dqmStore_->removeElement( meg02_[ism-1]->getName() );
159  sprintf(histo, "EBIT data integrity quality MEM %s", Numbers::sEB(ism).c_str());
160  meg02_[ism-1] = dqmStore_->book2D(histo, histo, 10, 0., 10., 5, 0.,5.);
161  meg02_[ism-1]->setAxisTitle("pseudo-strip", 1);
162  meg02_[ism-1]->setAxisTitle("channel", 2);
163 
164  }
165 
166  for ( unsigned int i=0; i<superModules_.size(); i++ ) {
167 
168  int ism = superModules_[i];
169 
170  if ( meg01_[ism-1] ) meg01_[ism-1]->Reset();
171  if ( meg02_[ism-1] ) meg02_[ism-1]->Reset();
172 
173  for ( int ie = 1; ie <= 85; ie++ ) {
174  for ( int ip = 1; ip <= 20; ip++ ) {
175 
176  if ( meg01_[ism-1] ) meg01_[ism-1]->setBinContent( ie, ip, 2. );
177 
178  }
179  }
180 
181  for ( int ie = 1; ie <= 10; ie++ ) {
182  for ( int ip = 1; ip <= 5; ip++ ) {
183 
184  if ( meg02_[ism-1] ) meg02_[ism-1]->setBinContent( ie, ip, 2. );
185 
186  }
187  }
188 
189  }
190 
191 }
int i
Definition: DBlmapReader.cc:9
void setBinContent(int binx, double content)
set content of bin (1-D)
static std::string sEB(const int ism)
Definition: Numbers.cc:81
tuple histo
Definition: trackerHits.py:12
std::vector< int > superModules_
MonitorElement * meg01_[36]
void removeElement(const std::string &name)
Definition: DQMStore.cc:2338
std::string getName(Reflex::Type &cc)
Definition: ClassFiller.cc:18
MonitorElement * meg02_[36]
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:647
int ism(int ieta, int iphi)
Definition: EcalPyUtils.cc:47
void setAxisTitle(const std::string &title, int axis=1)
set x-, y- or z-axis title (axis=1, 2, 3 respectively)
void Reset(void)
reset ME (ie. contents, errors, etc)
void setCurrentFolder(const std::string &fullpath)
Definition: DQMStore.cc:237

Friends And Related Function Documentation

friend class EBSummaryClient
friend

Definition at line 35 of file EBIntegrityClient.h.

Member Data Documentation

const int EBIntegrityClient::chNum
staticprivate
Initial value:
= {
{ 1, 2, 3, 4, 5},
{10, 9, 8, 7, 6},
{11, 12, 13, 14, 15},
{20, 19, 18, 17, 16},
{21, 22, 23, 24, 25}
}

Definition at line 115 of file EBIntegrityClient.h.

bool EBIntegrityClient::cloneME_
private

Definition at line 80 of file EBIntegrityClient.h.

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

bool EBIntegrityClient::debug_
private

Definition at line 83 of file EBIntegrityClient.h.

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

DQMStore* EBIntegrityClient::dqmStore_
private

Definition at line 91 of file EBIntegrityClient.h.

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

bool EBIntegrityClient::enableCleanup_
private

Definition at line 87 of file EBIntegrityClient.h.

Referenced by cleanup(), and EBIntegrityClient().

TH1F* EBIntegrityClient::h00_
private

Definition at line 93 of file EBIntegrityClient.h.

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

TH2F* EBIntegrityClient::h01_[36]
private

Definition at line 95 of file EBIntegrityClient.h.

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

TH2F* EBIntegrityClient::h02_[36]
private

Definition at line 96 of file EBIntegrityClient.h.

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

TH2F* EBIntegrityClient::h03_[36]
private

Definition at line 97 of file EBIntegrityClient.h.

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

TH2F* EBIntegrityClient::h04_[36]
private

Definition at line 98 of file EBIntegrityClient.h.

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

TH2F* EBIntegrityClient::h05_[36]
private

Definition at line 99 of file EBIntegrityClient.h.

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

TH2F* EBIntegrityClient::h06_[36]
private

Definition at line 100 of file EBIntegrityClient.h.

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

TH2F* EBIntegrityClient::h07_[36]
private

Definition at line 101 of file EBIntegrityClient.h.

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

TH2F* EBIntegrityClient::h08_[36]
private

Definition at line 102 of file EBIntegrityClient.h.

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

TH2F* EBIntegrityClient::h09_[36]
private

Definition at line 103 of file EBIntegrityClient.h.

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

TH2F* EBIntegrityClient::h_[36]
private

Definition at line 108 of file EBIntegrityClient.h.

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

TH2F* EBIntegrityClient::hmem_[36]
private

Definition at line 109 of file EBIntegrityClient.h.

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

int EBIntegrityClient::ievt_
private

Definition at line 77 of file EBIntegrityClient.h.

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

int EBIntegrityClient::jevt_
private

Definition at line 78 of file EBIntegrityClient.h.

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

MonitorElement* EBIntegrityClient::meg01_[36]
private
MonitorElement* EBIntegrityClient::meg02_[36]
private
std::string EBIntegrityClient::prefixME_
private

Definition at line 85 of file EBIntegrityClient.h.

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

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

Definition at line 89 of file EBIntegrityClient.h.

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

float EBIntegrityClient::threshCry_
private

Definition at line 113 of file EBIntegrityClient.h.

Referenced by analyze(), and EBIntegrityClient().

bool EBIntegrityClient::verbose_
private

Definition at line 82 of file EBIntegrityClient.h.

Referenced by EBIntegrityClient().