CMS 3D CMS Logo

EcalTDigitizer.h
Go to the documentation of this file.
1 #ifndef EcalSimAlgos_EcalTDigitizer_h
2 #define EcalSimAlgos_EcalTDigitizer_h
3 
14 
15 class EcalHitResponse;
17 
18 namespace CLHEP {
19  class HepRandomEngine;
20 }
21 
22 template <class Traits>
24 public:
25  typedef typename Traits::ElectronicsSim ElectronicsSim;
26  typedef typename Traits::Digi Digi;
28  typedef typename Traits::EcalSamples EcalSamples;
29 
31 
32  virtual ~EcalTDigitizer();
33 
34  void add(const std::vector<PCaloHit>& hits, int bunchCrossing, CLHEP::HepRandomEngine*);
35 
36  virtual void initializeHits();
37 
38  virtual void run(DigiCollection& output, CLHEP::HepRandomEngine*);
39 
41 
42  void setNoiseSignalGenerator(EcalBaseSignalGenerator* noiseSignalGenerator);
43 
44  void addNoiseSignals();
45 
46 protected:
47  bool addNoise() const;
48 
49  const EcalHitResponse* hitResponse() const;
50 
51  const ElectronicsSim* elecSim() const;
52 
53 private:
56  bool m_addNoise;
57 
59 };
60 
61 #endif
void add(const std::vector< PCaloHit > &hits, int bunchCrossing, CLHEP::HepRandomEngine *)
Traits::DigiCollection DigiCollection
bool addNoise() const
Traits::ElectronicsSim ElectronicsSim
void setNoiseSignalGenerator(EcalBaseSignalGenerator *noiseSignalGenerator)
assert(be >=bs)
EcalTDigitizer(EcalHitResponse *hitResponse, ElectronicsSim *electronicsSim, bool addNoise)
virtual void initializeHits()
static std::string const input
Definition: EdmProvDump.cc:50
void addNoiseSignals()
virtual ~EcalTDigitizer()
virtual void run(MixCollection< PCaloHit > &input, DigiCollection &output)
const ElectronicsSim * elecSim() const
const EcalHitResponse * hitResponse() const
virtual void run(DigiCollection &output, CLHEP::HepRandomEngine *)
Traits::EcalSamples EcalSamples
Traits::Digi Digi
Definition: output.py:1
EcalBaseSignalGenerator * theNoiseSignalGenerator
EcalHitResponse * m_hitResponse
ElectronicsSim * m_electronicsSim