1 #ifndef EcalSimAlgos_EBHitResponse_h 2 #define EcalSimAlgos_EBHitResponse_h 12 class HepRandomEngine;
15 template <
class constset>
20 typedef std::vector<double>
VecD;
22 static constexpr
size_t kNOffsets = constset::kNOffsets;
75 const double enr(log10(
energy));
76 const double enr2(enr * enr);
77 const double enr3(enr2 * enr);
107 #include "EBHitResponse.icc" const APDSimParameters * apdParameters() const
void putAnalogSignal(const PCaloHit &inputHit, CLHEP::HepRandomEngine *) override
void findIntercalibConstant(const DetId &detId, double &icalconst) const
std::vector< double > m_apdTimeVec
std::vector< double > VecD
std::vector< EBSamples > m_vSam
~EBHitResponseImpl() override
virtual bool keepBlank() const
EcalSamples * operator[](unsigned int i) override
Electronic response of the preamp.
const EcalIntercalibConstantsMC * m_intercal
static constexpr double kSamplePeriod
std::vector< double > m_timeOffVec
void initializeHits() override
static constexpr size_t kNOffsets
const CaloVShape * apdShape() const
unsigned int samplesSize() const override
const double nonlFunc(double enr) const
const double nonlFunc1(double energy) const
std::vector< double > m_apdNpeVec
CaloTSamples< float, constset::sampleSize > EBSamples
CaloTSamplesBase< float > EcalSamples
EBHitResponseImpl< ecalPh2 > EBHitResponse_Ph2
void setIntercal(const EcalIntercalibConstantsMC *ical)
EBHitResponseImpl(const CaloVSimParameterMap *parameterMap, const CaloVShape *shape, bool apdOnly, const APDSimParameters *apdPars=nullptr, const CaloVShape *apdShape=nullptr)
EcalSamples * vSamAll(unsigned int i) override
void initialize(CLHEP::HepRandomEngine *)
void finalizeHits() override
const VecD & offsets() const
void add(const PCaloHit &hit, CLHEP::HepRandomEngine *) override
const APDSimParameters * m_apdPars
EcalSamples * vSam(unsigned int i) override
void putAPDSignal(const DetId &detId, double npe, double time)
const CaloVShape * m_apdShape
void run(MixCollection< PCaloHit > &hits, CLHEP::HepRandomEngine *) override
EBHitResponseImpl< ecalPh1 > EBHitResponse
double apdSignalAmplitude(const PCaloHit &hit, CLHEP::HepRandomEngine *) const
unsigned int samplesSizeAll() const override
const CaloVShape * shape() const