27 edm::StreamCache<reco::PixelClusterCounts>,
28 edm::EndLuminosityBlockProducer,
55 : lumiPutToken_(produces<
reco::PixelClusterCounts,
edm::
Transition::EndLuminosityBlock>(
57 pccToken_(consumes<
reco::PixelClusterCountsInEvent>(
62 return std::make_unique<reco::PixelClusterCounts>();
67 return std::make_shared<reco::PixelClusterCounts>();
84 unsigned int bx =
iEvent.bunchCrossing();
86 streamCache(iID)->eventCounter(
bx);
88 streamCache(iID)->add(inputPcc);
95 iCounts->
merge(*streamCache(iID));
97 streamCache(iID)->reset();
std::unique_ptr< reco::PixelClusterCounts > beginStream(edm::StreamID) const override
void globalEndLuminosityBlockProduce(edm::LuminosityBlock &iLumi, edm::EventSetup const &, reco::PixelClusterCounts const *iCounts) const override
AlcaPCCIntegrator(const edm::ParameterSet &)
~AlcaPCCIntegrator() override=default
const edm::EDGetTokenT< reco::PixelClusterCountsInEvent > pccToken_
void merge(reco::PixelClusterCounts const &pcc)
#define DEFINE_FWK_MODULE(type)
void globalEndLuminosityBlockSummary(edm::LuminosityBlock const &, edm::EventSetup const &, reco::PixelClusterCounts *iCounts) const override
void emplace(EDPutTokenT< PROD > token, Args &&... args)
puts a new product
void accumulate(edm::StreamID iID, const edm::Event &iEvent, const edm::EventSetup &) const override
void streamEndLuminosityBlockSummary(edm::StreamID, edm::LuminosityBlock const &, edm::EventSetup const &, reco::PixelClusterCounts *) const override
std::shared_ptr< reco::PixelClusterCounts > globalBeginLuminosityBlockSummary(edm::LuminosityBlock const &, edm::EventSetup const &) const override
const edm::EDPutTokenT< reco::PixelClusterCounts > lumiPutToken_