1 #ifndef HcalSimAlgos_HcalSimParameters_h
2 #define HcalSimAlgos_HcalSimParameters_h
20 const std::vector<double>& samplingFactors,
std::vector< float > sipmNonlinearity(const DetId &detId) const
const HcalSiPMCharacteristics * theSiPMcharacteristics
double threshold_currentTDC_
double fCtoGeV(const DetId &detId) const
bool doPhotostatistics() const
whether or not to apply Poisson statistics to photoelectrons
int pixels(const DetId &detId) const
~HcalSimParameters() override
Main class for Parameters in different subdetectors.
double timePhase() const
the adjustment you need to apply to get the signal where you want it
HcalTimeSmearSettings theSmearSettings
unsigned int signalShape(const DetId &detId) const
double timeSmearRMS(double ampl) const
bool doSiPMSmearing() const
double simHitToPhotoelectrons() const
std::vector< double > theSamplingFactors
virtual double samplingFactor(const DetId &detId) const
int readoutFrameSize() const
for now, the LinearFrames and trhe digis will be one-to-one.
std::vector< std::pair< double, double > > HcalTimeSmearSettings
void defaultTimeSmearing()
HcalSimParameters(double simHitToPhotoelectrons, double samplingFactor, double timePhase, int readoutFrameSize, int binOfMaximum, bool doPhotostatistics, bool syncPhase, int firstRing, const std::vector< double > &samplingFactors, double sipmTau)
double sipmDarkCurrentuA(const DetId &detId) const
double threshold_currentTDC() const
void setDbService(const HcalDbService *service)
double sipmCrossTalk(const DetId &detId) const
const HcalDbService * theDbService
double photoelectronsToAnalog() const
the factor which goes from photoelectrons to whatever gets read by ADCs