CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
HcalElectronicsSim.h
Go to the documentation of this file.
1 #ifndef HcalSimAlgos_HcalElectronicsSim_h
2 #define HcalSimAlgos_HcalElectronicsSim_h
3 
9 #include "CLHEP/Random/RandFlat.h"
10 
11 class HBHEDataFrame;
12 class HODataFrame;
13 class HFDataFrame;
14 class ZDCDataFrame;
15 
16 class HcalAmplifier;
17 class HcalCoderFactory;
18 
20 public:
21  HcalElectronicsSim(HcalAmplifier * amplifier,
22  const HcalCoderFactory * coderFactory);
24 
25  void setRandomEngine(CLHEP::HepRandomEngine & engine);
26 
27  void analogToDigital(CaloSamples & linearFrame, HBHEDataFrame & result);
28  void analogToDigital(CaloSamples & linearFrame, HODataFrame & result);
29  void analogToDigital(CaloSamples & linearFrame, HFDataFrame & result);
30  void analogToDigital(CaloSamples & linearFrame, ZDCDataFrame & result);
31 
34  void newEvent();
35  void setStartingCapId(int startingCapId);
36 
37 private:
38  template<class Digi> void convert(CaloSamples & frame, Digi & result);
39 
42  CLHEP::RandFlat * theRandFlat;
43 
46 };
47 
48 
49 #endif
50 
HcalAmplifier * theAmplifier
void setStartingCapId(int startingCapId)
void convert(CaloSamples &frame, Digi &result)
HcalElectronicsSim(HcalAmplifier *amplifier, const HcalCoderFactory *coderFactory)
void analogToDigital(CaloSamples &linearFrame, HBHEDataFrame &result)
tuple result
Definition: query.py:137
const HcalCoderFactory * theCoderFactory
CLHEP::RandFlat * theRandFlat
void setRandomEngine(CLHEP::HepRandomEngine &engine)