46 using SignalMap = std::map<uint32_t, std::map<int, float>>;
53 : digitizer_(ps, producesCollector, iC),
55 trackerSignalToken_(iC.consumes<
edm::DetSetVector<
PixelDigi>>(ps.getParameter<
edm::
InputTag>(
"trackerLabelSig"))),
56 pixelPileupLabel_(ps.getParameter<
edm::
InputTag>(
"pixelPileInputTag")),
57 trackerPileupLabel_(ps.getParameter<
edm::
InputTag>(
"trackerPileInputTag")),
58 pixelElectronPerAdc_(ps.getParameter<double>(
"pixelPmxStage1ElectronPerAdc")),
59 trackerElectronPerAdc_(ps.getParameter<double>(
"trackerPmxStage1ElectronPerAdc")) {}
88 for (
const auto& detset : digis) {
90 for (
const auto& digi : detset) {
93 auto& acc = accDet[digi.channel()];
94 acc += digi.adc() * electronPerADC;
101 std::vector<PileupSummaryInfo>
const& ps,
PreMixingPhase2TrackerWorker(const edm::ParameterSet &ps, edm::ProducesCollector, edm::ConsumesCollector &&iC)
void addPileups(PileUpEventPrincipal const &pep, edm::EventSetup const &es) override
void put(edm::Event &e, edm::EventSetup const &iSetup, std::vector< PileupSummaryInfo > const &ps, int bs) override
void finalizeEvent(edm::Event &e, edm::EventSetup const &c) override
void accumulate(const edm::DetSetVector< PixelDigi > &digis, const float electronsPerADC)
void initializeEvent(edm::Event const &e, edm::EventSetup const &c) override
virtual void beginLuminosityBlock(edm::LuminosityBlock const &lumi, edm::EventSetup const &setup)
void initializeEvent(edm::Event const &e, edm::EventSetup const &es) override
edm::InputTag pixelPileupLabel_
void loadAccumulator(const std::map< uint32_t, std::map< int, float > > &accumulator)
edm::InputTag trackerPileupLabel_
cms::Phase2TrackerDigitizer digitizer_
std::map< uint32_t, std::map< int, float > > SignalMap
float trackerElectronPerAdc_
~PreMixingPhase2TrackerWorker() override=default
edm::EDGetTokenT< edm::DetSetVector< PixelDigi > > pixelSignalToken_
edm::EDGetTokenT< edm::DetSetVector< PixelDigi > > trackerSignalToken_
void addSignals(edm::Event const &e, edm::EventSetup const &es) override
float pixelElectronPerAdc_
#define DEFINE_PREMIXING_WORKER(TYPE)
void beginLuminosityBlock(edm::LuminosityBlock const &lumi, edm::EventSetup const &es) override
bool getByLabel(edm::InputTag const &tag, edm::Handle< T > &result) const