#include <ESPedestalClient.h>
Public Member Functions | |
void | analyze (void) |
void | beginJob (DQMStore *dqmStore) |
void | beginRun (void) |
void | cleanup (void) |
void | endJob (void) |
void | endLumiAnalyze (void) |
void | endRun (void) |
ESPedestalClient (const edm::ParameterSet &ps) | |
int | getEvtPerJob () |
Get Functions. | |
int | getEvtPerRun () |
void | setup (void) |
virtual | ~ESPedestalClient () |
Private Attributes | |
bool | debug_ |
DQMStore * | dqmStore_ |
bool | enableCleanup_ |
TF1 * | fg |
bool | fitPedestal_ |
MonitorElement * | hPed_ [2][2][40][40] |
MonitorElement * | hTotN_ [2][2][40][40] |
int | ievt_ |
int | jevt_ |
edm::FileInPath | lookup_ |
int | nLines_ |
std::string | prefixME_ |
int | senP_ [4288] |
int | senX_ [4288] |
int | senY_ [4288] |
int | senZ_ [4288] |
bool | verbose_ |
Friends | |
class | ESSummaryClient |
Definition at line 20 of file ESPedestalClient.h.
ESPedestalClient::ESPedestalClient | ( | const edm::ParameterSet & | ps | ) |
Definition at line 17 of file ESPedestalClient.cc.
References edm::ParameterSet::getUntrackedParameter(), i, j, gen::k, and m.
{ verbose_ = ps.getUntrackedParameter<bool>("verbose", true); debug_ = ps.getUntrackedParameter<bool>("debug", true); prefixME_ = ps.getUntrackedParameter<string>("prefixME", "EcalPreshower"); lookup_ = ps.getUntrackedParameter<FileInPath>("LookupTable"); enableCleanup_ = ps.getUntrackedParameter<bool>("enableCleanup", false); fitPedestal_ = ps.getUntrackedParameter<bool>("fitPedestal", false); for (int i=0; i<2; i++) for (int j=0; j<2; j++) for (int k=0; k<40; k++) for (int m=0; m<40; m++) { hPed_[i][j][k][m] = 0; hTotN_[i][j][k][m] = 0; } }
ESPedestalClient::~ESPedestalClient | ( | ) | [virtual] |
Definition at line 36 of file ESPedestalClient.cc.
{ }
void ESPedestalClient::analyze | ( | void | ) | [virtual] |
void ESPedestalClient::beginJob | ( | DQMStore * | dqmStore | ) | [virtual] |
Implements ESClient.
Definition at line 39 of file ESPedestalClient.cc.
References gather_cfg::cout.
void ESPedestalClient::beginRun | ( | void | ) | [virtual] |
Implements ESClient.
Definition at line 50 of file ESPedestalClient.cc.
References gather_cfg::cout, and HcalObjRepresent::setup().
void ESPedestalClient::cleanup | ( | void | ) | [virtual] |
Implements ESClient.
Definition at line 167 of file ESPedestalClient.cc.
References gather_cfg::cout, i, j, gen::k, and m.
void ESPedestalClient::endJob | ( | void | ) | [virtual] |
Implements ESClient.
Definition at line 59 of file ESPedestalClient.cc.
References edm::cleanup(), gather_cfg::cout, MonitorElement::getTH1F(), and i.
{ if ( debug_ ) cout << "ESPedestalClient: endJob, ievt = " << ievt_ << endl; // Preform pedestal fit char hname[300]; int iz = 0; if (fitPedestal_) { if ( verbose_ ) cout<<"ESPedestalClient: Fit Pedestal"<<endl; for (int i=0; i<nLines_; ++i) { iz = (senZ_[i]==1) ? 0:1; for (int is=0; is<32; ++is) { string dirname = prefixME_ + "/ESPedestalTask/"; sprintf(hname, "ADC Z %d P %d X %d Y %d Str %d", senZ_[i], senP_[i], senX_[i], senY_[i], is+1); MonitorElement *meFit = dqmStore_->get(dirname+hname); if (meFit==0) continue; TH1F *rootHisto = meFit->getTH1F(); rootHisto->Fit("fg", "Q", "", 500, 1800); rootHisto->Fit("fg", "RQ", "", fg->GetParameter(1)-2.*fg->GetParameter(2),fg->GetParameter(1)+2.*fg->GetParameter(2)); hPed_[iz][senP_[i]-1][senX_[i]-1][senY_[i]-1]->setBinContent(is+1, (int)(fg->GetParameter(1)+0.5)); hTotN_[iz][senP_[i]-1][senX_[i]-1][senY_[i]-1]->setBinContent(is+1, fg->GetParameter(2)); } } } else { if ( verbose_ ) cout<<"ESPedestalClient: Use Histogram Mean"<<endl; for (int i=0; i<nLines_; ++i) { iz = (senZ_[i]==1) ? 0:1; for (int is=0; is<32; ++is) { string dirname = prefixME_ + "/ESPedestalTask/"; sprintf(hname, "ADC Z %d P %d X %d Y %d Str %d", senZ_[i], senP_[i], senX_[i], senY_[i], is+1); MonitorElement *meMean = dqmStore_->get(dirname+hname); if (meMean==0) continue; TH1F *rootHisto = meMean->getTH1F(); hPed_[iz][senP_[i]-1][senX_[i]-1][senY_[i]-1]->setBinContent(is+1, (int)(rootHisto->GetMean()+0.5)); hTotN_[iz][senP_[i]-1][senX_[i]-1][senY_[i]-1]->setBinContent(is+1, rootHisto->GetRMS()); } } } this->cleanup(); }
void ESPedestalClient::endLumiAnalyze | ( | void | ) | [inline, virtual] |
void ESPedestalClient::endRun | ( | void | ) | [virtual] |
Implements ESClient.
Definition at line 117 of file ESPedestalClient.cc.
References edm::cleanup(), and gather_cfg::cout.
int ESPedestalClient::getEvtPerJob | ( | void | ) | [inline] |
Get Functions.
Definition at line 37 of file ESPedestalClient.h.
References ievt_.
{ return ievt_; }
int ESPedestalClient::getEvtPerRun | ( | void | ) | [inline] |
void ESPedestalClient::setup | ( | void | ) | [virtual] |
Implements ESClient.
Definition at line 124 of file ESPedestalClient.cc.
References gather_cfg::cout, mergeVDriftHistosByStation::file, and i.
{ // read in look-up table int iz, ip, ix, iy, fed, kchip, pace, bundle, fiber, optorx; ifstream file; file.open(lookup_.fullPath().c_str()); if( file.is_open() ) { file >> nLines_; for (int i=0; i<nLines_; ++i) { file>> iz >> ip >> ix >> iy >> fed >> kchip >> pace >> bundle >> fiber >> optorx; senZ_[i] = iz; senP_[i] = ip; senX_[i] = ix; senY_[i] = iy; } } else { cout<<"ESPedestalClient : Look up table file can not be found in "<<lookup_.fullPath().c_str()<<endl; } // define histograms dqmStore_->setCurrentFolder(prefixME_+"/ESPedestalClient"); char hname[300]; for (int i=0; i<nLines_; ++i) { iz = (senZ_[i]==1) ? 0:1; sprintf(hname, "Ped Z %d P %d X %d Y %d", senZ_[i], senP_[i], senX_[i], senY_[i]); hPed_[iz][senP_[i]-1][senX_[i]-1][senY_[i]-1] = dqmStore_->book1D(hname, hname, 32, 0, 32); sprintf(hname, "Total Noise Z %d P %d X %d Y %d", senZ_[i], senP_[i], senX_[i], senY_[i]); hTotN_[iz][senP_[i]-1][senX_[i]-1][senY_[i]-1] = dqmStore_->book1D(hname, hname, 32, 0, 32); } fg = new TF1("fg", "gaus"); }
friend class ESSummaryClient [friend] |
Definition at line 22 of file ESPedestalClient.h.
bool ESPedestalClient::debug_ [private] |
Definition at line 47 of file ESPedestalClient.h.
DQMStore* ESPedestalClient::dqmStore_ [private] |
Definition at line 54 of file ESPedestalClient.h.
bool ESPedestalClient::enableCleanup_ [private] |
Definition at line 45 of file ESPedestalClient.h.
TF1* ESPedestalClient::fg [private] |
Definition at line 59 of file ESPedestalClient.h.
bool ESPedestalClient::fitPedestal_ [private] |
Definition at line 48 of file ESPedestalClient.h.
MonitorElement* ESPedestalClient::hPed_[2][2][40][40] [private] |
Definition at line 56 of file ESPedestalClient.h.
MonitorElement* ESPedestalClient::hTotN_[2][2][40][40] [private] |
Definition at line 57 of file ESPedestalClient.h.
int ESPedestalClient::ievt_ [private] |
Definition at line 43 of file ESPedestalClient.h.
Referenced by getEvtPerJob().
int ESPedestalClient::jevt_ [private] |
Definition at line 44 of file ESPedestalClient.h.
Referenced by getEvtPerRun().
edm::FileInPath ESPedestalClient::lookup_ [private] |
Definition at line 51 of file ESPedestalClient.h.
int ESPedestalClient::nLines_ [private] |
Definition at line 61 of file ESPedestalClient.h.
std::string ESPedestalClient::prefixME_ [private] |
Definition at line 52 of file ESPedestalClient.h.
int ESPedestalClient::senP_[4288] [private] |
Definition at line 65 of file ESPedestalClient.h.
int ESPedestalClient::senX_[4288] [private] |
Definition at line 65 of file ESPedestalClient.h.
int ESPedestalClient::senY_[4288] [private] |
Definition at line 65 of file ESPedestalClient.h.
int ESPedestalClient::senZ_[4288] [private] |
Definition at line 65 of file ESPedestalClient.h.
bool ESPedestalClient::verbose_ [private] |
Definition at line 46 of file ESPedestalClient.h.