CMS 3D CMS Logo

PreMixingEcalWorker.cc
Go to the documentation of this file.
8 
16 
19 
21 public:
23  ~PreMixingEcalWorker() override = default;
24 
25  PreMixingEcalWorker(const PreMixingEcalWorker &) = delete;
27 
29 
30  void initializeEvent(edm::Event const &e, edm::EventSetup const &ES) override;
31  void addSignals(edm::Event const &e, edm::EventSetup const &ES) override;
32  void addPileups(PileUpEventPrincipal const &pep, edm::EventSetup const &es) override;
33  void put(edm::Event &e, edm::EventSetup const &iSetup, std::vector<PileupSummaryInfo> const &ps, int bs) override;
34 
35 private:
36  edm::InputTag EBPileInputTag_; // InputTag for Pileup Digis collection
37  edm::InputTag EEPileInputTag_; // InputTag for Pileup Digis collection
38  edm::InputTag ESPileInputTag_; // InputTag for Pileup Digis collection
39 
40  std::string EBDigiCollectionDM_; // secondary name to be given to collection of digis
41  std::string EEDigiCollectionDM_; // secondary name to be given to collection of digis
42  std::string ESDigiCollectionDM_; // secondary name to be given to collection of digis
43 
47 
48  const double m_EBs25notCont;
49  const double m_EEs25notCont;
50  const double m_peToABarrel;
51  const double m_peToAEndcap;
52 
57 };
58 
59 // Constructor
63  : EBPileInputTag_(ps.getParameter<edm::InputTag>("EBPileInputTag")),
64  EEPileInputTag_(ps.getParameter<edm::InputTag>("EEPileInputTag")),
65  ESPileInputTag_(ps.getParameter<edm::InputTag>("ESPileInputTag")),
66  tok_eb_(iC.consumes<EBDigitizerTraits::DigiCollection>(EBPileInputTag_)),
67  tok_ee_(iC.consumes<EEDigitizerTraits::DigiCollection>(EEPileInputTag_)),
68  tok_es_(iC.consumes<ESDigitizerTraits::DigiCollection>(ESPileInputTag_)),
69  m_EBs25notCont(ps.getParameter<double>("EBs25notContainment")),
70  m_EEs25notCont(ps.getParameter<double>("EEs25notContainment")),
71  m_peToABarrel(ps.getParameter<double>("photoelectronsToAnalogBarrel")),
72  m_peToAEndcap(ps.getParameter<double>("photoelectronsToAnalogEndcap")),
76  myEcalDigitizer_(ps, iC) {
77  EBDigiCollectionDM_ = ps.getParameter<std::string>("EBDigiCollectionDM");
78  EEDigiCollectionDM_ = ps.getParameter<std::string>("EEDigiCollectionDM");
79  ESDigiCollectionDM_ = ps.getParameter<std::string>("ESDigiCollectionDM");
80 
84 
88 }
89 
92 }
93 
96 }
97 
99  LogDebug("PreMixingEcalWorker") << "\n===============> adding pileups from event " << pep.principal().id()
100  << " for bunchcrossing " << pep.bunchCrossing();
101 
105 
106  // add noise signals using incoming digis
110 }
111 
113  const edm::EventSetup &ES,
114  std::vector<PileupSummaryInfo> const &ps,
115  int bs) {
117 }
118 
121 }
122 
#define LogDebug(id)
BranchAliasSetterT< ProductType > produces()
declare what type of product will make and with which optional label
T getParameter(std::string const &) const
void initializeEvent(edm::Event const &e, edm::EventSetup const &ES) override
virtual void fill(edm::ModuleCallingContext const *mcc)
edm::EDGetTokenT< EBDigitizerTraits::DigiCollection > tok_eb_
EventID const & id() const
void beginLuminosityBlock(edm::LuminosityBlock const &lumi, edm::EventSetup const &setup) override
edm::EDGetTokenT< EEDigitizerTraits::DigiCollection > tok_ee_
def setup(process, global_tag, zero_tesla=False)
Definition: GeneralSetup.py:2
void addPileups(PileUpEventPrincipal const &pep, edm::EventSetup const &es) override
PreMixingEcalWorker(const edm::ParameterSet &ps, edm::ProducerBase &producer, edm::ConsumesCollector &&iC)
void addSignals(edm::Event const &e, edm::EventSetup const &ES) override
void setEENoiseSignalGenerator(EcalBaseSignalGenerator *noiseGenerator)
void initializeEvent(edm::Event const &e, edm::EventSetup const &c) override
ESSignalGenerator theESSignalGenerator
edm::EventPrincipal const & principal()
void setEBNoiseSignalGenerator(EcalBaseSignalGenerator *noiseGenerator)
void setESNoiseSignalGenerator(EcalBaseSignalGenerator *noiseGenerator)
void accumulate(edm::Event const &e, edm::EventSetup const &c) override
void initializeEvent(const edm::Event *event, const edm::EventSetup *eventSetup)
edm::InputTag ESPileInputTag_
void beginLuminosityBlock(edm::LuminosityBlock const &lumi, edm::EventSetup const &setup) override
EcalDigiProducer myEcalDigitizer_
EESignalGenerator theEESignalGenerator
~PreMixingEcalWorker() override=default
edm::EDGetTokenT< ESDigitizerTraits::DigiCollection > tok_es_
PreMixingEcalWorker & operator=(const PreMixingEcalWorker &)=delete
edm::InputTag EBPileInputTag_
edm::ModuleCallingContext const * moduleCallingContext() const
HLT enums.
edm::InputTag EEPileInputTag_
void put(edm::Event &e, edm::EventSetup const &iSetup, std::vector< PileupSummaryInfo > const &ps, int bs) override
#define DEFINE_PREMIXING_WORKER(TYPE)
void finalizeEvent(edm::Event &e, edm::EventSetup const &c) override
EBSignalGenerator theEBSignalGenerator