7 #include "CLHEP/Random/RandGaussQ.h"
18 bool applyConstantTerm,
19 double rmsConstantTerm)
20 : theParameterMap(parameterMap),
22 applyConstantTerm_(applyConstantTerm),
23 rmsConstantTerm_(rmsConstantTerm)
41 <<
"EcalElectroncSim requires the RandomNumberGeneratorService\n"
42 "which is not present in the configuration file. You must add the service\n"
43 "in the configuration file or remove the modules that require it.";
47 CLHEP::RandGaussQ gaussQDistribution(rng->
getEngine(), 0.0, thisCT);
48 return gaussQDistribution.fire();
virtual const CaloSimParameters & simParameters(const DetId &id) const
return the sim parameters relative to the right subdet
double constantTerm() const
compute the event random constant term
EcalCoder * theCoder
Converts CaloDataFrame in CaloTimeSample and vice versa.
const bool applyConstantTerm_
virtual void analogToDigital(const CaloSamples &clf, EcalDataFrame &df) const
from CaloSamples to EcalDataFrame
void analogToDigital(CaloSamples &clf, EcalDataFrame &df) const
from CaloSamples to EcalDataFrame
const EcalSimParameterMap * theParameterMap
map of parameters
virtual CLHEP::HepRandomEngine & getEngine() const =0
Use this to get the random number engine, this is the only function most users should call...
void amplify(CaloSamples &clf) const
input signal is in pe. Converted in GeV
EcalElectronicsSim(const EcalSimParameterMap *parameterMap, EcalCoder *coder, bool applyConstantTerm, double rmsConstantTerm)
ctor
DetId id() const
get the (generic) id
const double rmsConstantTerm_