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 
16 
17 class CaloVShape;
18 class CaloHitResponse;
20 class HcalAmplifier;
21 class HPDIonFeedbackSim;
22 class HcalCoderFactory;
23 class HcalElectronicsSim;
24 class HcalHitCorrection;
26 
28 {
29 public:
30 
31  explicit HcalDigitizer(const edm::ParameterSet& ps);
32  virtual ~HcalDigitizer();
33 
35  virtual void produce(edm::Event& e, const edm::EventSetup& c);
36 
41 
42 private:
44  void fillFakeHits();
47  void checkGeometry(const edm::EventSetup& eventSetup);
49  void updateGeometry();
50 
51  void buildHOSiPMCells(const std::vector<DetId>& allCells);
52 
58 
68 
75 
76  // we need separate amplifiers (and electronicssims)
77  // because they might have separate noise generators
82 
85 
90 
91 
97 
101 
108 
109  // need to cache some DetIds for the digitizers,
110  // if they don't come straight from the geometry
111  std::vector<DetId> theHBHEDetIds;
112  std::vector<DetId> theHOHPDDetIds;
113  std::vector<DetId> theHOSiPMDetIds;
114 
116 
117  std::string hitsProducer_;
118 
120 };
121 
122 #endif
123 
124 
HBHEHitFilter theHBHEHitFilter
Definition: HcalDigitizer.h:92
virtual ~HcalDigitizer()
HcalElectronicsSim * theHFElectronicsSim
Definition: HcalDigitizer.h:87
HBHEDigitizer * theHBHEDigitizer
HOHitFilter theHOHitFilter
Definition: HcalDigitizer.h:94
Electronic response of the preamp.
Definition: CaloVShape.h:11
HFDigitizer * theHFDigitizer
HFHitFilter theHFHitFilter
Definition: HcalDigitizer.h:93
void checkGeometry(const edm::EventSetup &eventSetup)
HcalSimParameterMap * theParameterMap
Definition: HcalDigitizer.h:59
CaloVShape * theZDCIntegratedShape
Definition: HcalDigitizer.h:67
void fillFakeHits()
some hits in each subdetector, just for testing purposes
CaloVShape * theHcalIntegratedShape
Definition: HcalDigitizer.h:64
HcalAmplifier * theHFAmplifier
Definition: HcalDigitizer.h:79
HcalDigitizer(const edm::ParameterSet &ps)
HcalCoderFactory * theCoderFactory
Definition: HcalDigitizer.h:84
void updateGeometry()
CaloTDigitizer< HFDigitizerTraits > HFDigitizer
Definition: HcalDigitizer.h:56
CaloVShape * theSiPMIntegratedShape
Definition: HcalDigitizer.h:65
HcalAmplifier * theHBHEAmplifier
Definition: HcalDigitizer.h:78
CaloTDigitizer< ZDCDigitizerTraits > ZDCDigitizer
Definition: HcalDigitizer.h:57
std::string hitsProducer_
HcalElectronicsSim * theHOElectronicsSim
Definition: HcalDigitizer.h:88
Creates electronics signals from hits.
void setHFNoiseSignalGenerator(HcalBaseSignalGenerator *noiseGenerator)
std::vector< DetId > theHBHEDetIds
CaloVShape * theSiPMShape
Definition: HcalDigitizer.h:61
ZDCHitFilter theZDCHitFilter
Definition: HcalDigitizer.h:96
HPDIonFeedbackSim * theIonFeedback
Definition: HcalDigitizer.h:83
CaloHitResponse * theHOResponse
Definition: HcalDigitizer.h:71
HcalHitFilter theHOSiPMHitFilter
Definition: HcalDigitizer.h:95
CaloHitResponse * theHOSiPMResponse
Definition: HcalDigitizer.h:72
ZDCDigitizer * theZDCDigitizer
std::vector< DetId > theHOHPDDetIds
HcalHitCorrection * theHitCorrection
Definition: HcalDigitizer.h:98
CaloHitResponse * theZDCResponse
Definition: HcalDigitizer.h:74
CaloVShape * theZDCShape
Definition: HcalDigitizer.h:63
HcalElectronicsSim * theZDCElectronicsSim
Definition: HcalDigitizer.h:89
CaloTDigitizer< HODigitizerTraits > HODigitizer
Definition: HcalDigitizer.h:55
HcalAmplifier * theHOAmplifier
Definition: HcalDigitizer.h:80
HcalElectronicsSim * theHBHEElectronicsSim
Definition: HcalDigitizer.h:86
CaloHitResponse * theHBHEResponse
Definition: HcalDigitizer.h:69
HODigitizer * theHODigitizer
std::vector< DetId > theHOSiPMDetIds
const CaloGeometry * theGeometry
Definition: HcalDigitizer.h:48
CaloVShape * theHFShape
Definition: HcalDigitizer.h:62
CaloHitResponse * theHFResponse
Definition: HcalDigitizer.h:73
HODigitizer * theHOSiPMDigitizer
void setZDCNoiseSignalGenerator(HcalBaseSignalGenerator *noiseGenerator)
HBHEDigitizer * theHBHESiPMDigitizer
CaloVShape * theHFIntegratedShape
Definition: HcalDigitizer.h:66
void buildHOSiPMCells(const std::vector< DetId > &allCells)
CaloHitResponse * theHBHESiPMResponse
Definition: HcalDigitizer.h:70
CaloVShape * theHcalShape
Definition: HcalDigitizer.h:60
virtual void produce(edm::Event &e, const edm::EventSetup &c)
void setHBHENoiseSignalGenerator(HcalBaseSignalGenerator *noiseGenerator)
CaloVNoiseHitGenerator * theNoiseHitGenerator
HcalAmplifier * theZDCAmplifier
Definition: HcalDigitizer.h:81
void setHONoiseSignalGenerator(HcalBaseSignalGenerator *noiseGenerator)
CaloTDigitizer< HBHEDigitizerTraits > HBHEDigitizer
Definition: HcalDigitizer.h:54
CaloVNoiseSignalGenerator * theNoiseGenerator
Definition: HcalDigitizer.h:99