#include <Phase2TrackerDigitizer.h>
Public Types | |
using | ModuleTypeCache = std::unordered_map< uint32_t, TrackerGeometry::ModuleType > |
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 |
template<class T > | |
void | accumulate_local (T const &iEvent, edm::EventSetup const &iSetup) |
virtual void | beginJob () |
void | finalizeEvent (edm::Event &e, edm::EventSetup const &c) override |
void | initializeEvent (edm::Event const &e, edm::EventSetup const &c) override |
void | loadAccumulator (const std::map< uint32_t, std::map< int, float > > &accumulator) |
Phase2TrackerDigitizer (const edm::ParameterSet &iConfig, edm::ProducesCollector, edm::ConsumesCollector &iC) | |
~Phase2TrackerDigitizer () 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 PileupMixingContent * | getEventPileupInfo () |
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 () |
Private Types | |
enum | AlgorithmType { AlgorithmType::InnerPixel, AlgorithmType::InnerPixel3D, AlgorithmType::PixelinPS, AlgorithmType::StripinPS, AlgorithmType::TwoStrip, AlgorithmType::Unknown } |
using | vstring = std::vector< std::string > |
Private Member Functions | |
void | accumulatePixelHits (edm::Handle< std::vector< PSimHit > >, size_t globalSimHitIndex, const uint32_t tofBin) |
template<typename DigiType > | |
void | addOuterTrackerCollection (edm::Event &iEvent, const edm::EventSetup &iSetup) |
void | addPixelCollection (edm::Event &iEvent, const edm::EventSetup &iSetup, const bool ot_analog) |
AlgorithmType | getAlgoType (uint32_t idet) |
Private Attributes | |
std::map< AlgorithmType, std::unique_ptr< Phase2TrackerDigitizerAlgorithm > > | algomap_ |
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< uint32_t, const Phase2TrackerGeomDetUnit * > | detectorUnits_ |
bool | first_ |
const std::string | hitsProducer_ |
const bool | isOuterTrackerReadoutAnalog_ |
const bool | makeDigiSimLinks_ |
ModuleTypeCache | moduleTypeCache_ |
const TrackerGeometry * | pDD_ = nullptr |
const edm::ESGetToken< TrackerGeometry, TrackerDigiGeometryRecord > | pDDToken_ |
const bool | premixStage1_ |
const MagneticField * | pSetup_ = nullptr |
const edm::ESGetToken< MagneticField, IdealMagneticFieldRecord > | pSetupToken_ |
edm::ESWatcher< TrackerDigiGeometryRecord > | theTkDigiGeomWatcher_ |
const vstring | trackerContainers_ |
const TrackerTopology * | tTopo_ = nullptr |
const edm::ESGetToken< TrackerTopology, TrackerTopologyRcd > | tTopoToken_ |
const bool | usePseudoPixel3DAlgo_ |
Definition at line 51 of file Phase2TrackerDigitizer.h.
using cms::Phase2TrackerDigitizer::ModuleTypeCache = std::unordered_map<uint32_t, TrackerGeometry::ModuleType> |
Definition at line 53 of file Phase2TrackerDigitizer.h.
|
private |
Definition at line 73 of file Phase2TrackerDigitizer.h.
|
strongprivate |
Enumerator | |
---|---|
InnerPixel | |
InnerPixel3D | |
PixelinPS | |
StripinPS | |
TwoStrip | |
Unknown |
Definition at line 76 of file Phase2TrackerDigitizer.h.
|
explicit |
Definition at line 61 of file Phase2TrackerDigitizer.cc.
References algomap_, edm::ParameterSet::getParameter(), InnerPixel, InnerPixel3D, makeDigiSimLinks_, PixelinPS, premixStage1_, edm::ProducesCollector::produces(), AlCaHLTBitMon_QueryRunRegistry::string, StripinPS, and TwoStrip.
|
override |
Definition at line 101 of file Phase2TrackerDigitizer.cc.
|
overridevirtual |
Implements DigiAccumulatorMixMod.
Definition at line 175 of file Phase2TrackerDigitizer.cc.
References iEvent.
|
overridevirtual |
Implements DigiAccumulatorMixMod.
Definition at line 179 of file Phase2TrackerDigitizer.cc.
References iEvent.
void cms::Phase2TrackerDigitizer::accumulate_local | ( | T const & | iEvent, |
edm::EventSetup const & | iSetup | ||
) |
Definition at line 186 of file Phase2TrackerDigitizer.cc.
References accumulatePixelHits(), crossingSimHitIndexOffset_, PixelDigiSimLink::HighTof, hitsProducer_, iEvent, PixelDigiSimLink::LowTof, FastTrackerRecHitCombiner_cfi::simHits, AlCaHLTBitMon_QueryRunRegistry::string, makeGlobalPositionRcd_cfg::tag, trackerContainers_, and findQualityFiles::v.
|
private |
Definition at line 102 of file Phase2TrackerDigitizer.cc.
References algomap_, detectorUnits_, getAlgoType(), MagneticField::inTesla(), LogDebug, GloballyPositioned< T >::position(), pSetup_, FastTrackerRecHitCombiner_cfi::simHits, and GeomDet::surface().
Referenced by accumulate_local().
|
private |
Definition at line 341 of file Phase2TrackerDigitizer.cc.
References algomap_, edm::DetSet< T >::data, TrackerGeometry::detUnits(), getAlgoType(), iEvent, info(), InnerPixel, InnerPixel3D, makeDigiSimLinks_, eostools::move(), convertSQLitetoXML_cfg::output, pDD_, nano_mu_digi_cff::rawId, and tTopo_.
|
private |
Definition at line 273 of file Phase2TrackerDigitizer.cc.
References algomap_, PixelDigi::channelToPixel(), edm::DetSet< T >::data, TrackerGeometry::detUnits(), getAlgoType(), iEvent, info(), InnerPixel, InnerPixel3D, makeDigiSimLinks_, eostools::move(), convertSQLitetoXML_cfg::output, pDD_, nano_mu_digi_cff::rawId, and tTopo_.
Referenced by finalizeEvent().
|
inlinevirtual |
Definition at line 64 of file Phase2TrackerDigitizer.h.
|
overridevirtual |
Implements DigiAccumulatorMixMod.
Definition at line 217 of file Phase2TrackerDigitizer.cc.
References addPixelCollection(), iEvent, isOuterTrackerReadoutAnalog_, and premixStage1_.
Referenced by PreMixingPhase2TrackerWorker::put().
|
private |
Definition at line 227 of file Phase2TrackerDigitizer.cc.
References TrackerGeometry::getDetectorType(), InnerPixel, InnerPixel3D, moduleTypeCache_, pDD_, TrackerGeometry::Ph1PXB, TrackerGeometry::Ph1PXF, TrackerGeometry::Ph2PSP, TrackerGeometry::Ph2PSS, TrackerGeometry::Ph2PXB, TrackerGeometry::Ph2PXB3D, TrackerGeometry::Ph2PXF, TrackerGeometry::Ph2PXF3D, TrackerGeometry::Ph2SS, PixelinPS, StripinPS, TwoStrip, TrackerGeometry::UNKNOWN, Unknown, and usePseudoPixel3DAlgo_.
Referenced by accumulatePixelHits(), addOuterTrackerCollection(), addPixelCollection(), and loadAccumulator().
|
overridevirtual |
Implements DigiAccumulatorMixMod.
Definition at line 133 of file Phase2TrackerDigitizer.cc.
References algomap_, cms::cuda::assert(), edm::ESWatcher< T >::check(), crossingSimHitIndexOffset_, detectorUnits_, TrackerGeometry::detUnits(), MillePedeFileConverter_cfg::e, Exception, first_, edm::EventSetup::getData(), edm::RandomNumberGenerator::getEngine(), edm::Service< T >::isAvailable(), moduleTypeCache_, pDD_, pDDToken_, pSetup_, pSetupToken_, nano_mu_digi_cff::rawId, theTkDigiGeomWatcher_, align::Tracker, tTopo_, and tTopoToken_.
Referenced by PreMixingPhase2TrackerWorker::initializeEvent().
void cms::Phase2TrackerDigitizer::loadAccumulator | ( | const std::map< uint32_t, std::map< int, float > > & | accumulator | ) |
Definition at line 209 of file Phase2TrackerDigitizer.cc.
References mixOne_premix_on_sim_cfi::accumulator, algomap_, and getAlgoType().
Referenced by PreMixingPhase2TrackerWorker::put().
|
private |
Definition at line 97 of file Phase2TrackerDigitizer.h.
Referenced by accumulatePixelHits(), addOuterTrackerCollection(), addPixelCollection(), initializeEvent(), loadAccumulator(), and Phase2TrackerDigitizer().
|
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 96 of file Phase2TrackerDigitizer.h.
Referenced by accumulate_local(), and initializeEvent().
|
private |
Definition at line 105 of file Phase2TrackerDigitizer.h.
Referenced by accumulatePixelHits(), and initializeEvent().
|
private |
Definition at line 86 of file Phase2TrackerDigitizer.h.
Referenced by initializeEvent().
|
private |
Definition at line 98 of file Phase2TrackerDigitizer.h.
Referenced by accumulate_local().
|
private |
Definition at line 108 of file Phase2TrackerDigitizer.h.
Referenced by finalizeEvent().
|
private |
Definition at line 111 of file Phase2TrackerDigitizer.h.
Referenced by addOuterTrackerCollection(), addPixelCollection(), and Phase2TrackerDigitizer().
|
private |
Definition at line 113 of file Phase2TrackerDigitizer.h.
Referenced by getAlgoType(), and initializeEvent().
|
private |
Definition at line 103 of file Phase2TrackerDigitizer.h.
Referenced by addOuterTrackerCollection(), addPixelCollection(), getAlgoType(), and initializeEvent().
|
private |
Definition at line 100 of file Phase2TrackerDigitizer.h.
Referenced by initializeEvent().
|
private |
Definition at line 110 of file Phase2TrackerDigitizer.h.
Referenced by finalizeEvent(), and Phase2TrackerDigitizer().
|
private |
Definition at line 104 of file Phase2TrackerDigitizer.h.
Referenced by accumulatePixelHits(), and initializeEvent().
|
private |
Definition at line 101 of file Phase2TrackerDigitizer.h.
Referenced by initializeEvent().
|
private |
Definition at line 107 of file Phase2TrackerDigitizer.h.
Referenced by initializeEvent().
|
private |
Definition at line 99 of file Phase2TrackerDigitizer.h.
Referenced by accumulate_local().
|
private |
Definition at line 106 of file Phase2TrackerDigitizer.h.
Referenced by addOuterTrackerCollection(), addPixelCollection(), and initializeEvent().
|
private |
Definition at line 102 of file Phase2TrackerDigitizer.h.
Referenced by initializeEvent().
|
private |
Definition at line 109 of file Phase2TrackerDigitizer.h.
Referenced by getAlgoType().