#include <ESPedestalTask.h>
Public Member Functions | |
ESPedestalTask (const edm::ParameterSet &ps) | |
virtual | ~ESPedestalTask () |
Private Member Functions | |
void | analyze (const edm::Event &, const edm::EventSetup &) |
void | beginJob (void) |
void | beginRun (const edm::Run &r, const edm::EventSetup &c) |
void | cleanup (void) |
void | endJob (void) |
void | endRun (const edm::Run &r, const edm::EventSetup &c) |
void | reset (void) |
void | setup (void) |
Private Attributes | |
int | dac_ |
edm::InputTag | digilabel_ |
DQMStore * | dqmStore_ |
bool | enableCleanup_ |
int | firstDAC_ |
int | gain_ |
int | ievt_ |
bool | init_ |
int | isPed_ |
edm::FileInPath | lookup_ |
MonitorElement * | meADC_ [4288][32] |
bool | mergeRuns_ |
int | nDAC_ |
int | nLines_ |
std::string | outputFile_ |
int | precision_ |
std::string | prefixME_ |
int | runNum_ |
int | runtype_ |
int | senCount_ [2][2][40][40] |
int | seqtype_ |
int | vDAC_ [5] |
Definition at line 11 of file ESPedestalTask.h.
ESPedestalTask::ESPedestalTask | ( | const edm::ParameterSet & | ps | ) |
Definition at line 27 of file ESPedestalTask.cc.
References edm::ParameterSet::getParameter(), edm::ParameterSet::getUntrackedParameter(), i, j, gen::k, prof2calltree::l, and cmsCodeRules::cppFunctionSkipper::operator.
{ init_ = false; dqmStore_ = Service<DQMStore>().operator->(); digilabel_ = ps.getParameter<InputTag>("DigiLabel"); lookup_ = ps.getUntrackedParameter<FileInPath>("LookupTable"); outputFile_ = ps.getUntrackedParameter<string>("OutputFile",""); prefixME_ = ps.getUntrackedParameter<string>("prefixME", "EcalPreshower"); for (int i=0; i<2; ++i) for (int j=0; j<2; ++j) for (int k=0; k<40; ++k) for (int l=0; l<40; ++l) senCount_[i][j][k][l] = -1; }
ESPedestalTask::~ESPedestalTask | ( | ) | [virtual] |
Definition at line 46 of file ESPedestalTask.cc.
{ }
void ESPedestalTask::analyze | ( | const edm::Event & | e, |
const edm::EventSetup & | iSetup | ||
) | [private, virtual] |
Implements edm::EDAnalyzer.
Definition at line 126 of file ESPedestalTask.cc.
References ESSample::adc(), edm::Event::getByLabel(), edm::EventBase::id(), ESDataFrame::id(), edm::HandleBase::isValid(), edm::EventID::run(), ESDataFrame::sample(), HcalObjRepresent::setup(), strip(), and ESDetId::zside().
{ if ( ! init_ ) this->setup(); ievt_++; runNum_ = e.id().run(); Handle<ESDigiCollection> digis; e.getByLabel(digilabel_, digis); runtype_ = 1; // Let runtype_ = 1 // Digis int zside, plane, ix, iy, strip, iz; if (digis.isValid()) { for (ESDigiCollection::const_iterator digiItr = digis->begin(); digiItr != digis->end(); ++digiItr) { ESDataFrame dataframe = (*digiItr); ESDetId id = dataframe.id(); zside = id.zside(); plane = id.plane(); ix = id.six(); iy = id.siy(); strip = id.strip(); iz = (zside==1) ? 0:1; if (meADC_[senCount_[iz][plane-1][ix-1][iy-1]][strip-1]) { if(runtype_ == 1){ meADC_[senCount_[iz][plane-1][ix-1][iy-1]][strip-1]->Fill(dataframe.sample(0).adc()); meADC_[senCount_[iz][plane-1][ix-1][iy-1]][strip-1]->Fill(dataframe.sample(1).adc()); meADC_[senCount_[iz][plane-1][ix-1][iy-1]][strip-1]->Fill(dataframe.sample(2).adc()); } else if(runtype_ == 3) { meADC_[senCount_[iz][plane-1][ix-1][iy-1]][strip-1]->Fill(dataframe.sample(1).adc()); } } } } }
void ESPedestalTask::beginJob | ( | void | ) | [private, virtual] |
void ESPedestalTask::beginRun | ( | const edm::Run & | r, |
const edm::EventSetup & | c | ||
) | [private, virtual] |
Reimplemented from edm::EDAnalyzer.
Definition at line 53 of file ESPedestalTask.cc.
References reset().
{ if ( ! mergeRuns_ ) this->reset(); }
void ESPedestalTask::cleanup | ( | void | ) | [private] |
Definition at line 111 of file ESPedestalTask.cc.
void ESPedestalTask::endJob | ( | void | ) | [private, virtual] |
Reimplemented from edm::EDAnalyzer.
Definition at line 118 of file ESPedestalTask.cc.
References edm::cleanup().
{ LogInfo("ESPedestalTask") << "analyzed " << ievt_ << " events"; if ( enableCleanup_ ) this->cleanup(); }
void ESPedestalTask::endRun | ( | const edm::Run & | r, |
const edm::EventSetup & | c | ||
) | [private, virtual] |
void ESPedestalTask::reset | ( | void | ) | [private] |
Definition at line 62 of file ESPedestalTask.cc.
{ }
void ESPedestalTask::setup | ( | void | ) | [private] |
Definition at line 66 of file ESPedestalTask.cc.
References gather_cfg::cout, mergeVDriftHistosByStation::file, and i.
{ init_ = true; int iz, ip, ix, iy, fed, kchip, pace, bundle, fiber, optorx; int senZ_[4288], senP_[4288], senX_[4288], senY_[4288]; // read in look-up table 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; iz = (senZ_[i]==1) ? 0:1; senCount_[iz][senP_[i]-1][senX_[i]-1][senY_[i]-1] = i; } } else { cout<<"ESPedestalTask : Look up table file can not be found in "<<lookup_.fullPath().c_str()<<endl; } char hname[300]; if (dqmStore_) { dqmStore_->setCurrentFolder(prefixME_ + "/ESPedestalTask"); for (int i=0; i<nLines_; ++i) { for (int is=0; is<32; ++is) { sprintf(hname, "ADC Z %d P %d X %d Y %d Str %d", senZ_[i], senP_[i], senX_[i], senY_[i], is+1); meADC_[i][is] = dqmStore_->book1D(hname, hname, 1000, 899.5, 1899.5); } } } }
int ESPedestalTask::dac_ [private] |
Definition at line 42 of file ESPedestalTask.h.
edm::InputTag ESPedestalTask::digilabel_ [private] |
Definition at line 29 of file ESPedestalTask.h.
DQMStore* ESPedestalTask::dqmStore_ [private] |
Definition at line 37 of file ESPedestalTask.h.
bool ESPedestalTask::enableCleanup_ [private] |
Definition at line 34 of file ESPedestalTask.h.
int ESPedestalTask::firstDAC_ [private] |
Definition at line 43 of file ESPedestalTask.h.
int ESPedestalTask::gain_ [private] |
Definition at line 42 of file ESPedestalTask.h.
int ESPedestalTask::ievt_ [private] |
Definition at line 41 of file ESPedestalTask.h.
bool ESPedestalTask::init_ [private] |
Definition at line 40 of file ESPedestalTask.h.
int ESPedestalTask::isPed_ [private] |
Definition at line 43 of file ESPedestalTask.h.
edm::FileInPath ESPedestalTask::lookup_ [private] |
Definition at line 30 of file ESPedestalTask.h.
MonitorElement* ESPedestalTask::meADC_[4288][32] [private] |
Definition at line 38 of file ESPedestalTask.h.
bool ESPedestalTask::mergeRuns_ [private] |
Definition at line 35 of file ESPedestalTask.h.
int ESPedestalTask::nDAC_ [private] |
Definition at line 43 of file ESPedestalTask.h.
int ESPedestalTask::nLines_ [private] |
Definition at line 41 of file ESPedestalTask.h.
std::string ESPedestalTask::outputFile_ [private] |
Definition at line 31 of file ESPedestalTask.h.
int ESPedestalTask::precision_ [private] |
Definition at line 42 of file ESPedestalTask.h.
std::string ESPedestalTask::prefixME_ [private] |
Definition at line 32 of file ESPedestalTask.h.
int ESPedestalTask::runNum_ [private] |
Definition at line 41 of file ESPedestalTask.h.
int ESPedestalTask::runtype_ [private] |
Definition at line 42 of file ESPedestalTask.h.
int ESPedestalTask::senCount_[2][2][40][40] [private] |
Definition at line 41 of file ESPedestalTask.h.
int ESPedestalTask::seqtype_ [private] |
Definition at line 42 of file ESPedestalTask.h.
int ESPedestalTask::vDAC_[5] [private] |
Definition at line 43 of file ESPedestalTask.h.