CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
HcalTBDigiProducer.h
Go to the documentation of this file.
1 #ifndef SimCalorimetry_HcalTestBeam_HcalTBDigiProducer_h
2 #define SimCalorimetry_HcalTestBeam_HcalTBDigiProducer_h
3 
20 
21 #include<vector>
22 #include<string>
23 
24 class PEcalTBInfo;
25 
26 namespace edm {
27  class StreamID;
28 }
29 
30 namespace CLHEP {
31  class HepRandomEngine;
32 }
33 
35 public:
36 
38  virtual ~HcalTBDigiProducer();
39 
40  virtual void initializeEvent(edm::Event const& e, edm::EventSetup const& c) override;
41  virtual void accumulate(edm::Event const& e, edm::EventSetup const& c) override ;
42  virtual void accumulate(PileUpEventPrincipal const& e, edm::EventSetup const& c, edm::StreamID const&) override;
43  virtual void finalizeEvent(edm::Event& e, edm::EventSetup const& c) override;
44 
45 private:
46  void accumulateCaloHits(edm::Handle<std::vector<PCaloHit> > const& hits, int bunchCrossing, CLHEP::HepRandomEngine*);
47 
49  void sortHits(const edm::PCaloHitContainer & hits);
52  void checkGeometry(const edm::EventSetup& eventSetup);
53  void updateGeometry();
54 
55  void setPhaseShift(const DetId & detId);
56 
57  CLHEP::HepRandomEngine* randomEngine(edm::StreamID const& streamID);
58 
59 private:
60 
64 
68 
71 
75 
78 
80 
83 
85  std::vector<DetId> hbheCells;
86  std::vector<DetId> hoCells;
87 
88  std::vector<PCaloHit> theHBHEHits, theHOHits;
89 
92 
95 
96  std::vector<CLHEP::HepRandomEngine*> randomEngines_;
97 };
98 
99 #endif
void setPhaseShift(const DetId &detId)
virtual void finalizeEvent(edm::Event &e, edm::EventSetup const &c) override
void sortHits(const edm::PCaloHitContainer &hits)
fills the vectors for each subdetector
std::vector< PCaloHit > PCaloHitContainer
std::vector< DetId > hoCells
CaloHitResponse * theHBHEResponse
HBHEHitFilter theHBHEHitFilter
HODigitizer * theHODigitizer
HcalElectronicsSim * theElectronicsSim
Electronic response of the preamp.
Definition: CaloVShape.h:11
HOHitFilter theHOHitFilter
HcalTBSimParameterMap * theParameterMap
std::vector< CLHEP::HepRandomEngine * > randomEngines_
const CaloGeometry * theGeometry
CaloTDigitizer< HBHEDigitizerTraits > HBHEDigitizer
std::vector< PCaloHit > theHBHEHits
CaloTDigitizer< HODigitizerTraits > HODigitizer
CLHEP::HepRandomEngine * randomEngine(edm::StreamID const &streamID)
CaloVShape * theHcalIntegratedShape
Creates electronics signals from hits.
HcalTBDigiProducer(const edm::ParameterSet &ps, edm::stream::EDProducerBase &mixMod, edm::ConsumesCollector &iC)
HBHEDigitizer * theHBHEDigitizer
void checkGeometry(const edm::EventSetup &eventSetup)
std::vector< DetId > hbheCells
virtual void accumulate(edm::Event const &e, edm::EventSetup const &c) override
std::vector< PCaloHit > theHOHits
Definition: DetId.h:18
CaloHitResponse * theHOResponse
HcalAmplifier * theAmplifier
std::string ecalTBInfoLabel
HcalCoderFactory * theCoderFactory
CaloVShape * theHcalShape
virtual void initializeEvent(edm::Event const &e, edm::EventSetup const &c) override
HcalTimeSlewSim * theTimeSlewSim
void accumulateCaloHits(edm::Handle< std::vector< PCaloHit > > const &hits, int bunchCrossing, CLHEP::HepRandomEngine *)