#include <CalibTracker/SiStripESProducers/plugins/fake/SiStripNoiseFakeESSource.h>
Public Member Functions | |
SiStripNoiseFakeESSource (const edm::ParameterSet &) | |
virtual | ~SiStripNoiseFakeESSource () |
Private Member Functions | |
SiStripNoises * | makeNoise () |
Private Attributes | |
double | electronsPerADC_ |
edm::FileInPath | fp_ |
double | noiseStripLengthLinearQuote_ |
double | noiseStripLengthLinearSlope_ |
bool | printdebug_ |
Definition at line 21 of file SiStripNoiseFakeESSource.h.
SiStripNoiseFakeESSource::SiStripNoiseFakeESSource | ( | const edm::ParameterSet & | pset | ) |
Definition at line 9 of file SiStripNoiseFakeESSource.cc.
References electronsPerADC_, fp_, edm::ParameterSet::getParameter(), edm::ParameterSet::getUntrackedParameter(), noiseStripLengthLinearQuote_, noiseStripLengthLinearSlope_, and printdebug_.
00009 : SiStripNoiseESSource(pset) { 00010 00011 edm::LogInfo("SiStripNoiseFakeESSource::SiStripNoiseFakeESSource"); 00012 00013 noiseStripLengthLinearSlope_ = pset.getParameter<double>("NoiseStripLengthSlope"); 00014 noiseStripLengthLinearQuote_ = pset.getParameter<double>("NoiseStripLengthQuote"); 00015 electronsPerADC_ = pset.getParameter<double>("electronPerAdc"); 00016 00017 fp_ = pset.getParameter<edm::FileInPath>("file"); 00018 00019 printdebug_ = pset.getUntrackedParameter<bool>("printDebug", false); 00020 00021 00022 // edm::LogInfo("SiStripNoiseFakeESSource::SiStripNoiseFakeESSource - exiting"); 00023 00024 }
virtual SiStripNoiseFakeESSource::~SiStripNoiseFakeESSource | ( | ) | [inline, virtual] |
SiStripNoises * SiStripNoiseFakeESSource::makeNoise | ( | ) | [private, virtual] |
Implements SiStripNoiseESSource.
Definition at line 27 of file SiStripNoiseFakeESSource.cc.
References electronsPerADC_, lat::endl(), fp_, edm::FileInPath::fullPath(), j, noiseStripLengthLinearQuote_, noiseStripLengthLinearSlope_, VarParsing::obj, printdebug_, SiStripNoises::put(), SiStripNoises::setData(), and strip().
00027 { 00028 00029 SiStripNoises * obj = new SiStripNoises(); 00030 00031 SiStripDetInfoFileReader reader(fp_.fullPath()); 00032 // SiStripDetInfoFileReader reader(""); 00033 00034 const std::vector<uint32_t> DetIds = reader.getAllDetIds(); 00035 00036 bool firstdet=true; 00037 00038 for(std::vector<uint32_t>::const_iterator detit=DetIds.begin(); detit!=DetIds.end(); detit++){ 00039 00040 SiStripNoises::InputVector theSiStripVector; 00041 00042 const std::pair<unsigned short, double> ApvsAndStripLengths = reader.getNumberOfApvsAndStripLength(*detit); 00043 00044 for(unsigned short j=0; j<ApvsAndStripLengths.first; j++){ 00045 00046 for(int strip=0; strip<128; ++strip){ 00047 00048 float noise = ( noiseStripLengthLinearSlope_ * (ApvsAndStripLengths.second) + noiseStripLengthLinearQuote_) / electronsPerADC_; 00049 00050 00051 if (printdebug_ && firstdet) { 00052 00053 edm::LogInfo("SiStripNoiseFakeESSource::makeNoise(): ") << "detid: " << *detit << " strip: " << j*128+strip << " noise: " << noise << " \t" << std::endl; 00054 00055 00056 } 00057 00058 00059 obj->setData(noise,theSiStripVector); 00060 00061 } 00062 00063 } 00064 00065 firstdet=false; 00066 00067 if ( ! obj->put(*detit, theSiStripVector) ) 00068 edm::LogError("SiStripNoiseFakeESSource::produce ")<<" detid already exists"<<std::endl; 00069 00070 } 00071 00072 00073 return obj; 00074 00075 00076 }
double SiStripNoiseFakeESSource::electronsPerADC_ [private] |
Definition at line 40 of file SiStripNoiseFakeESSource.h.
Referenced by makeNoise(), and SiStripNoiseFakeESSource().
edm::FileInPath SiStripNoiseFakeESSource::fp_ [private] |
Definition at line 43 of file SiStripNoiseFakeESSource.h.
Referenced by makeNoise(), and SiStripNoiseFakeESSource().
double SiStripNoiseFakeESSource::noiseStripLengthLinearQuote_ [private] |
Definition at line 39 of file SiStripNoiseFakeESSource.h.
Referenced by makeNoise(), and SiStripNoiseFakeESSource().
double SiStripNoiseFakeESSource::noiseStripLengthLinearSlope_ [private] |
Definition at line 38 of file SiStripNoiseFakeESSource.h.
Referenced by makeNoise(), and SiStripNoiseFakeESSource().
bool SiStripNoiseFakeESSource::printdebug_ [private] |
Definition at line 42 of file SiStripNoiseFakeESSource.h.
Referenced by makeNoise(), and SiStripNoiseFakeESSource().