00001 00002 #ifndef EcalSimAlgos_EcalElectronicsSim_h 00003 #define EcalSimAlgos_EcalElectronicsSim_h 1 00004 00005 00006 #include "CalibFormats/CaloObjects/interface/CaloSamples.h" 00007 00008 00009 class EcalCoder; 00010 class EcalDataFrame; 00011 class EcalSimParameterMap; 00012 00013 00014 /* \class EcalElectronicsSim 00015 * \brief Converts CaloDataFrame in CaloTimeSample and vice versa. 00016 * 00017 */ 00018 class EcalElectronicsSim 00019 { 00020 public: 00022 EcalElectronicsSim(const EcalSimParameterMap * parameterMap, EcalCoder * coder, bool applyConstantTerm, double rmsConstantTerm) ; 00023 00025 void amplify(CaloSamples & clf) const; 00026 00028 void analogToDigital(CaloSamples& clf, EcalDataFrame& df) const; 00030 double constantTerm() const; 00031 00033 void newEvent() {} 00034 00035 private: 00036 00038 const EcalSimParameterMap * theParameterMap; 00040 EcalCoder * theCoder; 00041 const bool applyConstantTerm_; 00042 const double rmsConstantTerm_; 00043 } ; 00044 00045 00046 #endif