CMS 3D CMS Logo

List of all members | Public Member Functions | Private Attributes
edm::DataMixingEcalDigiWorkerProd Class Reference

#include <DataMixingEcalDigiWorkerProd.h>

Public Member Functions

void addEcalPileups (const int bcr, const edm::EventPrincipal *, unsigned int EventId, const edm::EventSetup &ES, edm::ModuleCallingContext const *)
 
void addEcalSignals (const edm::Event &e, const edm::EventSetup &ES)
 
void beginLuminosityBlock (edm::LuminosityBlock const &lumi, edm::EventSetup const &setup)
 
void beginRun (const edm::EventSetup &ES)
 
 DataMixingEcalDigiWorkerProd (const edm::ParameterSet &ps, edm::ConsumesCollector &iC)
 
void initializeEvent (const edm::Event &e, const edm::EventSetup &ES)
 
void putEcal (edm::Event &e, const edm::EventSetup &ES)
 
void setEBAccess (edm::EDGetTokenT< EBDigitizerTraits::DigiCollection > tok)
 
void setEEAccess (edm::EDGetTokenT< EEDigitizerTraits::DigiCollection > tok)
 
void setESAccess (edm::EDGetTokenT< ESDigitizerTraits::DigiCollection > tok)
 
virtual ~DataMixingEcalDigiWorkerProd ()
 

Private Attributes

std::string EBDigiCollectionDM_
 
edm::InputTag EBPileInputTag_
 
std::string EEDigiCollectionDM_
 
edm::InputTag EEPileInputTag_
 
std::string ESDigiCollectionDM_
 
edm::InputTag ESPileInputTag_
 
std::string label_
 
const double m_EBs25notCont
 
const double m_EEs25notCont
 
const double m_peToABarrel
 
const double m_peToAEndcap
 
EcalDigiProducermyEcalDigitizer_
 
EBSignalGenerator theEBSignalGenerator
 
EESignalGenerator theEESignalGenerator
 
ESSignalGenerator theESSignalGenerator
 
edm::EDGetTokenT< EBDigitizerTraits::DigiCollectiontok_eb_
 
edm::EDGetTokenT< EEDigitizerTraits::DigiCollectiontok_ee_
 
edm::EDGetTokenT< ESDigitizerTraits::DigiCollectiontok_es_
 

Detailed Description

Definition at line 43 of file DataMixingEcalDigiWorkerProd.h.

Constructor & Destructor Documentation

DataMixingEcalDigiWorkerProd::DataMixingEcalDigiWorkerProd ( const edm::ParameterSet ps,
edm::ConsumesCollector iC 
)
explicit

standard constructor

Definition at line 16 of file DataMixingEcalDigiWorkerProd.cc.

References EBDigiCollectionDM_, EBPileInputTag_, EEDigiCollectionDM_, EEPileInputTag_, ESDigiCollectionDM_, ESPileInputTag_, edm::ParameterSet::getParameter(), m_EBs25notCont, m_EEs25notCont, m_peToABarrel, m_peToAEndcap, myEcalDigitizer_, AlCaHLTBitMon_QueryRunRegistry::string, theEBSignalGenerator, theEESignalGenerator, theESSignalGenerator, tok_eb_, tok_ee_, and tok_es_.

16  :
17  EBPileInputTag_(ps.getParameter<edm::InputTag>("EBPileInputTag")),
18  EEPileInputTag_(ps.getParameter<edm::InputTag>("EEPileInputTag")),
19  ESPileInputTag_(ps.getParameter<edm::InputTag>("ESPileInputTag")),
20  m_EBs25notCont(ps.getParameter<double>("EBs25notContainment") ) ,
21  m_EEs25notCont(ps.getParameter<double>("EEs25notContainment") ) ,
22  m_peToABarrel(ps.getParameter<double>("photoelectronsToAnalogBarrel") ) ,
23  m_peToAEndcap(ps.getParameter<double>("photoelectronsToAnalogEndcap") ) ,
24  label_(ps.getParameter<std::string>("Label"))
25  {
26 
30 
31  // get the subdetector names
32  // this->getSubdetectorNames(); //something like this may be useful to check what we are supposed to do...
33 
34  // declare the products to produce
35 
36  // Ecal
37  // Signal inputs now handled by EcalDigitizer - gets pSimHits directly
38 
39  EBDigiCollectionDM_ = ps.getParameter<std::string>("EBDigiCollectionDM");
40  EEDigiCollectionDM_ = ps.getParameter<std::string>("EEDigiCollectionDM");
41  ESDigiCollectionDM_ = ps.getParameter<std::string>("ESDigiCollectionDM");
42 
43  // initialize EcalDigitizer here...
44 
45  myEcalDigitizer_ = new EcalDigiProducer( ps , iC);
46  myEcalDigitizer_->setEBNoiseSignalGenerator( & theEBSignalGenerator );
47  myEcalDigitizer_->setEENoiseSignalGenerator( & theEESignalGenerator );
48  myEcalDigitizer_->setESNoiseSignalGenerator( & theESSignalGenerator );
49 
50  }
T getParameter(std::string const &) const
EcalSignalGenerator< EBDigitizerTraits > EBSignalGenerator
edm::EDGetTokenT< ESDigitizerTraits::DigiCollection > tok_es_
edm::EDGetTokenT< EEDigitizerTraits::DigiCollection > tok_ee_
edm::EDGetTokenT< EBDigitizerTraits::DigiCollection > tok_eb_
EcalSignalGenerator< ESDigitizerTraits > ESSignalGenerator
EcalSignalGenerator< EEDigitizerTraits > EESignalGenerator
DataMixingEcalDigiWorkerProd::~DataMixingEcalDigiWorkerProd ( )
virtual

Default destructor

Definition at line 53 of file DataMixingEcalDigiWorkerProd.cc.

References myEcalDigitizer_.

53  {
54  delete myEcalDigitizer_;
55  }

Member Function Documentation

void DataMixingEcalDigiWorkerProd::addEcalPileups ( const int  bcr,
const edm::EventPrincipal ep,
unsigned int  EventId,
const edm::EventSetup ES,
edm::ModuleCallingContext const *  mcc 
)

Definition at line 70 of file DataMixingEcalDigiWorkerProd.cc.

References EcalSignalGenerator< ECALDIGITIZERTRAITS >::fill(), edm::EventPrincipal::id(), EcalSignalGenerator< ECALDIGITIZERTRAITS >::initializeEvent(), LogDebug, theEBSignalGenerator, theEESignalGenerator, and theESSignalGenerator.

Referenced by edm::DataMixingModule::pileWorker().

71  {
72 
73  LogDebug("DataMixingEcalDigiWorkerProd") <<"\n===============> adding pileups from event "<<ep->id()<<" for bunchcrossing "<<bcr;
74 
78 
79  // add noise signals using incoming digis
80 
84  }
#define LogDebug(id)
virtual void fill(edm::ModuleCallingContext const *mcc)
EventID const & id() const
void initializeEvent(const edm::Event *event, const edm::EventSetup *eventSetup)
void DataMixingEcalDigiWorkerProd::addEcalSignals ( const edm::Event e,
const edm::EventSetup ES 
)

Definition at line 64 of file DataMixingEcalDigiWorkerProd.cc.

References EcalDigiProducer::accumulate(), and myEcalDigitizer_.

Referenced by edm::DataMixingModule::addSignals().

64  {
65 
66  myEcalDigitizer_->accumulate(e, ES); // puts SimHits into Ecal digitizer
67 
68  } // end of addEcalSignals
void accumulate(edm::Event const &e, edm::EventSetup const &c) override
void DataMixingEcalDigiWorkerProd::beginLuminosityBlock ( edm::LuminosityBlock const &  lumi,
edm::EventSetup const &  setup 
)

Definition at line 94 of file DataMixingEcalDigiWorkerProd.cc.

References EcalDigiProducer::beginLuminosityBlock(), and myEcalDigitizer_.

Referenced by edm::DataMixingModule::beginLuminosityBlock(), and setESAccess().

94  {
96  }
def setup(process, global_tag, zero_tesla=False)
Definition: GeneralSetup.py:1
void beginLuminosityBlock(edm::LuminosityBlock const &lumi, edm::EventSetup const &setup) override
void DataMixingEcalDigiWorkerProd::beginRun ( const edm::EventSetup ES)

Definition at line 57 of file DataMixingEcalDigiWorkerProd.cc.

Referenced by edm::DataMixingModule::beginRun(), and setESAccess().

57  {
58  }
void DataMixingEcalDigiWorkerProd::initializeEvent ( const edm::Event e,
const edm::EventSetup ES 
)

Definition at line 60 of file DataMixingEcalDigiWorkerProd.cc.

References EcalDigiProducer::initializeEvent(), and myEcalDigitizer_.

Referenced by edm::DataMixingModule::initializeEvent(), and setESAccess().

60  {
62  }
void initializeEvent(edm::Event const &e, edm::EventSetup const &c) override
void DataMixingEcalDigiWorkerProd::putEcal ( edm::Event e,
const edm::EventSetup ES 
)

Definition at line 86 of file DataMixingEcalDigiWorkerProd.cc.

References EcalDigiProducer::finalizeEvent(), and myEcalDigitizer_.

Referenced by edm::DataMixingModule::put().

86  {
87 
88  // Digitize
89 
91 
92  }
void finalizeEvent(edm::Event &e, edm::EventSetup const &c) override
void edm::DataMixingEcalDigiWorkerProd::setEBAccess ( edm::EDGetTokenT< EBDigitizerTraits::DigiCollection tok)
inline

Definition at line 59 of file DataMixingEcalDigiWorkerProd.h.

References tok_eb_.

Referenced by edm::DataMixingModule::DataMixingModule().

59 { tok_eb_ = tok; }
edm::EDGetTokenT< EBDigitizerTraits::DigiCollection > tok_eb_
void edm::DataMixingEcalDigiWorkerProd::setEEAccess ( edm::EDGetTokenT< EEDigitizerTraits::DigiCollection tok)
inline

Definition at line 60 of file DataMixingEcalDigiWorkerProd.h.

References tok_ee_.

Referenced by edm::DataMixingModule::DataMixingModule().

60 { tok_ee_ = tok; }
edm::EDGetTokenT< EEDigitizerTraits::DigiCollection > tok_ee_
void edm::DataMixingEcalDigiWorkerProd::setESAccess ( edm::EDGetTokenT< ESDigitizerTraits::DigiCollection tok)
inline

Definition at line 61 of file DataMixingEcalDigiWorkerProd.h.

References beginLuminosityBlock(), beginRun(), initializeEvent(), GeneralSetup::setup(), and tok_es_.

Referenced by edm::DataMixingModule::DataMixingModule().

61 { tok_es_ = tok; }
edm::EDGetTokenT< ESDigitizerTraits::DigiCollection > tok_es_

Member Data Documentation

std::string edm::DataMixingEcalDigiWorkerProd::EBDigiCollectionDM_
private

Definition at line 79 of file DataMixingEcalDigiWorkerProd.h.

Referenced by DataMixingEcalDigiWorkerProd().

edm::InputTag edm::DataMixingEcalDigiWorkerProd::EBPileInputTag_
private

Definition at line 75 of file DataMixingEcalDigiWorkerProd.h.

Referenced by DataMixingEcalDigiWorkerProd().

std::string edm::DataMixingEcalDigiWorkerProd::EEDigiCollectionDM_
private

Definition at line 80 of file DataMixingEcalDigiWorkerProd.h.

Referenced by DataMixingEcalDigiWorkerProd().

edm::InputTag edm::DataMixingEcalDigiWorkerProd::EEPileInputTag_
private

Definition at line 76 of file DataMixingEcalDigiWorkerProd.h.

Referenced by DataMixingEcalDigiWorkerProd().

std::string edm::DataMixingEcalDigiWorkerProd::ESDigiCollectionDM_
private

Definition at line 81 of file DataMixingEcalDigiWorkerProd.h.

Referenced by DataMixingEcalDigiWorkerProd().

edm::InputTag edm::DataMixingEcalDigiWorkerProd::ESPileInputTag_
private

Definition at line 77 of file DataMixingEcalDigiWorkerProd.h.

Referenced by DataMixingEcalDigiWorkerProd().

std::string edm::DataMixingEcalDigiWorkerProd::label_
private
const double edm::DataMixingEcalDigiWorkerProd::m_EBs25notCont
private

Definition at line 87 of file DataMixingEcalDigiWorkerProd.h.

Referenced by DataMixingEcalDigiWorkerProd().

const double edm::DataMixingEcalDigiWorkerProd::m_EEs25notCont
private

Definition at line 88 of file DataMixingEcalDigiWorkerProd.h.

Referenced by DataMixingEcalDigiWorkerProd().

const double edm::DataMixingEcalDigiWorkerProd::m_peToABarrel
private

Definition at line 89 of file DataMixingEcalDigiWorkerProd.h.

Referenced by DataMixingEcalDigiWorkerProd().

const double edm::DataMixingEcalDigiWorkerProd::m_peToAEndcap
private

Definition at line 90 of file DataMixingEcalDigiWorkerProd.h.

Referenced by DataMixingEcalDigiWorkerProd().

EcalDigiProducer* edm::DataMixingEcalDigiWorkerProd::myEcalDigitizer_
private
EBSignalGenerator edm::DataMixingEcalDigiWorkerProd::theEBSignalGenerator
private

Definition at line 93 of file DataMixingEcalDigiWorkerProd.h.

Referenced by addEcalPileups(), and DataMixingEcalDigiWorkerProd().

EESignalGenerator edm::DataMixingEcalDigiWorkerProd::theEESignalGenerator
private

Definition at line 94 of file DataMixingEcalDigiWorkerProd.h.

Referenced by addEcalPileups(), and DataMixingEcalDigiWorkerProd().

ESSignalGenerator edm::DataMixingEcalDigiWorkerProd::theESSignalGenerator
private

Definition at line 95 of file DataMixingEcalDigiWorkerProd.h.

Referenced by addEcalPileups(), and DataMixingEcalDigiWorkerProd().

edm::EDGetTokenT<EBDigitizerTraits::DigiCollection> edm::DataMixingEcalDigiWorkerProd::tok_eb_
private

Definition at line 83 of file DataMixingEcalDigiWorkerProd.h.

Referenced by DataMixingEcalDigiWorkerProd(), and setEBAccess().

edm::EDGetTokenT<EEDigitizerTraits::DigiCollection> edm::DataMixingEcalDigiWorkerProd::tok_ee_
private

Definition at line 84 of file DataMixingEcalDigiWorkerProd.h.

Referenced by DataMixingEcalDigiWorkerProd(), and setEEAccess().

edm::EDGetTokenT<ESDigitizerTraits::DigiCollection> edm::DataMixingEcalDigiWorkerProd::tok_es_
private

Definition at line 85 of file DataMixingEcalDigiWorkerProd.h.

Referenced by DataMixingEcalDigiWorkerProd(), and setESAccess().