#include <SimCalorimetry/HcalSimAlgos/interface/HPDNoiseMaker.h>
Public Member Functions | |
int | addHpd (const std::string &fName) |
define new HPD instance | |
HPDNoiseMaker (const std::string &fFileName) | |
void | newHpdEvent (size_t i, const HPDNoiseData &mData) |
add new HPD noise event by HPD index | |
void | newHpdEvent (const std::string &mName, const HPDNoiseData &mData) |
add new HPD noise event by HPD name | |
void | setRate (const std::string &fName, float fRate) |
set noise rate for the instance | |
unsigned long | totalEntries (const std::string &mName) const |
get number of stored events by HPD index | |
~HPDNoiseMaker () | |
Private Member Functions | |
HPDNoiseMaker (const HPDNoiseMaker &) | |
HPDNoiseMaker & | operator= (const HPDNoiseMaker &) |
Private Attributes | |
HPDNoiseDataCatalog * | mCatalog |
TFile * | mFile |
std::vector< std::string > | mNames |
std::vector< TTree * > | mTrees |
Definition at line 19 of file HPDNoiseMaker.h.
HPDNoiseMaker::HPDNoiseMaker | ( | const std::string & | fFileName | ) |
Definition at line 20 of file HPDNoiseMaker.cc.
References mCatalog, and mFile.
00020 { 00021 mFile = new TFile (fFileName.c_str(), "RECREATE"); 00022 mCatalog = new HPDNoiseDataCatalog (); 00023 }
HPDNoiseMaker::~HPDNoiseMaker | ( | ) |
Definition at line 25 of file HPDNoiseMaker.cc.
References i, mCatalog, mFile, and mTrees.
00025 { 00026 mFile->cd(); 00027 for (size_t i = 0; i < mTrees.size(); ++i) { 00028 mTrees[i]->Write(); 00029 delete mTrees[i]; 00030 } 00031 mCatalog->Write(); 00032 delete mCatalog; 00033 delete mFile; 00034 }
HPDNoiseMaker::HPDNoiseMaker | ( | const HPDNoiseMaker & | ) | [private] |
int HPDNoiseMaker::addHpd | ( | const std::string & | fName | ) |
define new HPD instance
Definition at line 36 of file HPDNoiseMaker.cc.
References HPDNoiseDataCatalog::addHpd(), addr, mCatalog, mFile, mNames, and mTrees.
00036 { 00037 TDirectory* currentDirectory = gDirectory; 00038 mFile->cd(); 00039 mCatalog->addHpd (fName, 0.); 00040 mNames.push_back (fName); 00041 mTrees.push_back (new TTree (fName.c_str(), fName.c_str())); 00042 void* addr = 0; 00043 mTrees.back()->Branch ("HPDNoiseData", "HPDNoiseData", &addr, 32000, 1); 00044 currentDirectory->cd(); 00045 return mNames.size(); 00046 }
void HPDNoiseMaker::newHpdEvent | ( | size_t | i, | |
const HPDNoiseData & | mData | |||
) |
add new HPD noise event by HPD index
Definition at line 60 of file HPDNoiseMaker.cc.
00060 { 00061 if (i < mTrees.size()) { 00062 HPDNoiseData* data = (HPDNoiseData*) &fData; 00063 mTrees[i]->GetBranch ("HPDNoiseData")->SetAddress(&data); 00064 mTrees[i]->Fill(); 00065 } 00066 }
void HPDNoiseMaker::newHpdEvent | ( | const std::string & | mName, | |
const HPDNoiseData & | mData | |||
) |
HPDNoiseMaker& HPDNoiseMaker::operator= | ( | const HPDNoiseMaker & | ) | [private] |
void HPDNoiseMaker::setRate | ( | const std::string & | fName, | |
float | fRate | |||
) |
set noise rate for the instance
Definition at line 48 of file HPDNoiseMaker.cc.
References mCatalog, and HPDNoiseDataCatalog::setRate().
unsigned long HPDNoiseMaker::totalEntries | ( | const std::string & | mName | ) | const |
HPDNoiseDataCatalog* HPDNoiseMaker::mCatalog [private] |
Definition at line 42 of file HPDNoiseMaker.h.
Referenced by addHpd(), HPDNoiseMaker(), setRate(), and ~HPDNoiseMaker().
TFile* HPDNoiseMaker::mFile [private] |
Definition at line 39 of file HPDNoiseMaker.h.
Referenced by addHpd(), HPDNoiseMaker(), and ~HPDNoiseMaker().
std::vector<std::string> HPDNoiseMaker::mNames [private] |
Definition at line 41 of file HPDNoiseMaker.h.
Referenced by addHpd(), newHpdEvent(), and totalEntries().
std::vector<TTree*> HPDNoiseMaker::mTrees [private] |
Definition at line 40 of file HPDNoiseMaker.h.
Referenced by addHpd(), newHpdEvent(), totalEntries(), and ~HPDNoiseMaker().