1 #ifndef EcalSimAlgos_EcalElectronicsSim_h
2 #define EcalSimAlgos_EcalElectronicsSim_h
5 #include "CLHEP/Random/RandGaussQ.h"
11 class HepRandomEngine;
19 template <
typename CoderType,
typename SamplesType,
typename DataFrameType>
30 void analogToDigital(CLHEP::HepRandomEngine* engine, SamplesType& clf, DataFrameType&
df)
const {
44 void amplify(SamplesType& clf, CLHEP::HepRandomEngine* engine)
const {
47 clf *= fac * CLHEP::RandGaussQ::shoot(engine, 1.0,
m_thisCT);
const bool applyConstantTerm
const CaloSimParameters & simParameters(const DetId &id) const override
return the sim parameters relative to the right subdet
void setNoiseSignalGenerator(const CaloVNoiseSignalGenerator *noiseSignalGenerator)
void amplify(SamplesType &clf, CLHEP::HepRandomEngine *engine) const
input signal is in pe. Converted in GeV
const EcalSimParameterMap * m_simMap
map of parameters
void analogToDigital(CLHEP::HepRandomEngine *engine, SamplesType &clf, DataFrameType &df) const
from EcalSamples to EcalDataFrame
const double rmsConstantTerm
EcalElectronicsSim(const EcalSimParameterMap *parameterMap, CoderType *coder, bool applyConstantTerm, double rmsConstantTerm)
const CaloVNoiseSignalGenerator * theNoiseSignalGenerator
const bool m_applyConstantTerm