CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
HcalDigitizer.h
Go to the documentation of this file.
1 #ifndef HcalSimProducers_HcalDigitizer_h
2 #define HcalSimProducers_HcalDigitizer_h
3 
14 
15 class CaloHitResponse;
17 class HcalAmplifier;
18 class HPDIonFeedbackSim;
19 class HcalCoderFactory;
20 class HcalElectronicsSim;
21 class HcalHitCorrection;
22 class HcalTimeSlewSim;
24 class HcalShapes;
25 
27 {
28 public:
29 
30  explicit HcalDigitizer(const edm::ParameterSet& ps);
31  virtual ~HcalDigitizer();
32 
34  void produce(edm::Event& e, const edm::EventSetup& c);
35  void beginRun(const edm::EventSetup & es);
36  void endRun();
37 
42 
43 private:
45  void fillFakeHits();
48  void checkGeometry(const edm::EventSetup& eventSetup);
50  void updateGeometry(const edm::EventSetup& eventSetup);
51 
52  void buildHOSiPMCells(const std::vector<DetId>& allCells, const edm::EventSetup& eventSetup);
53 
59 
62 
69 
70  // we need separate amplifiers (and electronicssims)
71  // because they might have separate noise generators
76 
79 
84 
85 
91 
96 
103 
104  // need to cache some DetIds for the digitizers,
105  // if they don't come straight from the geometry
106  std::vector<DetId> theHBHEDetIds;
107  std::vector<DetId> theHOHPDDetIds;
108  std::vector<DetId> theHOSiPMDetIds;
109 
111 
112  std::string hitsProducer_;
113 
115 };
116 
117 #endif
118 
119 
HBHEHitFilter theHBHEHitFilter
Definition: HcalDigitizer.h:86
virtual ~HcalDigitizer()
HcalElectronicsSim * theHFElectronicsSim
Definition: HcalDigitizer.h:81
HBHEDigitizer * theHBHEDigitizer
Definition: HcalDigitizer.h:97
HOHitFilter theHOHitFilter
Definition: HcalDigitizer.h:88
HFDigitizer * theHFDigitizer
HFHitFilter theHFHitFilter
Definition: HcalDigitizer.h:87
void checkGeometry(const edm::EventSetup &eventSetup)
HcalSimParameterMap * theParameterMap
Definition: HcalDigitizer.h:60
void fillFakeHits()
some hits in each subdetector, just for testing purposes
HcalTimeSlewSim * theTimeSlewSim
Definition: HcalDigitizer.h:93
HcalAmplifier * theHFAmplifier
Definition: HcalDigitizer.h:73
HcalDigitizer(const edm::ParameterSet &ps)
HcalCoderFactory * theCoderFactory
Definition: HcalDigitizer.h:78
CaloTDigitizer< HFDigitizerTraits > HFDigitizer
Definition: HcalDigitizer.h:57
HcalAmplifier * theHBHEAmplifier
Definition: HcalDigitizer.h:72
CaloTDigitizer< ZDCDigitizerTraits > ZDCDigitizer
Definition: HcalDigitizer.h:58
std::string hitsProducer_
HcalElectronicsSim * theHOElectronicsSim
Definition: HcalDigitizer.h:82
HcalShapes * theShapes
Definition: HcalDigitizer.h:61
Creates electronics signals from hits.
void setHFNoiseSignalGenerator(HcalBaseSignalGenerator *noiseGenerator)
std::vector< DetId > theHBHEDetIds
void buildHOSiPMCells(const std::vector< DetId > &allCells, const edm::EventSetup &eventSetup)
ZDCHitFilter theZDCHitFilter
Definition: HcalDigitizer.h:90
HPDIonFeedbackSim * theIonFeedback
Definition: HcalDigitizer.h:77
CaloHitResponse * theHOResponse
Definition: HcalDigitizer.h:65
HcalHitFilter theHOSiPMHitFilter
Definition: HcalDigitizer.h:89
CaloHitResponse * theHOSiPMResponse
Definition: HcalDigitizer.h:66
ZDCDigitizer * theZDCDigitizer
std::vector< DetId > theHOHPDDetIds
HcalHitCorrection * theHitCorrection
Definition: HcalDigitizer.h:92
CaloHitResponse * theZDCResponse
Definition: HcalDigitizer.h:68
HcalElectronicsSim * theZDCElectronicsSim
Definition: HcalDigitizer.h:83
void beginRun(const edm::EventSetup &es)
CaloTDigitizer< HODigitizerTraits > HODigitizer
Definition: HcalDigitizer.h:56
HcalAmplifier * theHOAmplifier
Definition: HcalDigitizer.h:74
HcalElectronicsSim * theHBHEElectronicsSim
Definition: HcalDigitizer.h:80
CaloHitResponse * theHBHEResponse
Definition: HcalDigitizer.h:63
HODigitizer * theHODigitizer
Definition: HcalDigitizer.h:99
std::vector< DetId > theHOSiPMDetIds
const CaloGeometry * theGeometry
Definition: HcalDigitizer.h:49
CaloHitResponse * theHFResponse
Definition: HcalDigitizer.h:67
HODigitizer * theHOSiPMDigitizer
void setZDCNoiseSignalGenerator(HcalBaseSignalGenerator *noiseGenerator)
HBHEDigitizer * theHBHESiPMDigitizer
Definition: HcalDigitizer.h:98
CaloHitResponse * theHBHESiPMResponse
Definition: HcalDigitizer.h:64
void updateGeometry(const edm::EventSetup &eventSetup)
void produce(edm::Event &e, const edm::EventSetup &c)
void setHBHENoiseSignalGenerator(HcalBaseSignalGenerator *noiseGenerator)
CaloVNoiseHitGenerator * theNoiseHitGenerator
Definition: HcalDigitizer.h:95
HcalAmplifier * theZDCAmplifier
Definition: HcalDigitizer.h:75
void setHONoiseSignalGenerator(HcalBaseSignalGenerator *noiseGenerator)
CaloTDigitizer< HBHEDigitizerTraits > HBHEDigitizer
Definition: HcalDigitizer.h:55
CaloVNoiseSignalGenerator * theNoiseGenerator
Definition: HcalDigitizer.h:94