CMS 3D CMS Logo

List of all members | Public Member Functions | Private Types | Private Member Functions | Private Attributes
cms::SiPixelDigitizer Class Reference

#include <SiPixelDigitizer.h>

Inheritance diagram for cms::SiPixelDigitizer:
DigiAccumulatorMixMod

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
 
virtual void beginJob ()
 
void finalizeEvent (edm::Event &e, edm::EventSetup const &c) override
 
PileupMixingContentgetEventPileupInfo () override
 
void initializeEvent (edm::Event const &e, edm::EventSetup const &c) override
 
 SiPixelDigitizer (const edm::ParameterSet &conf, edm::ProducesCollector, edm::ConsumesCollector &iC)
 
void StorePileupInformation (std::vector< int > &numInteractionList, std::vector< int > &bunchCrossingList, std::vector< float > &TrueInteractionList, std::vector< edm::EventID > &eventInfoList, int bunchSpacing) override
 
 ~SiPixelDigitizer () override
 
- Public Member Functions inherited from DigiAccumulatorMixMod
virtual void beginLuminosityBlock (edm::LuminosityBlock const &lumi, edm::EventSetup const &setup)
 
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 void initializeBunchCrossing (edm::Event const &event, edm::EventSetup const &setup, int bunchCrossing)
 
DigiAccumulatorMixMod const & operator= (DigiAccumulatorMixMod const &)=delete
 
virtual ~DigiAccumulatorMixMod ()
 

Private Types

typedef std::vector< std::string > vstring
 

Private Member Functions

void accumulatePixelHits (edm::Handle< std::vector< PSimHit > >, size_t globalSimHitIndex, const unsigned int tofBin, edm::EventSetup const &c)
 

Private Attributes

std::unique_ptr< SiPixelDigitizerAlgorithm_pixeldigialgo
 
std::map< std::string, size_t > crossingSimHitIndexOffset_
 Offset to add to the index of each sim hit to account for which crossing it's in. More...
 
std::map< unsigned int, PixelGeomDetUnit const * > detectorUnits
 
bool firstFinalizeEvent_
 
bool firstInitializeEvent_
 
const std::string hitsProducer
 
const int NumberOfEndcapDisks
 
const TrackerGeometrypDD = nullptr
 
const edm::ESGetToken< TrackerGeometry, TrackerDigiGeometryRecordpDDToken_
 
std::unique_ptr< PileupMixingContentPileupInfo_
 
const bool pilotBlades
 
const MagneticFieldpSetup = nullptr
 
const edm::ESGetToken< MagneticField, IdealMagneticFieldRecordpSetupToken_
 
CLHEP::HepRandomEngine * randomEngine_ = nullptr
 
const vstring trackerContainers
 
const edm::ESGetToken< TrackerTopology, TrackerTopologyRcdtTopoToken_
 

Detailed Description

Definition at line 44 of file SiPixelDigitizer.h.

Member Typedef Documentation

◆ vstring

typedef std::vector<std::string> cms::SiPixelDigitizer::vstring
private

Definition at line 87 of file SiPixelDigitizer.h.

Constructor & Destructor Documentation

◆ SiPixelDigitizer()

SiPixelDigitizer::SiPixelDigitizer ( const edm::ParameterSet conf,
edm::ProducesCollector  producesCollector,
edm::ConsumesCollector iC 
)
explicit

Definition at line 80 of file SiPixelDigitizer.cc.

References _pixeldigialgo, SiStripOfflineCRack_cfg::alias, edm::ConsumesCollector::consumes(), Exception, hitsProducer, HLT_2022v12_cff::InputTag, edm::Service< T >::isAvailable(), NumberOfEndcapDisks, edm::ProducesCollector::produces(), AlCaHLTBitMon_QueryRunRegistry::string, makeGlobalPositionRcd_cfg::tag, and trackerContainers.

83  : firstInitializeEvent_(true),
84  firstFinalizeEvent_(true),
86  hitsProducer(iConfig.getParameter<std::string>("hitsProducer")),
87  trackerContainers(iConfig.getParameter<std::vector<std::string> >("RoutList")),
88  pilotBlades(iConfig.exists("enablePilotBlades") ? iConfig.getParameter<bool>("enablePilotBlades") : false),
89  NumberOfEndcapDisks(iConfig.exists("NumPixelEndcap") ? iConfig.getParameter<int>("NumPixelEndcap") : 2),
90  tTopoToken_(iC.esConsumes()),
91  pDDToken_(iC.esConsumes(edm::ESInputTag("", iConfig.getParameter<std::string>("PixGeometryType")))),
92  pSetupToken_(iC.esConsumes()) {
93  edm::LogInfo("PixelDigitizer ") << "Enter the Pixel Digitizer";
94 
95  const std::string alias("simSiPixelDigis");
96 
97  producesCollector.produces<edm::DetSetVector<PixelDigi> >().setBranchAlias(alias);
98  producesCollector.produces<edm::DetSetVector<PixelDigiSimLink> >().setBranchAlias(alias + "siPixelDigiSimLink");
99 
100  for (auto const& trackerContainer : trackerContainers) {
101  edm::InputTag tag(hitsProducer, trackerContainer);
102  iC.consumes<std::vector<PSimHit> >(edm::InputTag(hitsProducer, trackerContainer));
103  }
105  if (!rng.isAvailable()) {
106  throw cms::Exception("Configuration")
107  << "SiPixelDigitizer requires the RandomNumberGeneratorService\n"
108  "which is not present in the configuration file. You must add the service\n"
109  "in the configuration file or remove the modules that require it.";
110  }
111 
112  _pixeldigialgo = std::make_unique<SiPixelDigitizerAlgorithm>(iConfig, iC);
113  if (NumberOfEndcapDisks != 2)
114  producesCollector.produces<PixelFEDChannelCollection>();
115  }
EDGetTokenT< ProductType > consumes(edm::InputTag const &tag)
const edm::ESGetToken< TrackerTopology, TrackerTopologyRcd > tTopoToken_
ProductRegistryHelper::BranchAliasSetterT< ProductType > produces()
const std::string hitsProducer
const edm::ESGetToken< TrackerGeometry, TrackerDigiGeometryRecord > pDDToken_
std::unique_ptr< SiPixelDigitizerAlgorithm > _pixeldigialgo
Log< level::Info, false > LogInfo
const edm::ESGetToken< MagneticField, IdealMagneticFieldRecord > pSetupToken_
const vstring trackerContainers
bool isAvailable() const
Definition: Service.h:40

◆ ~SiPixelDigitizer()

SiPixelDigitizer::~SiPixelDigitizer ( )
override

Definition at line 117 of file SiPixelDigitizer.cc.

117 { edm::LogInfo("PixelDigitizer ") << "Destruct the Pixel Digitizer"; }
Log< level::Info, false > LogInfo

Member Function Documentation

◆ accumulate() [1/2]

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

Implements DigiAccumulatorMixMod.

Definition at line 200 of file SiPixelDigitizer.cc.

References accumulatePixelHits(), crossingSimHitIndexOffset_, PixelDigiSimLink::HighTof, hitsProducer, mps_fire::i, iEvent, PixelDigiSimLink::LowTof, FastTrackerRecHitCombiner_cfi::simHits, AlCaHLTBitMon_QueryRunRegistry::string, makeGlobalPositionRcd_cfg::tag, and trackerContainers.

200  {
201  // Step A: Get Inputs
202  for (vstring::const_iterator i = trackerContainers.begin(), iEnd = trackerContainers.end(); i != iEnd; ++i) {
205 
206  iEvent.getByLabel(tag, simHits);
207  unsigned int tofBin = PixelDigiSimLink::LowTof;
208  if ((*i).find(std::string("HighTof")) != std::string::npos)
209  tofBin = PixelDigiSimLink::HighTof;
210  accumulatePixelHits(simHits, crossingSimHitIndexOffset_[tag.encode()], tofBin, iSetup);
211  // Now that the hits have been processed, I'll add the amount of hits in this crossing on to
212  // the global counter. Next time accumulateStripHits() is called it will count the sim hits
213  // as though they were on the end of this collection.
214  // Note that this is only used for creating digi-sim links (if configured to do so).
215  // std::cout << "index offset, current hit count = " << crossingSimHitIndexOffset_[tag.encode()] << ", " << simHits->size() << std::endl;
216  if (simHits.isValid())
217  crossingSimHitIndexOffset_[tag.encode()] += simHits->size();
218  }
219  }
const std::string hitsProducer
int iEvent
Definition: GenABIO.cc:224
void accumulatePixelHits(edm::Handle< std::vector< PSimHit > >, size_t globalSimHitIndex, const unsigned int tofBin, edm::EventSetup const &c)
const vstring trackerContainers
std::map< std::string, size_t > crossingSimHitIndexOffset_
Offset to add to the index of each sim hit to account for which crossing it&#39;s in. ...

◆ accumulate() [2/2]

void SiPixelDigitizer::accumulate ( PileUpEventPrincipal const &  e,
edm::EventSetup const &  c,
edm::StreamID const &  streamID 
)
overridevirtual

Implements DigiAccumulatorMixMod.

Definition at line 221 of file SiPixelDigitizer.cc.

References accumulatePixelHits(), crossingSimHitIndexOffset_, PixelDigiSimLink::HighTof, hitsProducer, mps_fire::i, iEvent, PixelDigiSimLink::LowTof, FastTrackerRecHitCombiner_cfi::simHits, AlCaHLTBitMon_QueryRunRegistry::string, makeGlobalPositionRcd_cfg::tag, and trackerContainers.

223  {
224  // Step A: Get Inputs
225  for (vstring::const_iterator i = trackerContainers.begin(), iEnd = trackerContainers.end(); i != iEnd; ++i) {
228 
229  iEvent.getByLabel(tag, simHits);
230  unsigned int tofBin = PixelDigiSimLink::LowTof;
231  if ((*i).find(std::string("HighTof")) != std::string::npos)
232  tofBin = PixelDigiSimLink::HighTof;
233  accumulatePixelHits(simHits, crossingSimHitIndexOffset_[tag.encode()], tofBin, iSetup);
234  // Now that the hits have been processed, I'll add the amount of hits in this crossing on to
235  // the global counter. Next time accumulateStripHits() is called it will count the sim hits
236  // as though they were on the end of this collection.
237  // Note that this is only used for creating digi-sim links (if configured to do so).
238  // std::cout << "index offset, current hit count = " << crossingSimHitIndexOffset_[tag.encode()] << ", " << simHits->size() << std::endl;
239  if (simHits.isValid())
240  crossingSimHitIndexOffset_[tag.encode()] += simHits->size();
241  }
242  }
const std::string hitsProducer
int iEvent
Definition: GenABIO.cc:224
void accumulatePixelHits(edm::Handle< std::vector< PSimHit > >, size_t globalSimHitIndex, const unsigned int tofBin, edm::EventSetup const &c)
const vstring trackerContainers
std::map< std::string, size_t > crossingSimHitIndexOffset_
Offset to add to the index of each sim hit to account for which crossing it&#39;s in. ...

◆ accumulatePixelHits()

void SiPixelDigitizer::accumulatePixelHits ( edm::Handle< std::vector< PSimHit > >  hSimHits,
size_t  globalSimHitIndex,
const unsigned int  tofBin,
edm::EventSetup const &  c 
)
private

Definition at line 123 of file SiPixelDigitizer.cc.

References _pixeldigialgo, cms::cuda::assert(), detectorUnits, edm::EventSetup::getData(), MagneticField::inTesla(), GeomDetEnumerators::isTrackerPixel(), LogDebug, pSetup, randomEngine_, FastTrackerRecHitCombiner_cfi::simHits, and tTopoToken_.

Referenced by accumulate().

126  {
127  if (hSimHits.isValid()) {
128  std::set<unsigned int> detIds;
129  std::vector<PSimHit> const& simHits = *hSimHits.product();
130  const TrackerTopology* tTopo = &iSetup.getData(tTopoToken_);
131  for (std::vector<PSimHit>::const_iterator it = simHits.begin(), itEnd = simHits.end(); it != itEnd;
132  ++it, ++globalSimHitIndex) {
133  unsigned int detId = (*it).detUnitId();
134  if (detIds.insert(detId).second) {
135  // The insert succeeded, so this detector element has not yet been processed.
136  assert(detectorUnits[detId]);
137  if (detectorUnits[detId] &&
138  detectorUnits[detId]
139  ->type()
140  .isTrackerPixel()) { // this test could be avoided and changed into a check of pixdet!=0
141  std::map<unsigned int, PixelGeomDetUnit const*>::iterator itDet = detectorUnits.find(detId);
142  if (itDet == detectorUnits.end())
143  continue;
144  auto pixdet = itDet->second;
145  assert(pixdet != nullptr);
146  //access to magnetic field in global coordinates
147  GlobalVector bfield = pSetup->inTesla(pixdet->surface().position());
148  LogDebug("PixelDigitizer ") << "B-field(T) at " << pixdet->surface().position()
149  << "(cm): " << pSetup->inTesla(pixdet->surface().position());
150  _pixeldigialgo->accumulateSimHits(
151  it, itEnd, globalSimHitIndex, tofBin, pixdet, bfield, tTopo, randomEngine_);
152  }
153  }
154  }
155  }
156  }
const edm::ESGetToken< TrackerTopology, TrackerTopologyRcd > tTopoToken_
virtual GlobalVector inTesla(const GlobalPoint &gp) const =0
Field value ad specified global point, in Tesla.
const MagneticField * pSetup
T const * product() const
Definition: Handle.h:70
assert(be >=bs)
std::map< unsigned int, PixelGeomDetUnit const * > detectorUnits
std::unique_ptr< SiPixelDigitizerAlgorithm > _pixeldigialgo
CLHEP::HepRandomEngine * randomEngine_
bool isValid() const
Definition: HandleBase.h:70
bool isTrackerPixel(GeomDetEnumerators::SubDetector m)
#define LogDebug(id)

◆ beginJob()

virtual void cms::SiPixelDigitizer::beginJob ( void  )
inlinevirtual

Definition at line 55 of file SiPixelDigitizer.h.

55 {}

◆ finalizeEvent()

void SiPixelDigitizer::finalizeEvent ( edm::Event e,
edm::EventSetup const &  c 
)
overridevirtual

Implements DigiAccumulatorMixMod.

Definition at line 245 of file SiPixelDigitizer.cc.

References _pixeldigialgo, TrackerGeometry::detUnits(), Exception, firstFinalizeEvent_, edm::EventSetup::getData(), iEvent, eostools::move(), convertSQLitetoXML_cfg::output, pDD, PileupInfo_, randomEngine_, and tTopoToken_.

245  {
246  const TrackerTopology* tTopo = &iSetup.getData(tTopoToken_);
247 
248  std::vector<edm::DetSet<PixelDigi> > theDigiVector;
249  std::vector<edm::DetSet<PixelDigiSimLink> > theDigiLinkVector;
250 
251  if (firstFinalizeEvent_) {
252  _pixeldigialgo->init_DynIneffDB(iSetup);
253  firstFinalizeEvent_ = false;
254  }
255  _pixeldigialgo->calculateInstlumiFactor(PileupInfo_.get());
256 
257  if (_pixeldigialgo->killBadFEDChannels()) {
258  std::unique_ptr<PixelFEDChannelCollection> PixelFEDChannelCollection_ =
259  _pixeldigialgo->chooseScenario(PileupInfo_.get(), randomEngine_);
260  if (PixelFEDChannelCollection_ == nullptr) {
261  throw cms::Exception("NullPointerError") << "PixelFEDChannelCollection not set in chooseScenario function.\n";
262  }
263  iEvent.put(std::move(PixelFEDChannelCollection_));
264  }
265 
266  for (const auto& iu : pDD->detUnits()) {
267  if (iu->type().isTrackerPixel()) {
268  //
269 
270  edm::DetSet<PixelDigi> collector(iu->geographicalId().rawId());
271  edm::DetSet<PixelDigiSimLink> linkcollector(iu->geographicalId().rawId());
272 
273  _pixeldigialgo->digitize(
274  dynamic_cast<const PixelGeomDetUnit*>(iu), collector.data, linkcollector.data, tTopo, randomEngine_);
275  if (!collector.data.empty()) {
276  theDigiVector.push_back(std::move(collector));
277  }
278  if (!linkcollector.data.empty()) {
279  theDigiLinkVector.push_back(std::move(linkcollector));
280  }
281  }
282  }
283 
284  // Step C: create collection with the cache vector of DetSet
285  std::unique_ptr<edm::DetSetVector<PixelDigi> > output(new edm::DetSetVector<PixelDigi>(theDigiVector));
286  std::unique_ptr<edm::DetSetVector<PixelDigiSimLink> > outputlink(
287  new edm::DetSetVector<PixelDigiSimLink>(theDigiLinkVector));
288 
289  // Step D: write output to file
290  iEvent.put(std::move(output));
291  iEvent.put(std::move(outputlink));
292 
293  randomEngine_ = nullptr; // to prevent access outside event
294  }
const edm::ESGetToken< TrackerTopology, TrackerTopologyRcd > tTopoToken_
const TrackerGeometry * pDD
const DetContainer & detUnits() const override
Returm a vector of all GeomDet.
std::unique_ptr< PileupMixingContent > PileupInfo_
int iEvent
Definition: GenABIO.cc:224
std::unique_ptr< SiPixelDigitizerAlgorithm > _pixeldigialgo
CLHEP::HepRandomEngine * randomEngine_
def move(src, dest)
Definition: eostools.py:511

◆ getEventPileupInfo()

PileupMixingContent* cms::SiPixelDigitizer::getEventPileupInfo ( )
inlineoverridevirtual

Reimplemented from DigiAccumulatorMixMod.

Definition at line 66 of file SiPixelDigitizer.h.

References PileupInfo_.

66 { return PileupInfo_.get(); }
std::unique_ptr< PileupMixingContent > PileupInfo_

◆ initializeEvent()

void SiPixelDigitizer::initializeEvent ( edm::Event const &  e,
edm::EventSetup const &  c 
)
overridevirtual

Implements DigiAccumulatorMixMod.

Definition at line 158 of file SiPixelDigitizer.cc.

References _pixeldigialgo, cms::cuda::assert(), crossingSimHitIndexOffset_, detectorUnits, TrackerGeometry::detUnits(), MillePedeFileConverter_cfg::e, firstInitializeEvent_, edm::EventSetup::getData(), edm::RandomNumberGenerator::getEngine(), TrackerTopology::layer(), NumberOfEndcapDisks, pDD, pDDToken_, pilotBlades, GeomDetEnumerators::PixelEndcap, pSetup, pSetupToken_, randomEngine_, and tTopoToken_.

158  {
159  if (firstInitializeEvent_) {
160  _pixeldigialgo->init(iSetup);
161  firstInitializeEvent_ = false;
162  }
163 
164  // Make sure that the first crossing processed starts indexing the sim hits from zero.
165  // This variable is used so that the sim hits from all crossing frames have sequential
166  // indices used to create the digi-sim link (if configured to do so) rather than starting
167  // from zero for each crossing.
169 
170  // Cache random number engine
172  randomEngine_ = &rng->getEngine(e.streamID());
173 
174  _pixeldigialgo->initializeEvent();
175  pDD = &iSetup.getData(pDDToken_);
176  pSetup = &iSetup.getData(pSetupToken_);
177  const TrackerTopology* tTopo = &iSetup.getData(tTopoToken_);
178 
179  // FIX THIS! We only need to clear and (re)fill this map when the geometry type IOV changes. Use ESWatcher to determine this.
180  if (true) { // Replace with ESWatcher
181  detectorUnits.clear();
182  for (const auto& iu : pDD->detUnits()) {
183  unsigned int detId = iu->geographicalId().rawId();
184  if (iu->type().isTrackerPixel()) {
185  auto pixdet = dynamic_cast<const PixelGeomDetUnit*>(iu);
186  assert(pixdet != nullptr);
187  if (iu->subDetector() ==
188  GeomDetEnumerators::SubDetector::PixelEndcap) { // true ONLY for the phase 0 pixel deetctor
189  unsigned int disk = tTopo->layer(detId); // using the generic layer method
190  //if using pilot blades, then allowing it for current detector only
191  if ((disk == 3) && ((!pilotBlades) && (NumberOfEndcapDisks == 2)))
192  continue;
193  }
194  detectorUnits.insert(std::make_pair(detId, pixdet));
195  }
196  }
197  }
198  }
const edm::ESGetToken< TrackerTopology, TrackerTopologyRcd > tTopoToken_
const TrackerGeometry * pDD
const MagneticField * pSetup
const DetContainer & detUnits() const override
Returm a vector of all GeomDet.
assert(be >=bs)
virtual CLHEP::HepRandomEngine & getEngine(StreamID const &)=0
Use this engine in event methods.
unsigned int layer(const DetId &id) const
std::map< unsigned int, PixelGeomDetUnit const * > detectorUnits
const edm::ESGetToken< TrackerGeometry, TrackerDigiGeometryRecord > pDDToken_
std::unique_ptr< SiPixelDigitizerAlgorithm > _pixeldigialgo
CLHEP::HepRandomEngine * randomEngine_
const edm::ESGetToken< MagneticField, IdealMagneticFieldRecord > pSetupToken_
std::map< std::string, size_t > crossingSimHitIndexOffset_
Offset to add to the index of each sim hit to account for which crossing it&#39;s in. ...

◆ StorePileupInformation()

void cms::SiPixelDigitizer::StorePileupInformation ( std::vector< int > &  numInteractionList,
std::vector< int > &  bunchCrossingList,
std::vector< float > &  TrueInteractionList,
std::vector< edm::EventID > &  eventInfoList,
int  bunchSpacing 
)
inlineoverridevirtual

Reimplemented from DigiAccumulatorMixMod.

Definition at line 57 of file SiPixelDigitizer.h.

References genPUProtons_cfi::bunchCrossingList, hltParticleFlowClusterECALL1Seeded_cfi::bunchSpacing, and PileupInfo_.

61  {
62  PileupInfo_ = std::make_unique<PileupMixingContent>(
63  numInteractionList, bunchCrossingList, TrueInteractionList, eventInfoList, bunchSpacing);
64  }
std::unique_ptr< PileupMixingContent > PileupInfo_

Member Data Documentation

◆ _pixeldigialgo

std::unique_ptr<SiPixelDigitizerAlgorithm> cms::SiPixelDigitizer::_pixeldigialgo
private

◆ crossingSimHitIndexOffset_

std::map<std::string, size_t> cms::SiPixelDigitizer::crossingSimHitIndexOffset_
private

Offset to add to the index of each sim hit to account for which crossing it's in.

I need to know what each sim hit index will be when the hits from all crossing frames are merged into one collection (assuming the MixingModule is configured to create the crossing frame for all sim hits). To do this I'll record how many hits were in each crossing, and then add that on to the index for a given hit in a given crossing. This assumes that the crossings are processed in the same order here as they are put into the crossing frame, which I'm pretty sure is true.
The key is the name of the sim hit collection.

Definition at line 85 of file SiPixelDigitizer.h.

Referenced by accumulate(), and initializeEvent().

◆ detectorUnits

std::map<unsigned int, PixelGeomDetUnit const*> cms::SiPixelDigitizer::detectorUnits
private

Definition at line 92 of file SiPixelDigitizer.h.

Referenced by accumulatePixelHits(), and initializeEvent().

◆ firstFinalizeEvent_

bool cms::SiPixelDigitizer::firstFinalizeEvent_
private

Definition at line 75 of file SiPixelDigitizer.h.

Referenced by finalizeEvent().

◆ firstInitializeEvent_

bool cms::SiPixelDigitizer::firstInitializeEvent_
private

Definition at line 74 of file SiPixelDigitizer.h.

Referenced by initializeEvent().

◆ hitsProducer

const std::string cms::SiPixelDigitizer::hitsProducer
private

Definition at line 88 of file SiPixelDigitizer.h.

Referenced by accumulate(), and SiPixelDigitizer().

◆ NumberOfEndcapDisks

const int cms::SiPixelDigitizer::NumberOfEndcapDisks
private

Definition at line 98 of file SiPixelDigitizer.h.

Referenced by initializeEvent(), and SiPixelDigitizer().

◆ pDD

const TrackerGeometry* cms::SiPixelDigitizer::pDD = nullptr
private

Definition at line 90 of file SiPixelDigitizer.h.

Referenced by finalizeEvent(), and initializeEvent().

◆ pDDToken_

const edm::ESGetToken<TrackerGeometry, TrackerDigiGeometryRecord> cms::SiPixelDigitizer::pDDToken_
private

Definition at line 101 of file SiPixelDigitizer.h.

Referenced by initializeEvent().

◆ PileupInfo_

std::unique_ptr<PileupMixingContent> cms::SiPixelDigitizer::PileupInfo_
private

Definition at line 95 of file SiPixelDigitizer.h.

Referenced by finalizeEvent(), getEventPileupInfo(), and StorePileupInformation().

◆ pilotBlades

const bool cms::SiPixelDigitizer::pilotBlades
private

Definition at line 97 of file SiPixelDigitizer.h.

Referenced by initializeEvent().

◆ pSetup

const MagneticField* cms::SiPixelDigitizer::pSetup = nullptr
private

Definition at line 91 of file SiPixelDigitizer.h.

Referenced by accumulatePixelHits(), and initializeEvent().

◆ pSetupToken_

const edm::ESGetToken<MagneticField, IdealMagneticFieldRecord> cms::SiPixelDigitizer::pSetupToken_
private

Definition at line 102 of file SiPixelDigitizer.h.

Referenced by initializeEvent().

◆ randomEngine_

CLHEP::HepRandomEngine* cms::SiPixelDigitizer::randomEngine_ = nullptr
private

Definition at line 93 of file SiPixelDigitizer.h.

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

◆ trackerContainers

const vstring cms::SiPixelDigitizer::trackerContainers
private

Definition at line 89 of file SiPixelDigitizer.h.

Referenced by accumulate(), and SiPixelDigitizer().

◆ tTopoToken_

const edm::ESGetToken<TrackerTopology, TrackerTopologyRcd> cms::SiPixelDigitizer::tTopoToken_
private

Definition at line 100 of file SiPixelDigitizer.h.

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