Go to the documentation of this file. 1 #ifndef SiStripDigitizer_h
2 #define SiStripDigitizer_h
28 class HepRandomEngine;
32 class ConsumesCollector;
69 std::vector<float>& TrueInteractionList,
70 std::vector<edm::EventID>& eventInfoList,
72 PileupInfo_ = std::make_unique<PileupMixingContent>(
81 size_t globalSimHitIndex,
82 const unsigned int tofBin);
85 typedef std::map<unsigned int, std::vector<std::pair<const PSimHit*, int>>, std::less<unsigned int>>
simhit_map;
edm::ESGetToken< SiStripApvSimulationParameters, SiStripApvSimulationParametersRcd > apvSimulationParametersToken_
Whether or not to create the association to sim truth collection. Set in configuration.
std::vector< std::string > vstring
const TrackerGeometry * pDD
const bool makeDigiSimLinks_
const edm::ESGetToken< TrackerGeometry, TrackerDigiGeometryRecord > pDDToken_
const edm::ESGetToken< SiStripNoises, SiStripNoisesRcd > noiseToken_
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.
const edm::ESGetToken< SiStripGain, SiStripGainSimRcd > gainToken_
PileupMixingContent * getEventPileupInfo() override
simhit_map::iterator simhit_map_iterator
const edm::ESGetToken< SiStripPedestals, SiStripPedestalsRcd > pedestalToken_
void StorePileupInformation(std::vector< int > &numInteractionList, std::vector< int > &bunchCrossingList, std::vector< float > &TrueInteractionList, std::vector< edm::EventID > &eventInfoList, int bunchSpacing) override
SiStripDigitizer(const edm::ParameterSet &conf, edm::ProducesCollector, edm::ConsumesCollector &iC)
std::vector< std::pair< int, std::bitset< 6 > > > theAffectedAPVvector
~SiStripDigitizer() override
std::unique_ptr< SiStripDigitizerAlgorithm > theDigiAlgo
const edm::ESGetToken< TrackerTopology, TrackerTopologyRcd > tTopoToken_
void initializeEvent(edm::Event const &e, edm::EventSetup const &c) override
const std::string hitsProducer
const edm::ESGetToken< SiStripThreshold, SiStripThresholdRcd > thresholdToken_
const double fracOfEventsToSimAPV_
Accumulator to perform digitisation on the strip tracker sim hits.
const edm::ESGetToken< MagneticField, IdealMagneticFieldRecord > pSetupToken_
std::map< unsigned int, std::vector< std::pair< const PSimHit *, int > >, std::less< unsigned int > > simhit_map
CLHEP::HepRandomEngine * randomEngine_
const vstring trackerContainers
std::unique_ptr< PileupMixingContent > PileupInfo_
void accumulateStripHits(edm::Handle< std::vector< PSimHit >>, const TrackerTopology *tTopo, size_t globalSimHitIndex, const unsigned int tofBin)
const bool includeAPVSimulation_
const bool zeroSuppression
void accumulate(edm::Event const &e, edm::EventSetup const &c) override
std::map< unsigned int, StripGeomDetUnit const * > detectorUnits
edm::ESGetToken< SiStripDetCabling, SiStripDetCablingRcd > detCablingToken_
const MagneticField * pSetup
void finalizeEvent(edm::Event &e, edm::EventSetup const &c) override
std::map< uint32_t, std::vector< int > > theDetIdList