CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Types | Public Member Functions | Protected Attributes | Private Types | Private Member Functions | Private Attributes
EcalDigiProducer_Ph2 Class Reference

#include <EcalDigiProducer_Ph2.h>

Inheritance diagram for EcalDigiProducer_Ph2:
DigiAccumulatorMixMod

Public Types

typedef EcalTDigitizer
< EBDigitizerTraits_Ph2
EBDigitizer_Ph2
 
typedef
EBDigitizerTraits_Ph2::ElectronicsSim 
EcalElectronicsSim_Ph2
 

Public Member Functions

void accumulate (edm::Event const &e, edm::EventSetup const &c) override
 
void accumulate (PileUpEventPrincipal const &e, edm::EventSetup const &c, edm::StreamID const &) override
 
void beginLuminosityBlock (edm::LuminosityBlock const &lumi, edm::EventSetup const &setup) override
 
 EcalDigiProducer_Ph2 (const edm::ParameterSet &params, edm::ProducesCollector producesCollector, edm::ConsumesCollector &iC)
 
 EcalDigiProducer_Ph2 (const edm::ParameterSet &params, edm::ConsumesCollector &iC)
 
void finalizeEvent (edm::Event &e, edm::EventSetup const &c) override
 
void initializeEvent (edm::Event const &e, edm::EventSetup const &c) override
 
void setEBNoiseSignalGenerator (EcalBaseSignalGenerator *noiseGenerator)
 
 ~EcalDigiProducer_Ph2 () override
 
- Public Member Functions inherited from DigiAccumulatorMixMod
virtual void beginRun (edm::Run const &run, edm::EventSetup const &setup)
 
 DigiAccumulatorMixMod ()
 
 DigiAccumulatorMixMod (DigiAccumulatorMixMod const &)=delete
 
virtual void endLuminosityBlock (edm::LuminosityBlock const &lumi, edm::EventSetup const &setup)
 
virtual void endRun (edm::Run const &run, edm::EventSetup const &setup)
 
virtual void finalizeBunchCrossing (edm::Event &event, edm::EventSetup const &setup, int bunchCrossing)
 
virtual PileupMixingContentgetEventPileupInfo ()
 
virtual void initializeBunchCrossing (edm::Event const &event, edm::EventSetup const &setup, int bunchCrossing)
 
DigiAccumulatorMixMod const & operator= (DigiAccumulatorMixMod const &)=delete
 
virtual void StorePileupInformation (std::vector< int > &numInteractionList, std::vector< int > &bunchCrossingList, std::vector< float > &TrueInteractionList, std::vector< edm::EventID > &eventList, int bunchSpace)
 
virtual ~DigiAccumulatorMixMod ()
 

Protected Attributes

std::unique_ptr
< EBHitResponse_Ph2
m_EBResponse
 
std::unique_ptr< const
EcalSimParameterMap
m_ParameterMap
 

Private Types

typedef CaloTSamples< float,
ecalPh2::sampleSize
EcalSamples_Ph2
 
typedef edm::Handle
< std::vector< PCaloHit > > 
HitsHandle
 

Private Member Functions

void accumulateCaloHits (HitsHandle const &ebHandle, int bunchCrossing)
 
virtual void cacheEBDigis (const EBDigiCollectionPh2 *ebDigiPtr) const
 
void checkCalibrations (const edm::Event &event, const edm::EventSetup &eventSetup)
 
void checkGeometry (const edm::EventSetup &eventSetup)
 
void updateGeometry ()
 

Private Attributes

edm::ESGetToken
< EcalADCToGeVConstant,
EcalADCToGeVConstantRcd
agcToken_
 
edm::ESGetToken< CaloGeometry,
CaloGeometryRecord
geom_token_
 
edm::ESGetToken
< EcalIntercalibConstants,
EcalIntercalibConstantsRcd
icalToken_
 
edm::ESGetToken
< EcalLaserDbService,
EcalLaserDbRecord
laserToken_
 
std::unique_ptr< EcalLiteDTUCoderm_APDCoder
 
const std::string m_apdDigiTag
 
std::unique_ptr< EBDigitizer_Ph2m_APDDigitizer
 
std::unique_ptr
< EcalElectronicsSim
< EcalLiteDTUCoder,
EcalSamples_Ph2,
EcalDataFrame_Ph2 > > 
m_APDElectronicsSim
 
std::unique_ptr< const
APDSimParameters
m_apdParameters
 
std::unique_ptr
< EBHitResponse_Ph2
m_APDResponse
 
const bool m_apdSeparateDigi
 
APDShape m_APDShape
 
std::unique_ptr< EBDigitizer_Ph2m_BarrelDigitizer
 
std::unique_ptr< EcalLiteDTUCoderm_Coder
 
std::array< std::unique_ptr
< CorrelatedNoisifier
< EcalCorrMatrix_Ph2 > >, 2 > 
m_EBCorrNoise
 
const std::string m_EBdigiCollection
 
const double m_EBs25notCont
 
EBShape m_EBShape
 
std::unique_ptr
< EcalElectronicsSim_Ph2
m_ElectronicsSim
 
const CaloGeometrym_Geometry
 
const std::string m_hitsProducerTag
 
const bool m_PreMix1
 
const bool m_PreMix2
 
const unsigned int m_readoutFrameSize
 
bool m_useLCcorrection
 
edm::ESGetToken
< EcalLiteDTUPedestalsMap,
EcalLiteDTUPedestalsRcd
pedestalToken_
 
CLHEP::HepRandomEngine * randomEngine_ = nullptr
 

Detailed Description

Definition at line 51 of file EcalDigiProducer_Ph2.h.

Member Typedef Documentation

Definition at line 53 of file EcalDigiProducer_Ph2.h.

Definition at line 54 of file EcalDigiProducer_Ph2.h.

Definition at line 124 of file EcalDigiProducer_Ph2.h.

typedef edm::Handle<std::vector<PCaloHit> > EcalDigiProducer_Ph2::HitsHandle
private

Definition at line 73 of file EcalDigiProducer_Ph2.h.

Constructor & Destructor Documentation

EcalDigiProducer_Ph2::EcalDigiProducer_Ph2 ( const edm::ParameterSet params,
edm::ProducesCollector  producesCollector,
edm::ConsumesCollector iC 
)

Definition at line 44 of file EcalDigiProducer_Ph2.cc.

References m_apdDigiTag, m_apdSeparateDigi, m_EBdigiCollection, and edm::ProducesCollector::produces().

47  : EcalDigiProducer_Ph2(params, iC) {
49  producesCollector.produces<EBDigiCollectionPh2>(m_apdDigiTag);
50 
52 }
ProductRegistryHelper::BranchAliasSetterT< ProductType > produces()
const std::string m_apdDigiTag
const std::string m_EBdigiCollection
EcalDigiProducer_Ph2(const edm::ParameterSet &params, edm::ProducesCollector producesCollector, edm::ConsumesCollector &iC)
EcalDigiProducer_Ph2::EcalDigiProducer_Ph2 ( const edm::ParameterSet params,
edm::ConsumesCollector iC 
)

Definition at line 55 of file EcalDigiProducer_Ph2.cc.

57  m_APDShape(iC),
58  m_EBShape(iC),
59 
60  m_EBdigiCollection(params.getParameter<std::string>("EBdigiCollectionPh2")),
61 
62  m_hitsProducerTag(params.getParameter<std::string>("hitsProducer")),
63  m_useLCcorrection(params.getUntrackedParameter<bool>("UseLCcorrection")),
64  m_apdSeparateDigi(params.getParameter<bool>("apdSeparateDigi")),
65 
66  m_EBs25notCont(params.getParameter<double>("EBs25notContainment")),
67 
69 
70  m_ParameterMap(std::make_unique<EcalSimParameterMap>(params.getParameter<double>("simHitToPhotoelectronsBarrel"),
71  0, // endcap parameters not needed
72  params.getParameter<double>("photoelectronsToAnalogBarrel"),
73  0,
74  params.getParameter<double>("samplingFactor"),
75  params.getParameter<double>("timePhase"),
77  params.getParameter<int>("binOfMaximum"),
78  params.getParameter<bool>("doPhotostatistics"),
79  params.getParameter<bool>("syncPhase"))),
80 
81  m_apdDigiTag(params.getParameter<std::string>("apdDigiTag")),
82  m_apdParameters(std::make_unique<APDSimParameters>(params.getParameter<bool>("apdAddToBarrel"),
84  params.getParameter<double>("apdSimToPELow"),
85  params.getParameter<double>("apdSimToPEHigh"),
86  params.getParameter<double>("apdTimeOffset"),
87  params.getParameter<double>("apdTimeOffWidth"),
88  params.getParameter<bool>("apdDoPEStats"),
90  params.getParameter<std::vector<double>>("apdNonlParms"))),
91 
93  ? nullptr
94  : std::make_unique<EBHitResponse_Ph2>(
95  m_ParameterMap.get(), &m_EBShape, true, m_apdParameters.get(), &m_APDShape)),
96 
97  m_EBResponse(std::make_unique<EBHitResponse_Ph2>(m_ParameterMap.get(),
98  &m_EBShape,
99  false, // barrel
100  m_apdParameters.get(),
101  &m_APDShape)),
102 
103  m_PreMix1(params.getParameter<bool>("EcalPreMixStage1")),
104  m_PreMix2(params.getParameter<bool>("EcalPreMixStage2")),
105 
106  m_APDDigitizer(nullptr),
107  m_BarrelDigitizer(nullptr),
108  m_ElectronicsSim(nullptr),
109  m_Coder(nullptr),
110  m_APDElectronicsSim(nullptr),
111  m_APDCoder(nullptr),
112  m_Geometry(nullptr),
113  m_EBCorrNoise({{nullptr, nullptr}})
T getUntrackedParameter(std::string const &, T const &) const
std::unique_ptr< EBHitResponse_Ph2 > m_EBResponse
const unsigned int m_readoutFrameSize
std::unique_ptr< EcalElectronicsSim_Ph2 > m_ElectronicsSim
const std::string m_apdDigiTag
std::unique_ptr< EBDigitizer_Ph2 > m_APDDigitizer
std::unique_ptr< EBHitResponse_Ph2 > m_APDResponse
std::unique_ptr< EcalLiteDTUCoder > m_APDCoder
std::unique_ptr< EcalLiteDTUCoder > m_Coder
std::unique_ptr< const APDSimParameters > m_apdParameters
std::array< std::unique_ptr< CorrelatedNoisifier< EcalCorrMatrix_Ph2 > >, 2 > m_EBCorrNoise
const std::string m_hitsProducerTag
static constexpr unsigned int sampleSize
Definition: EcalConstants.h:12
const std::string m_EBdigiCollection
std::unique_ptr< const EcalSimParameterMap > m_ParameterMap
const CaloGeometry * m_Geometry
T getParameter(std::string const &) const
Definition: ParameterSet.h:303
std::unique_ptr< EcalElectronicsSim< EcalLiteDTUCoder, EcalSamples_Ph2, EcalDataFrame_Ph2 > > m_APDElectronicsSim
std::unique_ptr< EBDigitizer_Ph2 > m_BarrelDigitizer
EcalDigiProducer_Ph2::~EcalDigiProducer_Ph2 ( )
override

Definition at line 174 of file EcalDigiProducer_Ph2.cc.

174 {}

Member Function Documentation

void EcalDigiProducer_Ph2::accumulate ( edm::Event const &  e,
edm::EventSetup const &  c 
)
overridevirtual

Implements DigiAccumulatorMixMod.

Definition at line 199 of file EcalDigiProducer_Ph2.cc.

References accumulateCaloHits(), edm::Event::getByLabel(), m_APDShape, m_EBShape, m_hitsProducerTag, and EcalShapeBase::setEventSetup().

199  {
200  // Step A: Get Inputs
202 
203  m_EBShape.setEventSetup(eventSetup);
204  m_APDShape.setEventSetup(eventSetup);
205  edm::InputTag ebTag(m_hitsProducerTag, "EcalHitsEB");
206  e.getByLabel(ebTag, ebHandle);
207 
208  accumulateCaloHits(ebHandle, 0);
209 }
const std::string m_hitsProducerTag
void setEventSetup(const edm::EventSetup &evtSetup)
void accumulateCaloHits(HitsHandle const &ebHandle, int bunchCrossing)
void EcalDigiProducer_Ph2::accumulate ( PileUpEventPrincipal const &  e,
edm::EventSetup const &  c,
edm::StreamID const &  streamID 
)
overridevirtual

Implements DigiAccumulatorMixMod.

Definition at line 211 of file EcalDigiProducer_Ph2.cc.

References accumulateCaloHits(), PileUpEventPrincipal::bunchCrossing(), PileUpEventPrincipal::getByLabel(), and m_hitsProducerTag.

213  {
214  // Step A: Get Inputs
216 
217  edm::InputTag ebTag(m_hitsProducerTag, "EcalHitsEB");
218  e.getByLabel(ebTag, ebHandle);
219 
220  accumulateCaloHits(ebHandle, e.bunchCrossing());
221 }
const std::string m_hitsProducerTag
void accumulateCaloHits(HitsHandle const &ebHandle, int bunchCrossing)
void EcalDigiProducer_Ph2::accumulateCaloHits ( HitsHandle const &  ebHandle,
int  bunchCrossing 
)
private

Definition at line 189 of file EcalDigiProducer_Ph2.cc.

References edm::HandleBase::isValid(), m_APDDigitizer, m_apdSeparateDigi, m_BarrelDigitizer, edm::Handle< T >::product(), and randomEngine_.

Referenced by accumulate().

189  {
190  if (ebHandle.isValid()) {
191  m_BarrelDigitizer->add(*ebHandle.product(), bunchCrossing, randomEngine_);
192 
193  if (m_apdSeparateDigi) {
194  m_APDDigitizer->add(*ebHandle.product(), bunchCrossing, randomEngine_);
195  }
196  }
197 }
CLHEP::HepRandomEngine * randomEngine_
std::unique_ptr< EBDigitizer_Ph2 > m_APDDigitizer
std::unique_ptr< EBDigitizer_Ph2 > m_BarrelDigitizer
void EcalDigiProducer_Ph2::beginLuminosityBlock ( edm::LuminosityBlock const &  lumi,
edm::EventSetup const &  setup 
)
overridevirtual

Reimplemented from DigiAccumulatorMixMod.

Definition at line 249 of file EcalDigiProducer_Ph2.cc.

References Exception, edm::RandomNumberGenerator::getEngine(), edm::LuminosityBlock::index(), edm::Service< T >::isAvailable(), m_APDResponse, and m_EBResponse.

249  {
251  if (!rng.isAvailable()) {
252  throw cms::Exception("Configuration") << "RandomNumberGenerator service is not available.\n"
253  "You must add the service in the configuration file\n"
254  "or remove the module that requires it.";
255  }
256  CLHEP::HepRandomEngine* engine = &rng->getEngine(lumi.index());
257 
258  if (nullptr != m_APDResponse)
259  m_APDResponse->initialize(engine);
260  m_EBResponse->initialize(engine);
261 }
std::unique_ptr< EBHitResponse_Ph2 > m_EBResponse
std::unique_ptr< EBHitResponse_Ph2 > m_APDResponse
virtual CLHEP::HepRandomEngine & getEngine(StreamID const &)=0
Use this engine in event methods.
bool isAvailable() const
Definition: Service.h:40
list lumi
Definition: dqmdumpme.py:53
virtual void EcalDigiProducer_Ph2::cacheEBDigis ( const EBDigiCollectionPh2 ebDigiPtr) const
inlineprivatevirtual

Definition at line 71 of file EcalDigiProducer_Ph2.h.

Referenced by finalizeEvent().

71 {}
void EcalDigiProducer_Ph2::checkCalibrations ( const edm::Event event,
const edm::EventSetup eventSetup 
)
private

Definition at line 263 of file EcalDigiProducer_Ph2.cc.

References agcToken_, ecalPh2::gains, edm::EventSetup::getData(), icalToken_, EcalCondDBWriter_cfi::laser, laserToken_, LogDebug, m_APDCoder, m_APDResponse, m_Coder, m_EBResponse, m_EBs25notCont, m_useLCcorrection, ecalPh2::MAXADC, and pedestalToken_.

Referenced by initializeEvent().

263  {
264  // Pedestals from event setup
265  auto pedestals = &eventSetup.getData(pedestalToken_);
266 
267  m_Coder->setPedestals(pedestals);
268  if (nullptr != m_APDCoder)
269  m_APDCoder->setPedestals(pedestals);
270 
271  // Ecal Intercalibration Constants
272  auto ical = &eventSetup.getData(icalToken_);
273 
274  m_Coder->setIntercalibConstants(ical);
275  if (nullptr != m_APDCoder)
276  m_APDCoder->setIntercalibConstants(ical);
277 
278  m_EBResponse->setIntercal(ical);
279  if (nullptr != m_APDResponse)
280  m_APDResponse->setIntercal(ical);
281 
282  // Ecal LaserCorrection Constants
283  auto laser = &eventSetup.getData(laserToken_);
284 
285  const edm::TimeValue_t eventTimeValue = event.time().value();
286 
287  m_EBResponse->setEventTime(eventTimeValue);
288  m_EBResponse->setLaserConstants(laser, m_useLCcorrection);
289 
290  // ADC -> GeV Scale
291  auto agc = &eventSetup.getData(agcToken_);
292 
293  m_Coder->setGainRatios(ecalPh2::gains[0] / ecalPh2::gains[1]);
294  if (nullptr != m_APDCoder)
295  m_APDCoder->setGainRatios(ecalPh2::gains[0] / ecalPh2::gains[1]);
296 
297  const double EBscale((agc->getEBValue()) * ecalPh2::gains[1] * (ecalPh2::MAXADC)*m_EBs25notCont);
298 
299  LogDebug("EcalDigi") << " GeV/ADC = " << agc->getEBValue() << "\n"
300  << " notCont = " << m_EBs25notCont << "\n"
301  << " saturation for EB = " << EBscale << ", " << m_EBs25notCont;
302 
303  m_Coder->setFullScaleEnergy(EBscale);
304  if (nullptr != m_APDCoder)
305  m_APDCoder->setFullScaleEnergy(EBscale);
306 }
std::unique_ptr< EBHitResponse_Ph2 > m_EBResponse
edm::ESGetToken< EcalLaserDbService, EcalLaserDbRecord > laserToken_
std::unique_ptr< EBHitResponse_Ph2 > m_APDResponse
edm::ESGetToken< EcalADCToGeVConstant, EcalADCToGeVConstantRcd > agcToken_
std::unique_ptr< EcalLiteDTUCoder > m_APDCoder
std::unique_ptr< EcalLiteDTUCoder > m_Coder
static constexpr float gains[NGAINS]
Definition: EcalConstants.h:9
bool getData(T &iHolder) const
Definition: EventSetup.h:122
unsigned long long TimeValue_t
Definition: Timestamp.h:28
edm::ESGetToken< EcalIntercalibConstants, EcalIntercalibConstantsRcd > icalToken_
edm::ESGetToken< EcalLiteDTUPedestalsMap, EcalLiteDTUPedestalsRcd > pedestalToken_
static constexpr unsigned int MAXADC
Definition: EcalConstants.h:14
#define LogDebug(id)
void EcalDigiProducer_Ph2::checkGeometry ( const edm::EventSetup eventSetup)
private

Definition at line 308 of file EcalDigiProducer_Ph2.cc.

References geom_token_, edm::EventSetup::getHandle(), m_Geometry, and updateGeometry().

Referenced by initializeEvent().

308  {
309  // TODO find a way to avoid doing this every event
310  edm::ESHandle<CaloGeometry> hGeometry = eventSetup.getHandle(geom_token_);
311  const CaloGeometry* pGeometry = &*hGeometry;
312 
313  if (pGeometry != m_Geometry) {
314  m_Geometry = pGeometry;
315  updateGeometry();
316  }
317 }
edm::ESGetToken< CaloGeometry, CaloGeometryRecord > geom_token_
const CaloGeometry * m_Geometry
ESHandle< T > getHandle(const ESGetToken< T, R > &iToken) const
Definition: EventSetup.h:151
void EcalDigiProducer_Ph2::finalizeEvent ( edm::Event e,
edm::EventSetup const &  c 
)
overridevirtual

Implements DigiAccumulatorMixMod.

Definition at line 223 of file EcalDigiProducer_Ph2.cc.

References cacheEBDigis(), m_APDDigitizer, m_apdSeparateDigi, m_BarrelDigitizer, m_EBdigiCollection, eostools::move(), and randomEngine_.

223  {
224  // Step B: Create empty output
225  std::unique_ptr<EBDigiCollectionPh2> apdResult(nullptr);
226  std::unique_ptr<EBDigiCollectionPh2> barrelResult = std::make_unique<EBDigiCollectionPh2>();
227  if (m_apdSeparateDigi) {
228  apdResult = std::make_unique<EBDigiCollectionPh2>();
229  }
230  // run the algorithm
231 
232  m_BarrelDigitizer->run(*barrelResult, randomEngine_);
233  cacheEBDigis(&*barrelResult);
234 
235  edm::LogInfo("DigiInfo") << "EB Digis: " << barrelResult->size();
236 
237  if (m_apdSeparateDigi) {
238  m_APDDigitizer->run(*apdResult, randomEngine_);
239  edm::LogInfo("DigiInfo") << "APD Digis: " << apdResult->size();
240  }
241 
242  // Step D: Put outputs into event
243 
244  event.put(std::move(barrelResult), m_EBdigiCollection);
245 
246  randomEngine_ = nullptr; // to prevent access outside event
247 }
CLHEP::HepRandomEngine * randomEngine_
std::unique_ptr< EBDigitizer_Ph2 > m_APDDigitizer
virtual void cacheEBDigis(const EBDigiCollectionPh2 *ebDigiPtr) const
def move
Definition: eostools.py:511
const std::string m_EBdigiCollection
Log< level::Info, false > LogInfo
std::unique_ptr< EBDigitizer_Ph2 > m_BarrelDigitizer
void EcalDigiProducer_Ph2::initializeEvent ( edm::Event const &  e,
edm::EventSetup const &  c 
)
overridevirtual

Implements DigiAccumulatorMixMod.

Definition at line 176 of file EcalDigiProducer_Ph2.cc.

References checkCalibrations(), checkGeometry(), edm::RandomNumberGenerator::getEngine(), m_APDDigitizer, m_apdSeparateDigi, m_BarrelDigitizer, randomEngine_, and edm::Event::streamID().

176  {
178  randomEngine_ = &rng->getEngine(event.streamID());
179 
180  checkGeometry(eventSetup);
181  checkCalibrations(event, eventSetup);
182 
183  m_BarrelDigitizer->initializeHits();
184  if (m_apdSeparateDigi) {
185  m_APDDigitizer->initializeHits();
186  }
187 }
CLHEP::HepRandomEngine * randomEngine_
std::unique_ptr< EBDigitizer_Ph2 > m_APDDigitizer
virtual CLHEP::HepRandomEngine & getEngine(StreamID const &)=0
Use this engine in event methods.
void checkCalibrations(const edm::Event &event, const edm::EventSetup &eventSetup)
void checkGeometry(const edm::EventSetup &eventSetup)
std::unique_ptr< EBDigitizer_Ph2 > m_BarrelDigitizer
void EcalDigiProducer_Ph2::setEBNoiseSignalGenerator ( EcalBaseSignalGenerator noiseGenerator)

Definition at line 325 of file EcalDigiProducer_Ph2.cc.

References m_BarrelDigitizer.

325  {
326  m_BarrelDigitizer->setNoiseSignalGenerator(noiseGenerator);
327 }
std::unique_ptr< EBDigitizer_Ph2 > m_BarrelDigitizer
void EcalDigiProducer_Ph2::updateGeometry ( )
private

Definition at line 319 of file EcalDigiProducer_Ph2.cc.

References DetId::Ecal, EcalBarrel, CaloGeometry::getSubdetectorGeometry(), m_APDResponse, m_EBResponse, and m_Geometry.

Referenced by checkGeometry().

319  {
320  if (nullptr != m_APDResponse)
323 }
const CaloSubdetectorGeometry * getSubdetectorGeometry(const DetId &id) const
access the subdetector geometry for the given subdetector directly
Definition: CaloGeometry.cc:34
std::unique_ptr< EBHitResponse_Ph2 > m_EBResponse
std::unique_ptr< EBHitResponse_Ph2 > m_APDResponse
const CaloGeometry * m_Geometry

Member Data Documentation

edm::ESGetToken<EcalADCToGeVConstant, EcalADCToGeVConstantRcd> EcalDigiProducer_Ph2::agcToken_
private

Definition at line 77 of file EcalDigiProducer_Ph2.h.

Referenced by checkCalibrations().

edm::ESGetToken<CaloGeometry, CaloGeometryRecord> EcalDigiProducer_Ph2::geom_token_
private

Definition at line 79 of file EcalDigiProducer_Ph2.h.

Referenced by checkGeometry().

edm::ESGetToken<EcalIntercalibConstants, EcalIntercalibConstantsRcd> EcalDigiProducer_Ph2::icalToken_
private

Definition at line 78 of file EcalDigiProducer_Ph2.h.

Referenced by checkCalibrations().

edm::ESGetToken<EcalLaserDbService, EcalLaserDbRecord> EcalDigiProducer_Ph2::laserToken_
private

Definition at line 76 of file EcalDigiProducer_Ph2.h.

Referenced by checkCalibrations().

std::unique_ptr<EcalLiteDTUCoder> EcalDigiProducer_Ph2::m_APDCoder
private

Definition at line 126 of file EcalDigiProducer_Ph2.h.

Referenced by checkCalibrations().

const std::string EcalDigiProducer_Ph2::m_apdDigiTag
private

Definition at line 106 of file EcalDigiProducer_Ph2.h.

Referenced by EcalDigiProducer_Ph2().

std::unique_ptr<EBDigitizer_Ph2> EcalDigiProducer_Ph2::m_APDDigitizer
private

Definition at line 118 of file EcalDigiProducer_Ph2.h.

Referenced by accumulateCaloHits(), finalizeEvent(), and initializeEvent().

std::unique_ptr<EcalElectronicsSim<EcalLiteDTUCoder, EcalSamples_Ph2, EcalDataFrame_Ph2> > EcalDigiProducer_Ph2::m_APDElectronicsSim
private

Definition at line 125 of file EcalDigiProducer_Ph2.h.

std::unique_ptr<const APDSimParameters> EcalDigiProducer_Ph2::m_apdParameters
private

Definition at line 107 of file EcalDigiProducer_Ph2.h.

std::unique_ptr<EBHitResponse_Ph2> EcalDigiProducer_Ph2::m_APDResponse
private

Definition at line 109 of file EcalDigiProducer_Ph2.h.

Referenced by beginLuminosityBlock(), checkCalibrations(), and updateGeometry().

const bool EcalDigiProducer_Ph2::m_apdSeparateDigi
private
APDShape EcalDigiProducer_Ph2::m_APDShape
private

Definition at line 88 of file EcalDigiProducer_Ph2.h.

Referenced by accumulate().

std::unique_ptr<EBDigitizer_Ph2> EcalDigiProducer_Ph2::m_BarrelDigitizer
private
std::unique_ptr<EcalLiteDTUCoder> EcalDigiProducer_Ph2::m_Coder
private

Definition at line 122 of file EcalDigiProducer_Ph2.h.

Referenced by checkCalibrations().

std::array<std::unique_ptr<CorrelatedNoisifier<EcalCorrMatrix_Ph2> >, 2> EcalDigiProducer_Ph2::m_EBCorrNoise
private

Definition at line 130 of file EcalDigiProducer_Ph2.h.

const std::string EcalDigiProducer_Ph2::m_EBdigiCollection
private

Definition at line 91 of file EcalDigiProducer_Ph2.h.

Referenced by EcalDigiProducer_Ph2(), and finalizeEvent().

std::unique_ptr<EBHitResponse_Ph2> EcalDigiProducer_Ph2::m_EBResponse
protected

Definition at line 112 of file EcalDigiProducer_Ph2.h.

Referenced by beginLuminosityBlock(), checkCalibrations(), and updateGeometry().

const double EcalDigiProducer_Ph2::m_EBs25notCont
private

Definition at line 98 of file EcalDigiProducer_Ph2.h.

Referenced by checkCalibrations().

EBShape EcalDigiProducer_Ph2::m_EBShape
private

Definition at line 89 of file EcalDigiProducer_Ph2.h.

Referenced by accumulate().

std::unique_ptr<EcalElectronicsSim_Ph2> EcalDigiProducer_Ph2::m_ElectronicsSim
private

Definition at line 121 of file EcalDigiProducer_Ph2.h.

const CaloGeometry* EcalDigiProducer_Ph2::m_Geometry
private

Definition at line 128 of file EcalDigiProducer_Ph2.h.

Referenced by checkGeometry(), and updateGeometry().

const std::string EcalDigiProducer_Ph2::m_hitsProducerTag
private

Definition at line 92 of file EcalDigiProducer_Ph2.h.

Referenced by accumulate().

std::unique_ptr<const EcalSimParameterMap> EcalDigiProducer_Ph2::m_ParameterMap
protected

Definition at line 103 of file EcalDigiProducer_Ph2.h.

const bool EcalDigiProducer_Ph2::m_PreMix1
private

Definition at line 115 of file EcalDigiProducer_Ph2.h.

const bool EcalDigiProducer_Ph2::m_PreMix2
private

Definition at line 116 of file EcalDigiProducer_Ph2.h.

const unsigned int EcalDigiProducer_Ph2::m_readoutFrameSize
private

Definition at line 100 of file EcalDigiProducer_Ph2.h.

bool EcalDigiProducer_Ph2::m_useLCcorrection
private

Definition at line 94 of file EcalDigiProducer_Ph2.h.

Referenced by checkCalibrations().

edm::ESGetToken<EcalLiteDTUPedestalsMap, EcalLiteDTUPedestalsRcd> EcalDigiProducer_Ph2::pedestalToken_
private

Definition at line 75 of file EcalDigiProducer_Ph2.h.

Referenced by checkCalibrations().

CLHEP::HepRandomEngine* EcalDigiProducer_Ph2::randomEngine_ = nullptr
private

Definition at line 132 of file EcalDigiProducer_Ph2.h.

Referenced by accumulateCaloHits(), finalizeEvent(), and initializeEvent().