CMS 3D CMS Logo

List of all members | Public Member Functions | Private Member Functions | Private Attributes | Friends
edm::ConsumesCollector Class Reference

#include "FWCore/Framework/interface/ConsumesCollector.h"

Public Member Functions

template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > consumes (edm::InputTag const &tag)
 
EDGetToken consumes (const TypeToGet &id, edm::InputTag const &tag)
 
template<BranchType B>
EDGetToken consumes (TypeToGet const &id, edm::InputTag const &tag)
 
 ConsumesCollector ()=delete
 
 ConsumesCollector (ConsumesCollector const &)=default
 
 ConsumesCollector (ConsumesCollector &&)=default
 
template<typename ProductType , BranchType B = InEvent>
void consumesMany ()
 
void consumesMany (const TypeToGet &id)
 
template<BranchType B>
void consumesMany (const TypeToGet &id)
 
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event>
auto esConsumes ()
 
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event>
auto esConsumes (ESInputTag const &tag)
 
template<typename ESProduct , Transition Tr = Transition::Event>
auto esConsumes (eventsetup::EventSetupRecordKey const &key, ESInputTag const &tag)
 
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > mayConsume (edm::InputTag const &tag)
 
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 
template<BranchType B>
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 
ConsumesCollectoroperator= (ConsumesCollector const &)=default
 
ConsumesCollectoroperator= (ConsumesCollector &&)=default
 

Private Member Functions

 ConsumesCollector (EDConsumerBase *iConsumer)
 

Private Attributes

edm::propagate_const< EDConsumerBase * > m_consumer
 

Friends

class EDConsumerBase
 

Detailed Description

Description: Helper class to gather consumes information for EDConsumerBase class.

Usage: The constructor of a module can get an instance of edm::ConsumesCollector by calling its consumesCollector() method. This instance can then be passed to helper classes in order to register the data the helper will request from an Event, LuminosityBlock or Run on behalf of the module.

 WARNING: The ConsumesCollector should be used during the time that modules are being

constructed. It should not be saved and used later. It will not work if it is used to call the consumes function during beginJob, beginRun, beginLuminosity block, event processing or at any later time. It can be used while the module constructor is running or be contained in a functor passed to the Framework with a call to callWhenNewProductsRegistered.

Definition at line 39 of file ConsumesCollector.h.

Constructor & Destructor Documentation

edm::ConsumesCollector::ConsumesCollector ( )
delete
edm::ConsumesCollector::ConsumesCollector ( ConsumesCollector const &  )
default
edm::ConsumesCollector::ConsumesCollector ( ConsumesCollector &&  )
default
edm::ConsumesCollector::ConsumesCollector ( EDConsumerBase iConsumer)
inlineprivate

Definition at line 118 of file ConsumesCollector.h.

118  :
119  m_consumer(iConsumer) {}
edm::propagate_const< EDConsumerBase * > m_consumer

Member Function Documentation

template<typename ProductType , BranchType B = InEvent>
EDGetTokenT<ProductType> edm::ConsumesCollector::consumes ( edm::InputTag const &  tag)
inline

Definition at line 52 of file ConsumesCollector.h.

References TtFullHadDaughter::B, m_consumer, and GlobalPosition_Frontier_DevDB_cff::tag.

Referenced by tnp::BaseTreeFiller::addBranches_(), AlignmentGlobalTrackSelector::AlignmentGlobalTrackSelector(), AlignmentTrackSelector::AlignmentTrackSelector(), AlignmentTwoBodyDecayTrackSelector::AlignmentTwoBodyDecayTrackSelector(), AreaSeededTrackingRegionsBuilder::AreaSeededTrackingRegionsBuilder(), tnp::BaseTreeFiller::BaseTreeFiller(), l1t::stage2::BMTFTokens::BMTFTokens(), HLTHiggsSubAnalysis::bookobjects(), MuonTrackingRegionBuilder::build(), l1t::stage2::CaloLayer1Tokens::CaloLayer1Tokens(), CaloParticleDebugger::CaloParticleDebugger(), l1t::stage2::CaloTokens::CaloTokens(), l1t::stage1::CaloTokens::CaloTokens(), CaloTruthAccumulator::CaloTruthAccumulator(), CastorDigiProducer::CastorDigiProducer(), ClusterChecker::ClusterChecker(), ConversionSeedFinder::ConversionSeedFinder(), CosmicSplitterValidation::CosmicSplitterValidation(), CutBasedElectronID::CutBasedElectronID(), DualByL2TSG::DualByL2TSG(), EcalRecHitWorkerRecover::EcalRecHitWorkerRecover(), EcalTBDigiProducer::EcalTBDigiProducer(), EcalUncalibRecHitWorkerMultiFit::EcalUncalibRecHitWorkerMultiFit(), ElectronIDSelectorLikelihood::ElectronIDSelectorLikelihood(), l1t::stage2::EMTFTokens::EMTFTokens(), cscdqm::EventProcessor::EventProcessor(), ExpressionVariable< Object, label >::ExpressionVariable(), FastTSGFromIOHit::FastTSGFromIOHit(), FTLDigitizerBase::FTLDigitizerBase(), GenericSimClusterMapper::GenericSimClusterMapper(), GetLumi::GetLumi(), GlobalCosmicMuonTrajectoryBuilder::GlobalCosmicMuonTrajectoryBuilder(), GlobalMuonRefitter::GlobalMuonRefitter(), GlobalMuonTrajectoryBuilder::GlobalMuonTrajectoryBuilder(), GlobalTrackingRegionProducerFromBeamSpot::GlobalTrackingRegionProducerFromBeamSpot(), l1t::stage2::GMTTokens::GMTTokens(), l1t::stage2::GTTokens::GTTokens(), HcalDigitizer::HcalDigitizer(), HcalTBDigiProducer::HcalTBDigiProducer(), HGCDigitizer::HGCDigitizer(), HLTBitComputer::HLTBitComputer(), HLTEventSelector::HLTEventSelector(), edm::pathStatusExpression::Operand::init(), PVFitter::initialize(), JetMETDQMDCSFilter::JetMETDQMDCSFilter(), L1BitComputer::L1BitComputer(), L1GtUtilsHelper::L1GtUtilsHelper(), L1JPTOffsetCorrectorImplMaker::L1JPTOffsetCorrectorImplMaker(), l1t::L1TGlobalUtilHelper::L1TGlobalUtilHelper(), L3MuonTrajectoryBuilder::L3MuonTrajectoryBuilder(), TrackAssociatorParameters::loadParameters(), reco::modules::ParameterAdapter< MCMatchCandRefSelector >::make(), MTDDigitizerBase::MTDDigitizerBase(), MuonCosmicCompatibilityFiller::MuonCosmicCompatibilityFiller(), MuonDetLayerMeasurements::MuonDetLayerMeasurements(), MuonSegmentMatcher::MuonSegmentMatcher(), MuonShowerInformationFiller::MuonShowerInformationFiller(), MuonTrackLoader::MuonTrackLoader(), MuonTrackValidatorBase::MuonTrackValidatorBase(), MuonVPlusJetsIDSelectionFunctor::MuonVPlusJetsIDSelectionFunctor(), l1t::L1TGlobalUtilHelper::operator()(), L1GtUtilsHelper::operator()(), pat::PATUserDataMerger< ObjectType, Operation >::PATUserDataMerger(), PF_PU_AssoMapAlgos::PF_PU_AssoMapAlgos(), PFClusterFromHGCalMultiCluster::PFClusterFromHGCalMultiCluster(), PFEcalBarrelRecHitCreator::PFEcalBarrelRecHitCreator(), PFEcalEndcapRecHitCreator::PFEcalEndcapRecHitCreator(), PFEcalRecHitCreatorMaxSample< Geometry, Layer, Detector >::PFEcalRecHitCreatorMaxSample(), PFHBHERecHitCreator::PFHBHERecHitCreator(), PFHBHERecHitCreatorMaxSample::PFHBHERecHitCreatorMaxSample(), PFHcalRecHitCreator< Digi, Geometry, Layer, Detector >::PFHcalRecHitCreator(), PFHFRecHitCreator::PFHFRecHitCreator(), PFHGCalRecHitCreator< DET, Layer, det, subdet >::PFHGCalRecHitCreator(), PFPSRecHitCreator::PFPSRecHitCreator(), cms::PileupVertexAccumulator::PileupVertexAccumulator(), PixelClusterShapeSeedComparitor::PixelClusterShapeSeedComparitor(), RazorComputer::RazorComputer(), RealisticSimClusterMapper::RealisticSimClusterMapper(), RecoTrackAccumulator::RecoTrackAccumulator(), RecoTrackSelectorBase::RecoTrackSelectorBase(), HLTExoticaSubAnalysis::registerConsumes(), SeedFilter::SeedFilter(), SeedingLayerSetsBuilder::SeedingLayerSetsBuilder(), SegmentsTrackAssociator::SegmentsTrackAssociator(), PhoFull5x5SigmaIEtaIEtaValueMapCut::setConsumes(), PhoMVACut::setConsumes(), PhoAnyPFIsoWithEAAndQuadScalingCut::setConsumes(), PhoAnyPFIsoWithEACut::setConsumes(), GsfEleRelPFIsoScaledCut::setConsumes(), PhoAnyPFIsoWithEAAndExpoScalingCut::setConsumes(), PhoAnyPFIsoWithEAAndExpoScalingEBCut::setConsumes(), GsfEleMVACut::setConsumes(), GsfEleEffAreaPFIsoCut::setConsumes(), GsfEleValueMapIsoRhoCut::setConsumes(), MuonPOGStandardCut::setConsumes(), GsfEleConversionVetoCut::setConsumes(), GsfEleDeltaBetaIsoCut::setConsumes(), GsfEleTrkPtIsoRhoCut::setConsumes(), MuonDxyCut::setConsumes(), MuonDzCut::setConsumes(), GsfEleCalPFClusterIsoCut::setConsumes(), GsfEleEmHadD1IsoRhoCut::setConsumes(), GsfEleHadronicOverEMEnergyScaledCut::setConsumes(), EG8XObjectUpdateModifier::setConsumes(), EGRegressionModifierV2::setConsumes(), EGPfIsolationModifierFromValueMaps::setConsumes(), EGRegressionModifierV1::setConsumes(), EGFull5x5ShowerShapeModifierFromValueMaps::setConsumes(), EGExtraInfoModifierFromValueMaps< MapType, OutputType >::setConsumes(), EGExtraInfoModifierFromValueMaps< MapType, OutputType >::setEventContent(), SETPatternRecognition::SETPatternRecognition(), CollHandle< EEDigiCollection >::setToken(), SCEnergyCorrectorSemiParm::setTokens(), ecaldqm::TrigPrimTask::setTokens(), ecaldqm::ClusterTask::setTokens(), cms::SiPixelDigitizer::SiPixelDigitizer(), SiStripDCSStatus::SiStripDCSStatus(), SiStripDigitizer::SiStripDigitizer(), dqm::TrackAnalyzer::TrackAnalyzer(), TrackerSeedCleaner::TrackerSeedCleaner(), TrackingSeedCandidates::TrackingSeedCandidates(), TrackingTruthAccumulator::TrackingTruthAccumulator(), TSGForRoadSearch::TSGForRoadSearch(), TSGFromPropagation::TSGFromPropagation(), METCorrectionAlgorithm::type2BinningEntryType::type2BinningEntryType(), ctfseeding::HitExtractorSTRP::useMatchedHits(), ctfseeding::HitExtractorSTRP::useRPhiHits(), ctfseeding::HitExtractorPIX::useSkipClusters_(), ctfseeding::HitExtractorSTRP::useSkipClusters_(), ctfseeding::HitExtractorSTRP::useStereoHits(), VertexBeamspotOrigins::VertexBeamspotOrigins(), VertexMonitor::VertexMonitor(), and WeightManager::WeightManager().

52  {
53  return m_consumer->consumes<ProductType,B>(tag);
54  }
edm::propagate_const< EDConsumerBase * > m_consumer
static const std::string B
EDGetToken edm::ConsumesCollector::consumes ( const TypeToGet id,
edm::InputTag const &  tag 
)
inline

Definition at line 56 of file ConsumesCollector.h.

References m_consumer.

56  {
57  return m_consumer->consumes(id,tag);
58  }
edm::propagate_const< EDConsumerBase * > m_consumer
template<BranchType B>
EDGetToken edm::ConsumesCollector::consumes ( TypeToGet const &  id,
edm::InputTag const &  tag 
)
inline
template<typename ProductType , BranchType B = InEvent>
void edm::ConsumesCollector::consumesMany ( )
inline

Definition at line 81 of file ConsumesCollector.h.

References TtFullHadDaughter::B, and m_consumer.

81  {
82  m_consumer->consumesMany<ProductType,B>();
83  }
edm::propagate_const< EDConsumerBase * > m_consumer
static const std::string B
void edm::ConsumesCollector::consumesMany ( const TypeToGet id)
inline

Definition at line 86 of file ConsumesCollector.h.

References m_consumer.

86  {
87  m_consumer->consumesMany(id);
88  }
edm::propagate_const< EDConsumerBase * > m_consumer
template<BranchType B>
void edm::ConsumesCollector::consumesMany ( const TypeToGet id)
inline

Definition at line 91 of file ConsumesCollector.h.

References TtFullHadDaughter::B, triggerObjects_cff::id, and m_consumer.

91  {
92  m_consumer->consumesMany<B>(id);
93  }
edm::propagate_const< EDConsumerBase * > m_consumer
static const std::string B
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event>
auto edm::ConsumesCollector::esConsumes ( )
inline

Definition at line 97 of file ConsumesCollector.h.

98  {
99  return esConsumes<ESProduct, ESRecord, Tr>(ESInputTag{});
100  }
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event>
auto edm::ConsumesCollector::esConsumes ( ESInputTag const &  tag)
inline

Definition at line 103 of file ConsumesCollector.h.

References m_consumer, and GlobalPosition_Frontier_DevDB_cff::tag.

104  {
105  return m_consumer->esConsumes<ESProduct, ESRecord, Tr>(tag);
106  }
edm::propagate_const< EDConsumerBase * > m_consumer
template<typename ESProduct , Transition Tr = Transition::Event>
auto edm::ConsumesCollector::esConsumes ( eventsetup::EventSetupRecordKey const &  key,
ESInputTag const &  tag 
)
inline

Definition at line 109 of file ConsumesCollector.h.

References crabWrapper::key, m_consumer, and GlobalPosition_Frontier_DevDB_cff::tag.

110  {
111  return m_consumer->esConsumes<ESProduct, Tr>(key, tag);
112  }
edm::propagate_const< EDConsumerBase * > m_consumer
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT<ProductType> edm::ConsumesCollector::mayConsume ( edm::InputTag const &  tag)
inline
EDGetToken edm::ConsumesCollector::mayConsume ( const TypeToGet id,
edm::InputTag const &  tag 
)
inline

Definition at line 71 of file ConsumesCollector.h.

References m_consumer.

71  {
72  return m_consumer->mayConsume(id,tag);
73  }
edm::propagate_const< EDConsumerBase * > m_consumer
template<BranchType B>
EDGetToken edm::ConsumesCollector::mayConsume ( const TypeToGet id,
edm::InputTag const &  tag 
)
inline

Definition at line 76 of file ConsumesCollector.h.

References TtFullHadDaughter::B, triggerObjects_cff::id, m_consumer, and GlobalPosition_Frontier_DevDB_cff::tag.

76  {
77  return m_consumer->mayConsume<B>(id,tag);
78  }
edm::propagate_const< EDConsumerBase * > m_consumer
static const std::string B
ConsumesCollector& edm::ConsumesCollector::operator= ( ConsumesCollector const &  )
default
ConsumesCollector& edm::ConsumesCollector::operator= ( ConsumesCollector &&  )
default

Friends And Related Function Documentation

friend class EDConsumerBase
friend

Definition at line 116 of file ConsumesCollector.h.

Member Data Documentation

edm::propagate_const<EDConsumerBase*> edm::ConsumesCollector::m_consumer
private

Definition at line 122 of file ConsumesCollector.h.

Referenced by consumes(), consumesMany(), esConsumes(), and mayConsume().