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 | Friends
EBCosmicClient Class Reference

#include <EBCosmicClient.h>

Inheritance diagram for EBCosmicClient:
EBClient

Public Member Functions

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

Private Attributes

bool cloneME_
 
bool debug_
 
DQMStoredqmStore_
 
bool enableCleanup_
 
TProfile2D * h01_ [36]
 
TH1F * h02_ [36]
 
TH1F * h03_ [36]
 
int ievt_
 
int jevt_
 
MonitorElementmeh01_ [36]
 
MonitorElementmeh02_ [36]
 
MonitorElementmeh03_ [36]
 
std::string prefixME_
 
std::vector< int > superModules_
 
bool verbose_
 

Friends

class EBSummaryClient
 

Detailed Description

Definition at line 33 of file EBCosmicClient.h.

Constructor & Destructor Documentation

EBCosmicClient::EBCosmicClient ( const edm::ParameterSet ps)

Constructor.

Definition at line 32 of file EBCosmicClient.cc.

References cloneME_, debug_, enableCleanup_, edm::ParameterSet::getUntrackedParameter(), h01_, h02_, h03_, i, ecalpyutils::ism(), meh01_, meh02_, meh03_, prefixME_, superModules_, and verbose_.

32  {
33 
34  // cloneME switch
35  cloneME_ = ps.getUntrackedParameter<bool>("cloneME", true);
36 
37  // verbose switch
38  verbose_ = ps.getUntrackedParameter<bool>("verbose", true);
39 
40  // debug switch
41  debug_ = ps.getUntrackedParameter<bool>("debug", false);
42 
43  // prefixME path
44  prefixME_ = ps.getUntrackedParameter<std::string>("prefixME", "");
45 
46  // enableCleanup_ switch
47  enableCleanup_ = ps.getUntrackedParameter<bool>("enableCleanup", false);
48 
49  // vector of selected Super Modules (Defaults to all 36).
50  superModules_.reserve(36);
51  for ( unsigned int i = 1; i <= 36; i++ ) superModules_.push_back(i);
52  superModules_ = ps.getUntrackedParameter<std::vector<int> >("superModules", superModules_);
53 
54  for ( unsigned int i=0; i<superModules_.size(); i++ ) {
55 
56  int ism = superModules_[i];
57 
58  h01_[ism-1] = 0;
59  h02_[ism-1] = 0;
60  h03_[ism-1] = 0;
61 
62  meh01_[ism-1] = 0;
63  meh02_[ism-1] = 0;
64  meh03_[ism-1] = 0;
65 
66  }
67 
68 }
T getUntrackedParameter(std::string const &, T const &) const
int i
Definition: DBlmapReader.cc:9
TH1F * h03_[36]
std::vector< int > superModules_
MonitorElement * meh03_[36]
TProfile2D * h01_[36]
std::string prefixME_
TH1F * h02_[36]
MonitorElement * meh01_[36]
MonitorElement * meh02_[36]
int ism(int ieta, int iphi)
Definition: EcalPyUtils.cc:47
EBCosmicClient::~EBCosmicClient ( )
virtual

Destructor.

Definition at line 70 of file EBCosmicClient.cc.

70  {
71 
72 }

Member Function Documentation

void EBCosmicClient::analyze ( void  )
virtual

Analyze.

Implements EBClient.

Definition at line 151 of file EBCosmicClient.cc.

References cloneME_, gather_cfg::cout, debug_, dqmStore_, DQMStore::get(), h01_, h02_, h03_, trackerHits::histo, i, ievt_, ecalpyutils::ism(), jevt_, meh01_, meh02_, meh03_, prefixME_, Numbers::sEB(), and superModules_.

151  {
152 
153  ievt_++;
154  jevt_++;
155  if ( ievt_ % 10 == 0 ) {
156  if ( debug_ ) std::cout << "EBCosmicClient: ievt/jevt = " << ievt_ << "/" << jevt_ << std::endl;
157  }
158 
159  char histo[200];
160 
161  MonitorElement* me;
162 
163  for ( unsigned int i=0; i<superModules_.size(); i++ ) {
164 
165  int ism = superModules_[i];
166 
167  sprintf(histo, (prefixME_ + "/EBCosmicTask/Sel/EBCT energy sel %s").c_str(), Numbers::sEB(ism).c_str());
168  me = dqmStore_->get(histo);
169  h01_[ism-1] = UtilsClient::getHisto<TProfile2D*>( me, cloneME_, h01_[ism-1] );
170  meh01_[ism-1] = me;
171 
172  sprintf(histo, (prefixME_ + "/EBCosmicTask/Spectrum/EBCT 1x1 energy spectrum %s").c_str(), Numbers::sEB(ism).c_str());
173  me = dqmStore_->get(histo);
174  h02_[ism-1] = UtilsClient::getHisto<TH1F*>( me, cloneME_, h02_[ism-1] );
175  meh02_[ism-1] = me;
176 
177  sprintf(histo, (prefixME_ + "/EBCosmicTask/Spectrum/EBCT 3x3 energy spectrum %s").c_str(), Numbers::sEB(ism).c_str());
178  me = dqmStore_->get(histo);
179  h03_[ism-1] = UtilsClient::getHisto<TH1F*>( me, cloneME_, h03_[ism-1] );
180  meh03_[ism-1] = me;
181 
182  }
183 
184 }
int i
Definition: DBlmapReader.cc:9
DQMStore * dqmStore_
static std::string sEB(const int ism)
Definition: Numbers.cc:81
TH1F * h03_[36]
std::vector< int > superModules_
tuple histo
Definition: trackerHits.py:12
MonitorElement * meh03_[36]
TProfile2D * h01_[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
std::string prefixME_
TH1F * h02_[36]
MonitorElement * meh01_[36]
MonitorElement * meh02_[36]
tuple cout
Definition: gather_cfg.py:41
int ism(int ieta, int iphi)
Definition: EcalPyUtils.cc:47
void EBCosmicClient::beginJob ( void  )
virtual

BeginJob.

Implements EBClient.

Definition at line 74 of file EBCosmicClient.cc.

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

74  {
75 
77 
78  if ( debug_ ) std::cout << "EBCosmicClient: beginJob" << std::endl;
79 
80  ievt_ = 0;
81  jevt_ = 0;
82 
83 }
DQMStore * dqmStore_
tuple cout
Definition: gather_cfg.py:41
void EBCosmicClient::beginRun ( void  )
virtual

BeginRun.

Implements EBClient.

Definition at line 85 of file EBCosmicClient.cc.

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

85  {
86 
87  if ( debug_ ) std::cout << "EBCosmicClient: beginRun" << std::endl;
88 
89  jevt_ = 0;
90 
91  this->setup();
92 
93 }
void setup(void)
Setup.
tuple cout
Definition: gather_cfg.py:41
void EBCosmicClient::cleanup ( void  )
virtual

Cleanup.

Implements EBClient.

Definition at line 115 of file EBCosmicClient.cc.

References cloneME_, enableCleanup_, h01_, h02_, h03_, i, ecalpyutils::ism(), meh01_, meh02_, meh03_, and superModules_.

Referenced by endJob(), and endRun().

115  {
116 
117  if ( ! enableCleanup_ ) return;
118 
119  for ( unsigned int i=0; i<superModules_.size(); i++ ) {
120 
121  int ism = superModules_[i];
122 
123  if ( cloneME_ ) {
124  if ( h01_[ism-1] ) delete h01_[ism-1];
125  if ( h02_[ism-1] ) delete h02_[ism-1];
126  if ( h03_[ism-1] ) delete h03_[ism-1];
127  }
128 
129  h01_[ism-1] = 0;
130  h02_[ism-1] = 0;
131  h03_[ism-1] = 0;
132 
133  meh01_[ism-1] = 0;
134  meh02_[ism-1] = 0;
135  meh03_[ism-1] = 0;
136 
137  }
138 
139 }
int i
Definition: DBlmapReader.cc:9
TH1F * h03_[36]
std::vector< int > superModules_
MonitorElement * meh03_[36]
TProfile2D * h01_[36]
TH1F * h02_[36]
MonitorElement * meh01_[36]
MonitorElement * meh02_[36]
int ism(int ieta, int iphi)
Definition: EcalPyUtils.cc:47
void EBCosmicClient::endJob ( void  )
virtual

EndJob.

Implements EBClient.

Definition at line 95 of file EBCosmicClient.cc.

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

95  {
96 
97  if ( debug_ ) std::cout << "EBCosmicClient: endJob, ievt = " << ievt_ << std::endl;
98 
99  this->cleanup();
100 
101 }
void cleanup(void)
Cleanup.
tuple cout
Definition: gather_cfg.py:41
void EBCosmicClient::endRun ( void  )
virtual

EndRun.

Implements EBClient.

Definition at line 103 of file EBCosmicClient.cc.

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

103  {
104 
105  if ( debug_ ) std::cout << "EBCosmicClient: endRun, jevt = " << jevt_ << std::endl;
106 
107  this->cleanup();
108 
109 }
void cleanup(void)
Cleanup.
tuple cout
Definition: gather_cfg.py:41
int EBCosmicClient::getEvtPerJob ( void  )
inlinevirtual

Get Functions.

Implements EBClient.

Definition at line 72 of file EBCosmicClient.h.

References ievt_.

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

Returns the number of processed events in this Run.

Implements EBClient.

Definition at line 73 of file EBCosmicClient.h.

References jevt_.

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

Setup.

Implements EBClient.

Definition at line 111 of file EBCosmicClient.cc.

Referenced by beginRun().

111  {
112 
113 }

Friends And Related Function Documentation

friend class EBSummaryClient
friend

Definition at line 35 of file EBCosmicClient.h.

Member Data Documentation

bool EBCosmicClient::cloneME_
private

Definition at line 80 of file EBCosmicClient.h.

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

bool EBCosmicClient::debug_
private

Definition at line 83 of file EBCosmicClient.h.

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

DQMStore* EBCosmicClient::dqmStore_
private

Definition at line 91 of file EBCosmicClient.h.

Referenced by analyze(), and beginJob().

bool EBCosmicClient::enableCleanup_
private

Definition at line 87 of file EBCosmicClient.h.

Referenced by cleanup(), and EBCosmicClient().

TProfile2D* EBCosmicClient::h01_[36]
private

Definition at line 97 of file EBCosmicClient.h.

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

TH1F* EBCosmicClient::h02_[36]
private

Definition at line 98 of file EBCosmicClient.h.

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

TH1F* EBCosmicClient::h03_[36]
private

Definition at line 99 of file EBCosmicClient.h.

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

int EBCosmicClient::ievt_
private

Definition at line 77 of file EBCosmicClient.h.

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

int EBCosmicClient::jevt_
private

Definition at line 78 of file EBCosmicClient.h.

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

MonitorElement* EBCosmicClient::meh01_[36]
private

Definition at line 93 of file EBCosmicClient.h.

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

MonitorElement* EBCosmicClient::meh02_[36]
private

Definition at line 94 of file EBCosmicClient.h.

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

MonitorElement* EBCosmicClient::meh03_[36]
private

Definition at line 95 of file EBCosmicClient.h.

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

std::string EBCosmicClient::prefixME_
private

Definition at line 85 of file EBCosmicClient.h.

Referenced by analyze(), and EBCosmicClient().

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

Definition at line 89 of file EBCosmicClient.h.

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

bool EBCosmicClient::verbose_
private

Definition at line 82 of file EBCosmicClient.h.

Referenced by EBCosmicClient().