CMS 3D CMS Logo

List of all members | Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes
edm::ESProducer Class Reference

#include <ESProducer.h>

Inheritance diagram for edm::ESProducer:
edm::ESProxyFactoryProducer edm::eventsetup::DataProxyProvider ALPAKA_ACCELERATOR_NAMESPACE::ESProducer AnalyticalPropagatorESProducer BeamHaloPropagatorESProducer BeamSpotFakeConditions BtagPerformanceESProducer BufferedBoostIOESProducer< DataType, MyRecord > CaloGeometryBuilder CaloGeometryDBEP< T, U > CaloGeometryEP< T, D > CaloMiscalibTools CaloMiscalibToolsMC CaloSimParametersESModule CaloSimulationConstantsESModule CaloTopologyBuilder CaloTowerConstituentsMapBuilder CaloTowerHardcodeGeometryEP CaloTowerTopologyEP CaloTPGTranscoderULUTs CastorDbProducer CastorHardcodeCalibrations CastorHardcodeGeometryEP CastorTextCalibrations Chi2ChargeMeasurementEstimatorESProducer CloseComponentsMergerESProducer< N > ClusterShapeHitFilterESProducer cms::alpakatest::TestESProducerT< TProduct, TRecord > ConvertingESProducerT< Record, Target, Source > ConvertingESProducerWithDependenciesT< CombinedRecord< DepsRecords... >, Target, Dependencies... > CSCBadChambersConditions CSCBadStripsConditions CSCBadWiresConditions CSCChamberIndexValues CSCChamberMapValues CSCChamberTimeCorrectionsValues CSCChannelMapperESProducer CSCChipSpeedCorrectionDBConditions CSCCrateMapValues CSCCrosstalkConditions CSCCrosstalkDBConditions CSCDBL1TPParametersConditions CSCDDUMapValues CSCFakeCrosstalkConditions CSCFakeDBCrosstalk CSCFakeDBGains CSCFakeDBNoiseMatrix CSCFakeDBPedestals CSCFakeGainsConditions CSCFakeNoiseMatrixConditions CSCFakePedestalsConditions CSCGainsConditions CSCGainsDBConditions CSCGasGainCorrectionDBConditions CSCGeometryESModule CSCIndexerESProducer CSCL1TPLookupTableEP CSCL1TPParametersConditions CSCNoiseMatrixConditions CSCNoiseMatrixDBConditions CSCObjectMapESProducer CSCPedestalsDBConditions CSCTFConfigProducer CTPPSBeamParametersESSource CTPPSBeamParametersFromLHCInfoESSource CTPPSCompositeESSource CTPPSGeometryESModule CTPPSInterpolatedOpticalFunctionsESSource CTPPSLHCInfoESSource CTPPSLHCInfoRandomXangleESSource CTPPSModifiedOpticalFunctionsESSource CTPPSOpticalFunctionsESSource CTPPSPixelDAQMappingESSourceXML CTPPSRPAlignmentCorrectionsDataESSourceXML DDCompactViewESProducer DDCompactViewMFESProducer DDDetectorESProducer DDSpecParRegistryESProducer DDVectorRegistryESProducer DetIdAssociatorESProducer DetLayerGeometryESProducer DIPLumiProducer DistanceBetweenComponentsESProducer< N > DTConfigDBProducer DTConfigTrivialProducer DTFakeT0ESProducer DTGeometryESModule DTGeometryESProducer DTObjectMapESProducer DTTrackFinderConfig EcalBasicClusterLocalContCorrectionsESProducer EcalCATIAGainRatiosESProducer EcalElectronicsMappingBuilder EcalGlobalShowerContainmentCorrectionsVsEtaESProducer EcalLaserCorrectionService EcalLaserCorrectionServiceMC EcalLiteDTUPedestalsESProducer EcalMultifitParametersGPUESProducer EcalMustacheSCParametersESProducer EcalNextToDeadChannelESProducer EcalRecHitParametersGPUESProducer EcalRegionCablingESProducer EcalSCDynamicDPhiParametersESProducer EcalSeverityLevelESProducer EcalShowerContainmentCorrectionsESProducer EcalSimParametersESModule EcalTBGeometryBuilder EcalTBHodoscopeGeometryEP EcalTrigPrimESProducer EcalTrigPrimSpikeESProducer EcalTrigTowerConstituentsMapBuilder EcalTrivialConditionRetriever edm::ESProducerExternalWork edm::ESProducerLooper edm::test::cpu::ESTestProducerA edm::test::other::ESTestProducerA edmtest::ConcurrentIOVESProducer edmtest::ConcurrentIOVESSource edmtest::DoodadESProducer edmtest::DoodadESSource edmtest::ESTestProducerA edmtest::ESTestProducerAZ edmtest::ESTestProducerB edmtest::ESTestProducerBUsingHost edmtest::ESTestProducerC edmtest::ESTestProducerD edmtest::ESTestProducerE edmtest::ESTestProducerF edmtest::ESTestProducerG edmtest::ESTestProducerH edmtest::ESTestProducerI edmtest::ESTestProducerJ edmtest::ESTestProducerK edmtest::RunLumiESSource edmtest::WhatsItESProducer ES_TTClusterAlgorithm_neighbor< T > ES_TTClusterAlgorithm_official< T > ES_TTStubAlgorithm_cbc3< T > ES_TTStubAlgorithm_official< T > ESTrivialConditionRetriever FakeAlignmentProducer FakeAlignmentSource FakeCaloAlignmentEP FFTJetCorrectionESProducer< CT > FFTJetLookupTableESProducer< CT > FWRecoGeometryESProducer FWTGeoRecoGeometryESProducer GeantPropagatorESProducer GEMGeometryESModule GlobalDetLayerGeometryESProducer GlobalTrackingGeometryESProducer GsfMaterialEffectsESProducer GsfTrajectoryFitterESProducer GsfTrajectorySmootherESProducer HBHEDarkeningEP HcalAlignmentEP HcalChannelPropertiesEP HcalDbProducer HcalDDDGeometryEP HcalDDDRecConstantsESModule HcalDDDSimConstantsESModule HcalHardcodeCalibrations HcalHardcodeGeometryEP HcalMahiPulseOffsetsGPUESProducer HcalParametersESModule HcalRecAlgoESProducer HcalSimParametersESModule HcalSimulationConstantsESModule HcalTB02ParametersESModule HcalTB06ParametersESModule HcalTextCalibrations HcalTimeSlewEP HcalTopologyIdealEP HcalTPGCoderULUT HcalTrigTowerGeometryESProducer HepPDTESSource HeterogeneousHGCalHEFCellPositionsFiller HGCalGeometryESProducer HGCalNumberingInitialization HGCalParametersESModule HGCalTBGeometryESProducer HGCalTBNumberingInitialization HGCalTBParametersESModule HGCalTBTopologyBuilder HGCalTopologyBuilder HGCalTriggerGeometryESProducer HiTrivialConditionRetriever hph::ProducerHPH jet_tag_computer_esproducer_impl::JetTagComputerESProducer< ConcreteJetTagComputer, bool > jet_tag_computer_esproducer_impl::JetTagComputerESProducer< ConcreteJetTagComputer, true > JetResolutionESProducer JetResolutionScaleFactorESProducer KFSwitching1DUpdatorESProducer KFUpdatorESProducer L1CaloGeometryProd L1CaloInputScalesProducer L1ConfigOnlineProdBase< TRcd, TData > L1ConfigOnlineProdBase< L1CaloEcalScaleRcd, L1CaloEcalScale > L1ConfigOnlineProdBase< L1CaloHcalScaleRcd, L1CaloHcalScale > L1ConfigOnlineProdBase< L1EmEtScaleRcd, L1CaloEtScale > L1ConfigOnlineProdBase< L1GctChannelMaskRcd, L1GctChannelMask > L1ConfigOnlineProdBase< L1GctJetFinderParamsRcd, L1GctJetFinderParams > L1ConfigOnlineProdBase< L1GtParametersRcd, L1GtParameters > L1ConfigOnlineProdBase< L1GtPrescaleFactorsAlgoTrigRcd, L1GtPrescaleFactors > L1ConfigOnlineProdBase< L1GtPrescaleFactorsTechTrigRcd, L1GtPrescaleFactors > L1ConfigOnlineProdBase< L1GtPsbSetupRcd, L1GtPsbSetup > L1ConfigOnlineProdBase< L1GtTriggerMaskAlgoTrigRcd, L1GtTriggerMask > L1ConfigOnlineProdBase< L1GtTriggerMaskTechTrigRcd, L1GtTriggerMask > L1ConfigOnlineProdBase< L1GtTriggerMaskVetoTechTrigRcd, L1GtTriggerMask > L1ConfigOnlineProdBase< L1GtTriggerMenuRcd, L1GtTriggerMenu > L1ConfigOnlineProdBase< L1HfRingEtScaleRcd, L1CaloEtScale > L1ConfigOnlineProdBase< L1HtMissScaleRcd, L1CaloEtScale > L1ConfigOnlineProdBase< L1JetEtScaleRcd, L1CaloEtScale > L1ConfigOnlineProdBase< L1MuCSCPtLutRcd, L1MuCSCPtLut > L1ConfigOnlineProdBase< L1MuCSCTFAlignmentRcd, L1MuCSCTFAlignment > L1ConfigOnlineProdBase< L1MuCSCTFConfigurationRcd, L1MuCSCTFConfiguration > L1ConfigOnlineProdBase< L1MuDTEtaPatternLutRcd, L1MuDTEtaPatternLut > L1ConfigOnlineProdBase< L1MuDTExtLutRcd, L1MuDTExtLut > L1ConfigOnlineProdBase< L1MuDTPhiLutRcd, L1MuDTPhiLut > L1ConfigOnlineProdBase< L1MuDTPtaLutRcd, L1MuDTPtaLut > L1ConfigOnlineProdBase< L1MuDTQualPatternLutRcd, L1MuDTQualPatternLut > L1ConfigOnlineProdBase< L1MuDTTFMasksRcd, L1MuDTTFMasks > L1ConfigOnlineProdBase< L1MuDTTFParametersRcd, L1MuDTTFParameters > L1ConfigOnlineProdBase< L1MuGMTChannelMaskRcd, L1MuGMTChannelMask > L1ConfigOnlineProdBase< L1MuGMTParametersRcd, L1MuGMTParameters > L1ConfigOnlineProdBase< L1MuTriggerPtScaleRcd, L1MuTriggerPtScale > L1ConfigOnlineProdBase< L1MuTriggerScalesRcd, L1MuTriggerScales > L1ConfigOnlineProdBase< L1RCTChannelMaskRcd, L1RCTChannelMask > L1ConfigOnlineProdBase< L1RCTParametersRcd, L1RCTParameters > L1ConfigOnlineProdBase< L1RPCBxOrConfigRcd, L1RPCBxOrConfig > L1ConfigOnlineProdBase< L1RPCConeDefinitionRcd, L1RPCConeDefinition > L1ConfigOnlineProdBase< L1RPCConfigRcd, L1RPCConfig > L1ConfigOnlineProdBase< L1RPCHsbConfigRcd, L1RPCHsbConfig > L1ConfigOnlineProdBaseExt< TRcd, TData > L1ConfigOnlineProdBaseExt< L1TCaloParamsO2ORcd, l1t::CaloParams > L1ConfigOnlineProdBaseExt< L1TGlobalPrescalesVetosFractO2ORcd, L1TGlobalPrescalesVetosFract > L1ConfigOnlineProdBaseExt< L1TMuonBarrelParamsO2ORcd, L1TMuonBarrelParams > L1ConfigOnlineProdBaseExt< L1TMuonEndCapForestO2ORcd, L1TMuonEndCapForest > L1ConfigOnlineProdBaseExt< L1TMuonEndCapParamsO2ORcd, L1TMuonEndCapParams > L1ConfigOnlineProdBaseExt< L1TMuonGlobalParamsO2ORcd, L1TMuonGlobalParams > L1ConfigOnlineProdBaseExt< L1TMuonOverlapFwVersionO2ORcd, L1TMuonOverlapFwVersion > L1ConfigOnlineProdBaseExt< L1TMuonOverlapParamsO2ORcd, L1TMuonOverlapParams > L1ConfigOnlineProdBaseExt< L1TUtmTriggerMenuO2ORcd, L1TUtmTriggerMenu > L1CSCTriggerPrimitivesConfigProducer L1GctConfigProducers L1GtBoardMapsTrivialProducer L1GtParametersTrivialProducer L1GtPrescaleFactorsAlgoTrigTrivialProducer L1GtPrescaleFactorsTechTrigTrivialProducer L1GtPsbSetupTrivialProducer L1GtStableParametersTrivialProducer L1GtTriggerMaskAlgoTrigTrivialProducer L1GtTriggerMaskTechTrigTrivialProducer L1GtTriggerMaskVetoAlgoTrigTrivialProducer L1GtTriggerMaskVetoTechTrigTrivialProducer L1GtTriggerMenuXmlProducer L1MuGMTParametersProducer L1MuGMTScalesProducer L1MuTriggerPtScaleProducer L1MuTriggerScalesProducer L1ObjectKeysOnlineProdBase L1ObjectKeysOnlineProdBaseExt L1RCTOmdsFedVectorProducer L1RPCConeDefinitionProducer L1ScalesTrivialProducer L1SubsystemKeysOnlineProd L1SubsystemKeysOnlineProdExt L1TCaloConfigESProducer L1TCaloParamsESProducer L1TCaloStage2ParamsESProducer L1TGlobalPrescalesVetosESProducer L1TGlobalPrescalesVetosFractESProducer L1TMuonBarrelKalmanParamsESProducer L1TMuonBarrelParamsESProducer L1TMuonEndCapForestESProducer L1TMuonEndCapForestOnlineProxy L1TMuonEndCapParamsESProducer L1TMuonGlobalParamsESProducer L1TMuonOverlapFwVersionESProducer L1TMuonOverlapParamsESProducer L1TMuonOverlapParamsOnlineProxy L1TMuonOverlapPhase1ParamsESProducer L1TriggerKeyDummyProd L1TriggerKeyDummyProdExt L1TriggerKeyListDummyProd L1TriggerKeyListDummyProdExt L1TriggerKeyOnlineProd L1TriggerKeyOnlineProdExt L1TTwinMuxParamsESProducer L1TUtmTriggerMenuESProducer LumiCorrectionSource LwtnnESProducer magneticfield::AutoParametrizedMagneticFieldProducer magneticfield::DD4hep_VolumeBasedMagneticFieldESProducer magneticfield::DD4hep_VolumeBasedMagneticFieldESProducerFromDB magneticfield::ParametrizedMagneticFieldProducer magneticfield::UniformMagneticFieldESProducer magneticfield::VolumeBasedMagneticFieldESProducer magneticfield::VolumeBasedMagneticFieldESProducerFromDB MagneticFieldMapESProducer ME0GeometryESModule MeasurementTrackerESProducer MisalignedTrackerESProducer MkFitGeometryESProducer MkFitIterationConfigESProducer MTDCPEESProducer MTDDetLayerGeometryESProducer MTDDigiGeometryESModule MTDGeometricTimingDetESModule MTDParametersESModule MTDTimeCalibESProducer MTDTopologyEP MTDTransientTrackingRecHitBuilderESProducer MultipleScatteringParametrisationMakerESProducer MultiRecHitCollectorESProducer MuonDetLayerGeometryESProducer MuonGeometryConstantsESModule MuonNumberingESProducer MuonNumberingInitialization MuonOffsetESProducer MuonTransientTrackingRecHitBuilderESProducer NavigationSchoolESProducer OfflineToTransientBeamSpotESProducer OnlineBeamSpotESProducer Phase2StripCPEESProducer Phase2TrackerCablingESProducer PhysicsTools::MVAComputerESSourceBase PixelCPEClusterRepairESProducer PixelCPEFastESProducerT< TrackerTraits > PixelCPEGenericESProducer PixelCPETemplateRecoESProducer PixelFEDChannelCollectionProducer PixelToFEDAssociateFromAsciiESProducer PixelToLNKAssociateFromAsciiESProducer PixelTrackCleanerBySharedHitsESProducer PPSAlignmentConfigurationESSource PPSAssociationCutsESSource PPSPixelTopologyESSource PPSTimingCalibrationESSource PPSTimingCalibrationLUTESSource PropagatorWithMaterialESProducer QGLikelihoodESProducer QGLikelihoodSystematicsESProducer RCTConfigProducers RPCConeBuilder RPCGeometryESModule RPCInverseCPPFLinkMapESProducer RPCInverseLBLinkMapESProducer RPCInverseOMTFLinkMapESProducer RPCInverseTwinMuxLinkMapESProducer RPCPerformanceESSource RPCTriggerBxOrConfig RPCTriggerConfig RPCTriggerHsbConfig RPCTriggerHwConfig RunInfoTestESProducer SiPhase2BadStripConfigurableFakeESSource SiPhase2OuterTrackerFakeLorentzAngleESSource SiPhase2RecHitMatcherESProducer SiPixel2DTemplateDBObjectESProducer SiPixelFakeGainESSource SiPixelFakeGainForHLTESSource SiPixelFakeGainOfflineESSource SiPixelFakeGenErrorDBObjectESSource SiPixelFakeLorentzAngleESSource SiPixelFakeQualityESSource SiPixelFakeTemplateDBObjectESSource SiPixelGainCalibrationForHLTGPUESProducer SiPixelGenErrorDBObjectESProducer SiPixelQualityESProducer SiPixelROCsStatusAndMappingWrapperESProducer SiPixelTemplateDBObjectESProducer SiPixelTemplateStoreESProducer sistrip::MeasureLA SiStripApvGainFakeESSource SiStripApvSimulationParametersESSource SiStripBackPlaneCorrectionDepESProducer SiStripBackPlaneCorrectionFakeESSource SiStripBadModuleConfigurableFakeESSource SiStripBaseDelayFakeESSource SiStripClusterizerConditionsESProducer SiStripClusterizerConditionsGPUESProducer SiStripConfObjectFakeESSource SiStripConnectivity SiStripDelayESProducer SiStripFedCablingESProducer SiStripGainESProducer SiStripGainESSource SiStripGainSimESProducer SiStripHashedDetIdESModule SiStripHashedDetIdFakeESSource SiStripLatencyFakeESSource SiStripLorentzAngleDepESProducer SiStripLorentzAngleFakeESSource SiStripNoiseESSource SiStripNoisesFakeESSource SiStripPedestalsESSource SiStripPedestalsFakeESSource SiStripQualityESProducer SiStripQualityFakeESSource SiStripRecHitMatcherESProducer SiStripRegionConnectivity SiStripTemplateEmptyFakeESSource< TObject, TRecord > SiStripThresholdFakeESSource SiTrackerMultiRecHitUpdatorESProducer SkippingLayerCosmicNavigationSchoolESProducer SmartPropagatorESProducer StableParametersTrivialProducer SteppingHelixPropagatorESProducer StraightLinePropagatorESProducer StringResolutionProviderESProducer StripCPEESProducer TestCaloAlignmentEP TfGraphDefProducer TGeoMgrFromDdd TkDetMapESProducer TkMSParameterizationBuilder TkTransientTrackingRecHitBuilderESProducer TotemDAQMappingESSourceXML TotemGeometryESModule TrackAlgoPriorityOrderESProducer TrackCleanerESProducer TrackerDigiGeometryESModule trackerDTC::ProducerLayerEncoding TrackerGeometricDetESModule TrackerInteractionGeometryESProducer TrackerMTDRecoGeometryESProducer TrackerParametersESModule TrackerRecoGeometryESProducer trackerTFP::ProducerDemonstrator trackerTFP::ProducerES trackerTFP::ProducerFormatsKF trackerTFP::ProducerLayerEncoding TrackerTopologyEP TrackingRecHitPropagatorESProducer TrajectoryCleanerESProducer TransientTrackBuilderESProducer trklet::ProducerChannelAssignment TSCBLBuilderNoMaterialESProducer TSCBLBuilderWithPropagatorESProducer tt::ProducerSetup XMLIdealGeometryESProducer XMLIdealGeometryESSource XMLIdealMagneticFieldGeometryESProducer ZdcHardcodeGeometryEP

Public Member Functions

 ESProducer ()
 
 ESProducer (const ESProducer &)=delete
 
 ESProducer (ESProducer &&)=delete
 
ESProxyIndex const * getTokenIndices (unsigned int iIndex) const
 
ESRecordIndex const * getTokenRecordIndices (unsigned int iIndex) const
 
bool hasMayConsumes () const noexcept
 
size_t numberOfTokenIndices (unsigned int iIndex) const
 
ESProduceroperator= (const ESProducer &)=delete
 
ESProduceroperator= (ESProducer &&)=delete
 
SerialTaskQueueChainqueue ()
 
template<typename Record >
std::optional< std::vector< ESProxyIndex > > updateFromMayConsumes (unsigned int iIndex, const Record &iRecord) const
 
void updateLookup (eventsetup::ESRecordsToProxyIndices const &) final
 
 ~ESProducer () noexcept(false) override
 
- Public Member Functions inherited from edm::ESProxyFactoryProducer
 ESProxyFactoryProducer ()
 
 ESProxyFactoryProducer (const ESProxyFactoryProducer &)=delete
 
const ESProxyFactoryProduceroperator= (const ESProxyFactoryProducer &)=delete
 
 ~ESProxyFactoryProducer () noexcept(false) override
 
- Public Member Functions inherited from edm::eventsetup::DataProxyProvider
void createKeyedProxies (EventSetupRecordKey const &key, unsigned int nConcurrentIOVs)
 
 DataProxyProvider ()
 
 DataProxyProvider (const DataProxyProvider &)=delete
 
const ComponentDescriptiondescription () const
 
void fillRecordsNotAllowingConcurrentIOVs (std::set< EventSetupRecordKey > &recordsNotAllowingConcurrentIOVs) const
 
virtual void initConcurrentIOVs (EventSetupRecordKey const &key, unsigned int nConcurrentIOVs)
 
bool isUsingRecord (const EventSetupRecordKey &key) const
 
KeyedProxieskeyedProxies (const EventSetupRecordKey &iRecordKey, unsigned int iovIndex=0)
 
const DataProxyProvideroperator= (const DataProxyProvider &)=delete
 
void setAppendToDataLabel (const edm::ParameterSet &)
 
void setDescription (const ComponentDescription &iDescription)
 
std::set< EventSetupRecordKeyusingRecords () const
 
virtual ~DataProxyProvider () noexcept(false)
 

Protected Member Functions

ESConsumesInfoconsumesInfoPushBackNew ()
 
unsigned int consumesInfoSize () const
 
template<typename CallbackT , typename TList , typename TRecord >
void registerProducts (std::shared_ptr< std::pair< unsigned int, std::shared_ptr< CallbackT >>> iCallback, const TList *, const TRecord *iRecord, const es::Label &iLabel)
 
template<typename CallbackT , typename TRecord >
void registerProducts (std::shared_ptr< std::pair< unsigned int, std::shared_ptr< CallbackT >>>, const eventsetup::produce::Null *, const TRecord *, const es::Label &)
 
template<typename T >
auto setWhatProduced (T *iThis, const es::Label &iLabel={})
 
template<typename T >
auto setWhatProduced (T *iThis, const char *iLabel)
 
template<typename T >
auto setWhatProduced (T *iThis, const std::string &iLabel)
 
template<typename T , typename TDecorator >
auto setWhatProduced (T *iThis, const TDecorator &iDec, const es::Label &iLabel={})
 
template<typename T , typename TReturn , typename TRecord >
auto setWhatProduced (T *iThis, TReturn(T::*iMethod)(const TRecord &), const es::Label &iLabel={})
 
template<typename T , typename TReturn , typename TRecord , typename TDecorator >
auto setWhatProduced (T *iThis, TReturn(T ::*iMethod)(const TRecord &), const TDecorator &iDec, const es::Label &iLabel={})
 
template<typename TFunc >
auto setWhatProduced (TFunc &&func, const es::Label &iLabel={})
 
template<typename TReturn , typename TRecord , typename TFunc , typename TDecorator >
ESConsumesCollectorT< TRecord > setWhatProduced (TFunc &&func, TDecorator &&iDec, const es::Label &iLabel={})
 
void usesResources (std::vector< std::string > const &)
 
- Protected Member Functions inherited from edm::ESProxyFactoryProducer
template<class TFactory >
void registerFactory (std::unique_ptr< TFactory > iFactory, const std::string &iLabel=std::string())
 
virtual void registerFactoryWithKey (const EventSetupRecordKey &iRecord, std::unique_ptr< eventsetup::ProxyFactoryBase > iFactory, const std::string &iLabel=std::string())
 
KeyedProxiesVector registerProxies (const EventSetupRecordKey &, unsigned int iovIndex) override
 
- Protected Member Functions inherited from edm::eventsetup::DataProxyProvider
template<class T >
void usingRecord ()
 
void usingRecordWithKey (const EventSetupRecordKey &key)
 

Private Member Functions

template<typename CallbackT , typename TProduct , typename TRecord >
void registerProduct (std::shared_ptr< std::pair< unsigned int, std::shared_ptr< CallbackT >>> iCallback, const TProduct *, const TRecord *, const es::Label &iLabel)
 
template<typename CallbackT , typename TProduct , typename TRecord , int IIndex>
void registerProduct (std::shared_ptr< std::pair< unsigned int, std::shared_ptr< CallbackT >>> iCallback, const es::L< TProduct, IIndex > *, const TRecord *, const es::Label &iLabel)
 

Private Attributes

SharedResourcesAcquirer acquirer_
 
std::vector< std::unique_ptr< ESConsumesInfo > > consumesInfos_
 
bool hasMayConsumes_ = false
 
std::vector< std::vector< ESProxyIndex > > itemsToGetFromRecords_
 
std::vector< std::vector< ESRecordIndex > > recordsUsedDuringGet_
 
std::unique_ptr< std::vector< std::string > > sharedResourceNames_
 

Additional Inherited Members

- Static Public Member Functions inherited from edm::eventsetup::DataProxyProvider
static void prevalidate (ConfigurationDescriptions &)
 
- Protected Types inherited from edm::ESProxyFactoryProducer
using EventSetupRecordKey = eventsetup::EventSetupRecordKey
 
- Protected Types inherited from edm::eventsetup::DataProxyProvider
using KeyedProxiesVector = std::vector< std::pair< DataKey, std::shared_ptr< DataProxy > >>
 

Detailed Description

Description: An EventSetup algorithmic Provider that encapsulates the algorithm as a member method

Usage: Inheriting from this class is the simplest way to create an algorithm which gets called when a new data item is needed for the EventSetup. This class is designed to call a member method of inheriting classes each time the algorithm needs to be run. (A more flexible system in which the algorithms can be set at run-time instead of compile time can be obtained by inheriting from ESProxyFactoryProducer instead.)

If only one algorithm is being encapsulated then the user needs to 1) add a method name 'produce' to the class. The 'produce' takes as its argument a const reference to the record that is to hold the data item being produced. If only one data item is being produced, the 'produce' method must return either an 'std::unique_ptr' or 'std::shared_ptr' to the object being produced. (The choice depends on if the EventSetup or the ESProducer is managing the lifetime of the object). If multiple items are being Produced they the 'produce' method must return an ESProducts<> object which holds all of the items. 2) add 'setWhatProduced(this);' to their classes constructor

Example: one algorithm creating only one object

class FooProd : public edm::ESProducer {
std::unique_ptr<Foo> produce(const FooRecord&);
...
};
FooProd::FooProd(const edm::ParameterSet&) {
...
}

Example: one algorithm creating two objects

class FoosProd : public edm::ESProducer {
edm::ESProducts<std::unique_ptr<Foo1>, std::unique_ptr<Foo2>> produce(const FooRecord&);
...
};

If multiple algorithms are being encapsulated then 1) like 1 above except the methods can have any names you want 2) add 'setWhatProduced(this, &<class name>::<method name>);' for each method in the class' constructor NOTE: the algorithms can put data into the same record or into different records

Example: two algorithms each creating only one objects

class FooBarProd : public edm::eventsetup::ESProducer {
std::unique_ptr<Foo> produceFoo(const FooRecord&);
std::unique_ptr<Bar> produceBar(const BarRecord&);
...
};
FooBarProd::FooBarProd(const edm::ParameterSet&) {
setWhatProduced(this,&FooBarProd::produceFoo);
setWhatProduced(this,&FooBarProd::produceBar);
...
}

Description: Module to produce EventSetup data asynchronously in a manner similar to the ExternalWork feature of EDProducers.

Usage: Same as ESProducer interface except there is the option to define a second "acquire" function if you use the setWhatAcquiredProduced function.

Definition at line 104 of file ESProducer.h.

Constructor & Destructor Documentation

◆ ESProducer() [1/3]

edm::ESProducer::ESProducer ( )

Definition at line 19 of file ESProducer.cc.

19 : consumesInfos_{}, acquirer_{{{std::make_shared<SerialTaskQueue>()}}} {}
std::vector< std::unique_ptr< ESConsumesInfo > > consumesInfos_
Definition: ESProducer.h:296
SharedResourcesAcquirer acquirer_
Definition: ESProducer.h:302

◆ ~ESProducer()

edm::ESProducer::~ESProducer ( )
overridenoexcept

Definition at line 21 of file ESProducer.cc.

21 {}

◆ ESProducer() [2/3]

edm::ESProducer::ESProducer ( const ESProducer )
delete

◆ ESProducer() [3/3]

edm::ESProducer::ESProducer ( ESProducer &&  )
delete

Member Function Documentation

◆ consumesInfoPushBackNew()

ESConsumesInfo* edm::ESProducer::consumesInfoPushBackNew ( )
inlineprotected

Definition at line 247 of file ESProducer.h.

References consumesInfos_.

247  {
248  consumesInfos_.push_back(std::make_unique<ESConsumesInfo>());
249  return consumesInfos_.back().get();
250  }
std::vector< std::unique_ptr< ESConsumesInfo > > consumesInfos_
Definition: ESProducer.h:296

◆ consumesInfoSize()

unsigned int edm::ESProducer::consumesInfoSize ( ) const
inlineprotected

Definition at line 245 of file ESProducer.h.

References consumesInfos_.

245 { return consumesInfos_.size(); }
std::vector< std::unique_ptr< ESConsumesInfo > > consumesInfos_
Definition: ESProducer.h:296

◆ getTokenIndices()

ESProxyIndex const* edm::ESProducer::getTokenIndices ( unsigned int  iIndex) const
inline

Definition at line 114 of file ESProducer.h.

References relativeConstraints::empty, and itemsToGetFromRecords_.

114  {
115  if (itemsToGetFromRecords_.empty()) {
116  return nullptr;
117  }
118  return (itemsToGetFromRecords_[iIndex].empty()) ? static_cast<ESProxyIndex const*>(nullptr)
119  : &(itemsToGetFromRecords_[iIndex].front());
120  }
std::vector< std::vector< ESProxyIndex > > itemsToGetFromRecords_
Definition: ESProducer.h:297

◆ getTokenRecordIndices()

ESRecordIndex const* edm::ESProducer::getTokenRecordIndices ( unsigned int  iIndex) const
inline

Definition at line 121 of file ESProducer.h.

References relativeConstraints::empty, and recordsUsedDuringGet_.

121  {
122  if (recordsUsedDuringGet_.empty()) {
123  return nullptr;
124  }
125  return (recordsUsedDuringGet_[iIndex].empty()) ? static_cast<ESRecordIndex const*>(nullptr)
126  : &(recordsUsedDuringGet_[iIndex].front());
127  }
std::vector< std::vector< ESRecordIndex > > recordsUsedDuringGet_
Definition: ESProducer.h:300

◆ hasMayConsumes()

bool edm::ESProducer::hasMayConsumes ( ) const
inlinenoexcept

Definition at line 135 of file ESProducer.h.

References hasMayConsumes_.

Referenced by updateFromMayConsumes().

135 { return hasMayConsumes_; }
bool hasMayConsumes_
Definition: ESProducer.h:304

◆ numberOfTokenIndices()

size_t edm::ESProducer::numberOfTokenIndices ( unsigned int  iIndex) const
inline

Definition at line 128 of file ESProducer.h.

References itemsToGetFromRecords_.

128  {
129  if (itemsToGetFromRecords_.empty()) {
130  return 0;
131  }
132  return itemsToGetFromRecords_[iIndex].size();
133  }
std::vector< std::vector< ESProxyIndex > > itemsToGetFromRecords_
Definition: ESProducer.h:297

◆ operator=() [1/2]

ESProducer& edm::ESProducer::operator= ( const ESProducer )
delete

◆ operator=() [2/2]

ESProducer& edm::ESProducer::operator= ( ESProducer &&  )
delete

◆ queue()

SerialTaskQueueChain& edm::ESProducer::queue ( )
inline

Definition at line 154 of file ESProducer.h.

References acquirer_, and edm::SharedResourcesAcquirer::serialQueueChain().

154 { return acquirer_.serialQueueChain(); }
SerialTaskQueueChain & serialQueueChain() const
SharedResourcesAcquirer acquirer_
Definition: ESProducer.h:302

◆ registerProduct() [1/2]

template<typename CallbackT , typename TProduct , typename TRecord >
void edm::ESProducer::registerProduct ( std::shared_ptr< std::pair< unsigned int, std::shared_ptr< CallbackT >>>  iCallback,
const TProduct *  ,
const TRecord *  ,
const es::Label iLabel 
)
inlineprivate

Definition at line 271 of file ESProducer.h.

References edm::es::Label::default_, eostools::move(), and edm::ESProxyFactoryProducer::registerFactory().

Referenced by registerProducts().

274  {
275  using ProxyType = eventsetup::CallbackProxy<CallbackT, TRecord, TProduct>;
276  using FactoryType = eventsetup::ProxyArgumentFactoryTemplate<ProxyType, CallbackT>;
277  registerFactory(std::make_unique<FactoryType>(std::move(iCallback)), iLabel.default_);
278  }
void registerFactory(std::unique_ptr< TFactory > iFactory, const std::string &iLabel=std::string())
def move(src, dest)
Definition: eostools.py:511

◆ registerProduct() [2/2]

template<typename CallbackT , typename TProduct , typename TRecord , int IIndex>
void edm::ESProducer::registerProduct ( std::shared_ptr< std::pair< unsigned int, std::shared_ptr< CallbackT >>>  iCallback,
const es::L< TProduct, IIndex > *  ,
const TRecord *  ,
const es::Label iLabel 
)
inlineprivate

Definition at line 281 of file ESProducer.h.

References edm::errors::Configuration, edm::es::Label::def(), edm::es::Label::labels_, eostools::move(), edm::ESProxyFactoryProducer::registerFactory(), and edm::Exception::throwThis().

284  {
285  if (iLabel.labels_.size() <= IIndex || iLabel.labels_[IIndex] == es::Label::def()) {
287  "Unnamed Label\nthe index ",
288  IIndex,
289  " was never assigned a name in the 'setWhatProduced' method");
290  }
291  using ProxyType = eventsetup::CallbackProxy<CallbackT, TRecord, es::L<TProduct, IIndex>>;
292  using FactoryType = eventsetup::ProxyArgumentFactoryTemplate<ProxyType, CallbackT>;
293  registerFactory(std::make_unique<FactoryType>(std::move(iCallback)), iLabel.labels_[IIndex]);
294  }
static const std::string & def()
Definition: es_Label.h:84
static void throwThis(Code category, char const *message0="", char const *message1="", char const *message2="", char const *message3="", char const *message4="")
Definition: EDMException.cc:86
void registerFactory(std::unique_ptr< TFactory > iFactory, const std::string &iLabel=std::string())
def move(src, dest)
Definition: eostools.py:511

◆ registerProducts() [1/2]

template<typename CallbackT , typename TList , typename TRecord >
void edm::ESProducer::registerProducts ( std::shared_ptr< std::pair< unsigned int, std::shared_ptr< CallbackT >>>  iCallback,
const TList *  ,
const TRecord *  iRecord,
const es::Label iLabel 
)
inlineprotected

Definition at line 253 of file ESProducer.h.

References eostools::move(), and registerProduct().

256  {
257  registerProduct(iCallback, static_cast<const typename TList::tail_type*>(nullptr), iRecord, iLabel);
258  registerProducts(std::move(iCallback), static_cast<const typename TList::head_type*>(nullptr), iRecord, iLabel);
259  }
void registerProduct(std::shared_ptr< std::pair< unsigned int, std::shared_ptr< CallbackT >>> iCallback, const TProduct *, const TRecord *, const es::Label &iLabel)
Definition: ESProducer.h:271
void registerProducts(std::shared_ptr< std::pair< unsigned int, std::shared_ptr< CallbackT >>> iCallback, const TList *, const TRecord *iRecord, const es::Label &iLabel)
Definition: ESProducer.h:253
def move(src, dest)
Definition: eostools.py:511

◆ registerProducts() [2/2]

template<typename CallbackT , typename TRecord >
void edm::ESProducer::registerProducts ( std::shared_ptr< std::pair< unsigned int, std::shared_ptr< CallbackT >>>  ,
const eventsetup::produce::Null ,
const TRecord *  ,
const es::Label  
)
inlineprotected

Definition at line 262 of file ESProducer.h.

265  {
266  //do nothing
267  }

◆ setWhatProduced() [1/8]

template<typename T >
auto edm::ESProducer::setWhatProduced ( T iThis,
const es::Label iLabel = {} 
)
inlineprotected
Parameters
iThisthe 'this' pointer to an inheriting class instance The method determines the Record argument and return value of the 'produce' method in order to do the registration with the EventSetup

Definition at line 165 of file ESProducer.h.

Referenced by edmtest::AcquireIntESProducer::AcquireIntESProducer(), AnalyticalPropagatorESProducer::AnalyticalPropagatorESProducer(), BeamSpotFakeConditions::BeamSpotFakeConditions(), CaloGeometryBuilder::CaloGeometryBuilder(), CaloGeometryDBEP< T, U >::CaloGeometryDBEP(), CaloGeometryEP< T, D >::CaloGeometryEP(), CaloMiscalibTools::CaloMiscalibTools(), CaloMiscalibToolsMC::CaloMiscalibToolsMC(), CaloSimParametersESModule::CaloSimParametersESModule(), CaloSimulationConstantsESModule::CaloSimulationConstantsESModule(), CaloTopologyBuilder::CaloTopologyBuilder(), CaloTowerConstituentsMapBuilder::CaloTowerConstituentsMapBuilder(), CaloTowerHardcodeGeometryEP::CaloTowerHardcodeGeometryEP(), CaloTowerTopologyEP::CaloTowerTopologyEP(), CaloTPGTranscoderULUTs::CaloTPGTranscoderULUTs(), CastorDbProducer::CastorDbProducer(), CastorHardcodeGeometryEP::CastorHardcodeGeometryEP(), ClusterShapeHitFilterESProducer::ClusterShapeHitFilterESProducer(), edmtest::ConcurrentIOVESProducer::ConcurrentIOVESProducer(), edmtest::ConcurrentIOVESSource::ConcurrentIOVESSource(), ConvertingESProducerT< Record, Target, Source >::ConvertingESProducerT(), CSCBadChambersConditions::CSCBadChambersConditions(), CSCBadStripsConditions::CSCBadStripsConditions(), CSCBadWiresConditions::CSCBadWiresConditions(), CSCChamberIndexValues::CSCChamberIndexValues(), CSCChamberMapValues::CSCChamberMapValues(), CSCChamberTimeCorrectionsValues::CSCChamberTimeCorrectionsValues(), CSCChannelMapperESProducer::CSCChannelMapperESProducer(), CSCChipSpeedCorrectionDBConditions::CSCChipSpeedCorrectionDBConditions(), CSCCrateMapValues::CSCCrateMapValues(), CSCCrosstalkConditions::CSCCrosstalkConditions(), CSCCrosstalkDBConditions::CSCCrosstalkDBConditions(), CSCDDUMapValues::CSCDDUMapValues(), CSCFakeCrosstalkConditions::CSCFakeCrosstalkConditions(), CSCFakeDBCrosstalk::CSCFakeDBCrosstalk(), CSCFakeDBGains::CSCFakeDBGains(), CSCFakeDBNoiseMatrix::CSCFakeDBNoiseMatrix(), CSCFakeDBPedestals::CSCFakeDBPedestals(), CSCFakeGainsConditions::CSCFakeGainsConditions(), CSCFakeNoiseMatrixConditions::CSCFakeNoiseMatrixConditions(), CSCFakePedestalsConditions::CSCFakePedestalsConditions(), CSCGainsConditions::CSCGainsConditions(), CSCGainsDBConditions::CSCGainsDBConditions(), CSCGasGainCorrectionDBConditions::CSCGasGainCorrectionDBConditions(), CSCGeometryESModule::CSCGeometryESModule(), CSCIndexerESProducer::CSCIndexerESProducer(), CSCL1TPLookupTableEP::CSCL1TPLookupTableEP(), CSCL1TPParametersConditions::CSCL1TPParametersConditions(), CSCNoiseMatrixConditions::CSCNoiseMatrixConditions(), CSCNoiseMatrixDBConditions::CSCNoiseMatrixDBConditions(), CSCPedestalsDBConditions::CSCPedestalsDBConditions(), CSCTFConfigProducer::CSCTFConfigProducer(), CTPPSBeamParametersESSource::CTPPSBeamParametersESSource(), CTPPSCompositeESSource::CTPPSCompositeESSource(), CTPPSGeometryESModule::CTPPSGeometryESModule(), CTPPSInterpolatedOpticalFunctionsESSource::CTPPSInterpolatedOpticalFunctionsESSource(), CTPPSLHCInfoESSource::CTPPSLHCInfoESSource(), CTPPSLHCInfoRandomXangleESSource::CTPPSLHCInfoRandomXangleESSource(), CTPPSOpticalFunctionsESSource::CTPPSOpticalFunctionsESSource(), CTPPSPixelDAQMappingESSourceXML::CTPPSPixelDAQMappingESSourceXML(), magneticfield::DD4hep_VolumeBasedMagneticFieldESProducerFromDB::DD4hep_VolumeBasedMagneticFieldESProducerFromDB(), DDDetectorESProducer::DDDetectorESProducer(), DIPLumiProducer::DIPLumiProducer(), DistanceBetweenComponentsESProducer< N >::DistanceBetweenComponentsESProducer(), edmtest::DoodadESProducer::DoodadESProducer(), edmtest::DoodadESSource::DoodadESSource(), DTConfigDBProducer::DTConfigDBProducer(), DTConfigTrivialProducer::DTConfigTrivialProducer(), DTGeometryESModule::DTGeometryESModule(), DTGeometryESProducer::DTGeometryESProducer(), EcalBasicClusterLocalContCorrectionsESProducer::EcalBasicClusterLocalContCorrectionsESProducer(), EcalElectronicsMappingBuilder::EcalElectronicsMappingBuilder(), EcalGlobalShowerContainmentCorrectionsVsEtaESProducer::EcalGlobalShowerContainmentCorrectionsVsEtaESProducer(), EcalLaserCorrectionService::EcalLaserCorrectionService(), EcalLaserCorrectionServiceMC::EcalLaserCorrectionServiceMC(), EcalMustacheSCParametersESProducer::EcalMustacheSCParametersESProducer(), EcalRegionCablingESProducer::EcalRegionCablingESProducer(), EcalSCDynamicDPhiParametersESProducer::EcalSCDynamicDPhiParametersESProducer(), EcalShowerContainmentCorrectionsESProducer::EcalShowerContainmentCorrectionsESProducer(), EcalSimParametersESModule::EcalSimParametersESModule(), EcalTBGeometryBuilder::EcalTBGeometryBuilder(), EcalTBHodoscopeGeometryEP::EcalTBHodoscopeGeometryEP(), EcalTrigPrimESProducer::EcalTrigPrimESProducer(), EcalTrigPrimSpikeESProducer::EcalTrigPrimSpikeESProducer(), EcalTrigTowerConstituentsMapBuilder::EcalTrigTowerConstituentsMapBuilder(), ES_TTClusterAlgorithm_neighbor< T >::ES_TTClusterAlgorithm_neighbor(), ES_TTClusterAlgorithm_official< T >::ES_TTClusterAlgorithm_official(), ES_TTStubAlgorithm_cbc3< T >::ES_TTStubAlgorithm_cbc3(), ES_TTStubAlgorithm_official< T >::ES_TTStubAlgorithm_official(), edmtest::ESTestProducerA::ESTestProducerA(), edm::test::other::ESTestProducerA::ESTestProducerA(), edm::test::cpu::ESTestProducerA::ESTestProducerA(), edmtest::ESTestProducerAZ::ESTestProducerAZ(), edmtest::ESTestProducerB::ESTestProducerB(), edmtest::ESTestProducerBUsingHost::ESTestProducerBUsingHost(), edmtest::ESTestProducerC::ESTestProducerC(), edmtest::ESTestProducerD::ESTestProducerD(), edmtest::ESTestProducerE::ESTestProducerE(), edmtest::ESTestProducerF::ESTestProducerF(), edmtest::ESTestProducerG::ESTestProducerG(), edmtest::ESTestProducerH::ESTestProducerH(), edmtest::ESTestProducerI::ESTestProducerI(), edmtest::ESTestProducerJ::ESTestProducerJ(), edmtest::ESTestProducerK::ESTestProducerK(), FakeAlignmentProducer::FakeAlignmentProducer(), FakeAlignmentSource::FakeAlignmentSource(), FakeCaloAlignmentEP::FakeCaloAlignmentEP(), FFTJetCorrectionESProducer< CT >::FFTJetCorrectionESProducer(), FFTJetLookupTableESProducer< CT >::FFTJetLookupTableESProducer(), FWRecoGeometryESProducer::FWRecoGeometryESProducer(), FWTGeoRecoGeometryESProducer::FWTGeoRecoGeometryESProducer(), GsfMaterialEffectsESProducer::GsfMaterialEffectsESProducer(), GsfTrajectoryFitterESProducer::GsfTrajectoryFitterESProducer(), GsfTrajectorySmootherESProducer::GsfTrajectorySmootherESProducer(), HBHEDarkeningEP::HBHEDarkeningEP(), HcalAlignmentEP::HcalAlignmentEP(), HcalChannelPropertiesEP::HcalChannelPropertiesEP(), HcalDbProducer::HcalDbProducer(), HcalDDDGeometryEP::HcalDDDGeometryEP(), HcalDDDRecConstantsESModule::HcalDDDRecConstantsESModule(), HcalDDDSimConstantsESModule::HcalDDDSimConstantsESModule(), HcalHardcodeCalibrations::HcalHardcodeCalibrations(), HcalHardcodeGeometryEP::HcalHardcodeGeometryEP(), HcalParametersESModule::HcalParametersESModule(), HcalRecAlgoESProducer::HcalRecAlgoESProducer(), HcalSimParametersESModule::HcalSimParametersESModule(), HcalSimulationConstantsESModule::HcalSimulationConstantsESModule(), HcalTB02ParametersESModule::HcalTB02ParametersESModule(), HcalTB06ParametersESModule::HcalTB06ParametersESModule(), HcalTimeSlewEP::HcalTimeSlewEP(), HcalTopologyIdealEP::HcalTopologyIdealEP(), HcalTPGCoderULUT::HcalTPGCoderULUT(), HcalTrigTowerGeometryESProducer::HcalTrigTowerGeometryESProducer(), HepPDTESSource::HepPDTESSource(), HeterogeneousHGCalHEFCellPositionsFiller::HeterogeneousHGCalHEFCellPositionsFiller(), HGCalGeometryESProducer::HGCalGeometryESProducer(), HGCalNumberingInitialization::HGCalNumberingInitialization(), HGCalParametersESModule::HGCalParametersESModule(), HGCalTBGeometryESProducer::HGCalTBGeometryESProducer(), HGCalTBNumberingInitialization::HGCalTBNumberingInitialization(), HGCalTBParametersESModule::HGCalTBParametersESModule(), HGCalTBTopologyBuilder::HGCalTBTopologyBuilder(), HGCalTopologyBuilder::HGCalTopologyBuilder(), HGCalTriggerGeometryESProducer::HGCalTriggerGeometryESProducer(), JetResolutionESProducer::JetResolutionESProducer(), JetResolutionScaleFactorESProducer::JetResolutionScaleFactorESProducer(), jet_tag_computer_esproducer_impl::JetTagComputerESProducer< ConcreteJetTagComputer, true >::JetTagComputerESProducer(), KFSwitching1DUpdatorESProducer::KFSwitching1DUpdatorESProducer(), L1CaloGeometryProd::L1CaloGeometryProd(), L1CaloInputScalesProducer::L1CaloInputScalesProducer(), L1ConfigOnlineProdBase< L1HtMissScaleRcd, L1CaloEtScale >::L1ConfigOnlineProdBase(), L1CSCTriggerPrimitivesConfigProducer::L1CSCTriggerPrimitivesConfigProducer(), L1GctConfigProducers::L1GctConfigProducers(), L1GtBoardMapsTrivialProducer::L1GtBoardMapsTrivialProducer(), L1GtParametersTrivialProducer::L1GtParametersTrivialProducer(), L1GtPrescaleFactorsAlgoTrigTrivialProducer::L1GtPrescaleFactorsAlgoTrigTrivialProducer(), L1GtPrescaleFactorsTechTrigTrivialProducer::L1GtPrescaleFactorsTechTrigTrivialProducer(), L1GtPsbSetupTrivialProducer::L1GtPsbSetupTrivialProducer(), L1GtStableParametersTrivialProducer::L1GtStableParametersTrivialProducer(), L1GtTriggerMaskAlgoTrigTrivialProducer::L1GtTriggerMaskAlgoTrigTrivialProducer(), L1GtTriggerMaskTechTrigTrivialProducer::L1GtTriggerMaskTechTrigTrivialProducer(), L1GtTriggerMaskVetoAlgoTrigTrivialProducer::L1GtTriggerMaskVetoAlgoTrigTrivialProducer(), L1GtTriggerMaskVetoTechTrigTrivialProducer::L1GtTriggerMaskVetoTechTrigTrivialProducer(), L1GtTriggerMenuXmlProducer::L1GtTriggerMenuXmlProducer(), L1MuGMTParametersProducer::L1MuGMTParametersProducer(), L1MuGMTScalesProducer::L1MuGMTScalesProducer(), L1MuTriggerPtScaleProducer::L1MuTriggerPtScaleProducer(), L1MuTriggerScalesProducer::L1MuTriggerScalesProducer(), L1ObjectKeysOnlineProdBase::L1ObjectKeysOnlineProdBase(), L1RCTOmdsFedVectorProducer::L1RCTOmdsFedVectorProducer(), L1RPCConeDefinitionProducer::L1RPCConeDefinitionProducer(), L1ScalesTrivialProducer::L1ScalesTrivialProducer(), L1SubsystemKeysOnlineProd::L1SubsystemKeysOnlineProd(), L1SubsystemKeysOnlineProdExt::L1SubsystemKeysOnlineProdExt(), L1TGlobalPrescalesVetosESProducer::L1TGlobalPrescalesVetosESProducer(), L1TGlobalPrescalesVetosFractESProducer::L1TGlobalPrescalesVetosFractESProducer(), L1TMuonBarrelKalmanParamsESProducer::L1TMuonBarrelKalmanParamsESProducer(), L1TMuonBarrelParamsESProducer::L1TMuonBarrelParamsESProducer(), L1TMuonEndCapParamsESProducer::L1TMuonEndCapParamsESProducer(), L1TMuonGlobalParamsESProducer::L1TMuonGlobalParamsESProducer(), L1TMuonOverlapFwVersionESProducer::L1TMuonOverlapFwVersionESProducer(), L1TMuonOverlapParamsESProducer::L1TMuonOverlapParamsESProducer(), L1TMuonOverlapPhase1ParamsESProducer::L1TMuonOverlapPhase1ParamsESProducer(), L1TriggerKeyDummyProd::L1TriggerKeyDummyProd(), L1TriggerKeyDummyProdExt::L1TriggerKeyDummyProdExt(), L1TriggerKeyListDummyProd::L1TriggerKeyListDummyProd(), L1TriggerKeyListDummyProdExt::L1TriggerKeyListDummyProdExt(), L1TriggerKeyOnlineProd::L1TriggerKeyOnlineProd(), L1TriggerKeyOnlineProdExt::L1TriggerKeyOnlineProdExt(), L1TTwinMuxParamsESProducer::L1TTwinMuxParamsESProducer(), LumiCorrectionSource::LumiCorrectionSource(), LwtnnESProducer::LwtnnESProducer(), MagneticFieldMapESProducer::MagneticFieldMapESProducer(), ME0GeometryESModule::ME0GeometryESModule(), sistrip::MeasureLA::MeasureLA(), MisalignedTrackerESProducer::MisalignedTrackerESProducer(), MkFitGeometryESProducer::MkFitGeometryESProducer(), MkFitIterationConfigESProducer::MkFitIterationConfigESProducer(), MTDDigiGeometryESModule::MTDDigiGeometryESModule(), MTDGeometricTimingDetESModule::MTDGeometricTimingDetESModule(), MTDParametersESModule::MTDParametersESModule(), MTDTopologyEP::MTDTopologyEP(), MultipleScatteringParametrisationMakerESProducer::MultipleScatteringParametrisationMakerESProducer(), MultiRecHitCollectorESProducer::MultiRecHitCollectorESProducer(), MuonGeometryConstantsESModule::MuonGeometryConstantsESModule(), MuonNumberingInitialization::MuonNumberingInitialization(), MuonOffsetESProducer::MuonOffsetESProducer(), PhysicsTools::MVAComputerESSourceImpl< RecordType >::MVAComputerESSourceImpl(), NavigationSchoolESProducer::NavigationSchoolESProducer(), OnlineBeamSpotESProducer::OnlineBeamSpotESProducer(), magneticfield::ParametrizedMagneticFieldProducer::ParametrizedMagneticFieldProducer(), Phase2StripCPEESProducer::Phase2StripCPEESProducer(), Phase2TrackerCablingESProducer::Phase2TrackerCablingESProducer(), PixelCPEFastESProducerT< TrackerTraits >::PixelCPEFastESProducerT(), PixelToFEDAssociateFromAsciiESProducer::PixelToFEDAssociateFromAsciiESProducer(), PixelToLNKAssociateFromAsciiESProducer::PixelToLNKAssociateFromAsciiESProducer(), PixelTrackCleanerBySharedHitsESProducer::PixelTrackCleanerBySharedHitsESProducer(), PPSAlignmentConfigurationESSource::PPSAlignmentConfigurationESSource(), PPSPixelTopologyESSource::PPSPixelTopologyESSource(), PPSTimingCalibrationESSource::PPSTimingCalibrationESSource(), PPSTimingCalibrationLUTESSource::PPSTimingCalibrationLUTESSource(), trklet::ProducerChannelAssignment::ProducerChannelAssignment(), trackerTFP::ProducerDemonstrator::ProducerDemonstrator(), trackerTFP::ProducerES::ProducerES(), trackerTFP::ProducerFormatsKF::ProducerFormatsKF(), hph::ProducerHPH::ProducerHPH(), trackerTFP::ProducerLayerEncoding::ProducerLayerEncoding(), trackerDTC::ProducerLayerEncoding::ProducerLayerEncoding(), tt::ProducerSetup::ProducerSetup(), RCTConfigProducers::RCTConfigProducers(), RPCConeBuilder::RPCConeBuilder(), RPCInverseCPPFLinkMapESProducer::RPCInverseCPPFLinkMapESProducer(), RPCInverseLBLinkMapESProducer::RPCInverseLBLinkMapESProducer(), RPCInverseOMTFLinkMapESProducer::RPCInverseOMTFLinkMapESProducer(), RPCInverseTwinMuxLinkMapESProducer::RPCInverseTwinMuxLinkMapESProducer(), RPCTriggerBxOrConfig::RPCTriggerBxOrConfig(), RPCTriggerConfig::RPCTriggerConfig(), RPCTriggerHsbConfig::RPCTriggerHsbConfig(), RPCTriggerHwConfig::RPCTriggerHwConfig(), RunInfoTestESProducer::RunInfoTestESProducer(), edmtest::RunLumiESSource::RunLumiESSource(), HcalDbProducer::setupProduce(), setWhatProduced(), ALPAKA_ACCELERATOR_NAMESPACE::ESProducer::setWhatProducedDevice(), SiPhase2BadStripConfigurableFakeESSource::SiPhase2BadStripConfigurableFakeESSource(), SiPhase2OuterTrackerFakeLorentzAngleESSource::SiPhase2OuterTrackerFakeLorentzAngleESSource(), SiPhase2RecHitMatcherESProducer::SiPhase2RecHitMatcherESProducer(), SiPixelFakeGainESSource::SiPixelFakeGainESSource(), SiPixelFakeGainForHLTESSource::SiPixelFakeGainForHLTESSource(), SiPixelFakeGainOfflineESSource::SiPixelFakeGainOfflineESSource(), SiPixelFakeGenErrorDBObjectESSource::SiPixelFakeGenErrorDBObjectESSource(), SiPixelFakeLorentzAngleESSource::SiPixelFakeLorentzAngleESSource(), SiPixelFakeQualityESSource::SiPixelFakeQualityESSource(), SiPixelFakeTemplateDBObjectESSource::SiPixelFakeTemplateDBObjectESSource(), SiPixelGainCalibrationForHLTGPUESProducer::SiPixelGainCalibrationForHLTGPUESProducer(), SiPixelQualityESProducer::SiPixelQualityESProducer(), SiPixelROCsStatusAndMappingWrapperESProducer::SiPixelROCsStatusAndMappingWrapperESProducer(), SiPixelTemplateStoreESProducer::SiPixelTemplateStoreESProducer(), SiStripApvGainFakeESSource::SiStripApvGainFakeESSource(), SiStripApvSimulationParametersESSource::SiStripApvSimulationParametersESSource(), SiStripBackPlaneCorrectionDepESProducer::SiStripBackPlaneCorrectionDepESProducer(), SiStripBackPlaneCorrectionFakeESSource::SiStripBackPlaneCorrectionFakeESSource(), SiStripBaseDelayFakeESSource::SiStripBaseDelayFakeESSource(), SiStripClusterizerConditionsESProducer::SiStripClusterizerConditionsESProducer(), SiStripConfObjectFakeESSource::SiStripConfObjectFakeESSource(), SiStripDelayESProducer::SiStripDelayESProducer(), SiStripLatencyFakeESSource::SiStripLatencyFakeESSource(), SiStripLorentzAngleDepESProducer::SiStripLorentzAngleDepESProducer(), SiStripLorentzAngleFakeESSource::SiStripLorentzAngleFakeESSource(), SiStripPedestalsFakeESSource::SiStripPedestalsFakeESSource(), SiStripQualityFakeESSource::SiStripQualityFakeESSource(), SiStripRecHitMatcherESProducer::SiStripRecHitMatcherESProducer(), SiStripRegionConnectivity::SiStripRegionConnectivity(), SiStripThresholdFakeESSource::SiStripThresholdFakeESSource(), SiTrackerMultiRecHitUpdatorESProducer::SiTrackerMultiRecHitUpdatorESProducer(), StableParametersTrivialProducer::StableParametersTrivialProducer(), StringResolutionProviderESProducer::StringResolutionProviderESProducer(), StripCPEESProducer::StripCPEESProducer(), TestCaloAlignmentEP::TestCaloAlignmentEP(), cms::alpakatest::TestESProducerT< TProduct, TRecord >::TestESProducerT(), TfGraphDefProducer::TfGraphDefProducer(), TkDetMapESProducer::TkDetMapESProducer(), TkMSParameterizationBuilder::TkMSParameterizationBuilder(), TkTransientTrackingRecHitBuilderESProducer::TkTransientTrackingRecHitBuilderESProducer(), TotemDAQMappingESSourceXML::TotemDAQMappingESSourceXML(), TotemGeometryESModule::TotemGeometryESModule(), TrackAlgoPriorityOrderESProducer::TrackAlgoPriorityOrderESProducer(), TrackerDigiGeometryESModule::TrackerDigiGeometryESModule(), TrackerGeometricDetESModule::TrackerGeometricDetESModule(), TrackerInteractionGeometryESProducer::TrackerInteractionGeometryESProducer(), TrackerMTDRecoGeometryESProducer::TrackerMTDRecoGeometryESProducer(), TrackerParametersESModule::TrackerParametersESModule(), TrackerRecoGeometryESProducer::TrackerRecoGeometryESProducer(), TrajectoryCleanerESProducer::TrajectoryCleanerESProducer(), TSCBLBuilderNoMaterialESProducer::TSCBLBuilderNoMaterialESProducer(), TSCBLBuilderWithPropagatorESProducer::TSCBLBuilderWithPropagatorESProducer(), magneticfield::UniformMagneticFieldESProducer::UniformMagneticFieldESProducer(), magneticfield::VolumeBasedMagneticFieldESProducerFromDB::VolumeBasedMagneticFieldESProducerFromDB(), edmtest::WhatsItESProducer::WhatsItESProducer(), XMLIdealGeometryESSource::XMLIdealGeometryESSource(), XMLIdealMagneticFieldGeometryESProducer::XMLIdealMagneticFieldGeometryESProducer(), ZdcHardcodeGeometryEP::ZdcHardcodeGeometryEP(), and ZeeCalibration::ZeeCalibration().

165  {}) {
166  return setWhatProduced(iThis, &T::produce, iLabel);
167  }
auto setWhatProduced(T *iThis, const es::Label &iLabel={})
Definition: ESProducer.h:165

◆ setWhatProduced() [2/8]

template<typename T >
auto edm::ESProducer::setWhatProduced ( T iThis,
const char *  iLabel 
)
inlineprotected

Definition at line 170 of file ESProducer.h.

References setWhatProduced().

170  {
171  return setWhatProduced(iThis, es::Label(iLabel));
172  }
auto setWhatProduced(T *iThis, const es::Label &iLabel={})
Definition: ESProducer.h:165

◆ setWhatProduced() [3/8]

template<typename T >
auto edm::ESProducer::setWhatProduced ( T iThis,
const std::string &  iLabel 
)
inlineprotected

Definition at line 175 of file ESProducer.h.

References setWhatProduced().

175  {
176  return setWhatProduced(iThis, es::Label(iLabel));
177  }
auto setWhatProduced(T *iThis, const es::Label &iLabel={})
Definition: ESProducer.h:165

◆ setWhatProduced() [4/8]

template<typename T , typename TDecorator >
auto edm::ESProducer::setWhatProduced ( T iThis,
const TDecorator &  iDec,
const es::Label iLabel = {} 
)
inlineprotected

Definition at line 180 of file ESProducer.h.

180  {}) {
181  return setWhatProduced(iThis, &T::produce, iDec, iLabel);
182  }
auto setWhatProduced(T *iThis, const es::Label &iLabel={})
Definition: ESProducer.h:165

◆ setWhatProduced() [5/8]

template<typename T , typename TReturn , typename TRecord >
auto edm::ESProducer::setWhatProduced ( T iThis,
TReturn(T::*)(const TRecord &)  iMethod,
const es::Label iLabel = {} 
)
inlineprotected
Parameters
iThisthe 'this' pointer to an inheriting class instance
iMethoda member method of the inheriting class The TRecord and TReturn template parameters can be deduced from iMethod in order to do the registration with the EventSetup

Definition at line 189 of file ESProducer.h.

189  {}) {
190  return setWhatProduced(iThis, iMethod, eventsetup::CallbackSimpleDecorator<TRecord>(), iLabel);
191  }
auto setWhatProduced(T *iThis, const es::Label &iLabel={})
Definition: ESProducer.h:165

◆ setWhatProduced() [6/8]

template<typename T , typename TReturn , typename TRecord , typename TDecorator >
auto edm::ESProducer::setWhatProduced ( T iThis,
TReturn(T ::*)(const TRecord &)  iMethod,
const TDecorator &  iDec,
const es::Label iLabel = {} 
)
inlineprotected
Parameters
iDecoratora class with 'pre'&'post' methods which are placed around the method call This function has the same template parameters and arguments as the previous function except for the addition of the decorator.

Definition at line 197 of file ESProducer.h.

200  {}) {
201  return setWhatProduced<TReturn, TRecord>(
202  [iThis, iMethod](TRecord const& iRecord) { return (iThis->*iMethod)(iRecord); },
203  createDecoratorFrom(iThis, static_cast<const TRecord*>(nullptr), iDec),
204  iLabel);
205  }
const TDecorator & createDecoratorFrom(T *, const TRecord *, const TDecorator &iDec)
Definition: ESProducer.h:99

◆ setWhatProduced() [7/8]

template<typename TFunc >
auto edm::ESProducer::setWhatProduced ( TFunc &&  func,
const es::Label iLabel = {} 
)
inlineprotected

This overload allows lambdas (functors) to be used as the production function. As of now it is not intended for wide use (we are thinking for a better API for users)

The main use case of the decorator functionality was dependsOn(), but in practice that became unused with concurrent IOVs, so it is not clear if the decorator functionality is still needed.

Definition at line 218 of file ESProducer.h.

218  {}) {
219  using Types = eventsetup::impl::ReturnArgumentTypes<TFunc>;
220  using TReturn = typename Types::return_type;
221  using TRecord = typename Types::argument_type;
222  using DecoratorType = eventsetup::CallbackSimpleDecorator<TRecord>;
223  return setWhatProduced<TReturn, TRecord>(std::forward<TFunc>(func), DecoratorType(), iLabel);
224  }
Definition: Types.py:1

◆ setWhatProduced() [8/8]

template<typename TReturn , typename TRecord , typename TFunc , typename TDecorator >
ESConsumesCollectorT<TRecord> edm::ESProducer::setWhatProduced ( TFunc &&  func,
TDecorator &&  iDec,
const es::Label iLabel = {} 
)
inlineprotected

Definition at line 227 of file ESProducer.h.

227  {}) {
228  const auto id = consumesInfoSize();
229  using DecoratorType = std::decay_t<TDecorator>;
230  using CallbackType = eventsetup::Callback<ESProducer, TFunc, TReturn, TRecord, DecoratorType>;
231  unsigned int iovIndex = 0; // Start with 0, but later will cycle through all of them
232  auto temp = std::make_shared<CallbackType>(this, std::forward<TFunc>(func), id, std::forward<TDecorator>(iDec));
233  auto callback =
234  std::make_shared<std::pair<unsigned int, std::shared_ptr<CallbackType>>>(iovIndex, std::move(temp));
236  static_cast<const typename eventsetup::produce::product_traits<TReturn>::type*>(nullptr),
237  static_cast<const TRecord*>(nullptr),
238  iLabel);
239  return ESConsumesCollectorT<TRecord>(consumesInfoPushBackNew(), id);
240  }
ESConsumesInfo * consumesInfoPushBackNew()
Definition: ESProducer.h:247
void registerProducts(std::shared_ptr< std::pair< unsigned int, std::shared_ptr< CallbackT >>> iCallback, const TList *, const TRecord *iRecord, const es::Label &iLabel)
Definition: ESProducer.h:253
unsigned int consumesInfoSize() const
Definition: ESProducer.h:245
def move(src, dest)
Definition: eostools.py:511

◆ updateFromMayConsumes()

template<typename Record >
std::optional<std::vector<ESProxyIndex> > edm::ESProducer::updateFromMayConsumes ( unsigned int  iIndex,
const Record iRecord 
) const
inline

Definition at line 138 of file ESProducer.h.

References consumesInfos_, hasMayConsumes(), mps_fire::i, info(), itemsToGetFromRecords_, and runTheMatrix::ret.

138  {
139  if (not hasMayConsumes()) {
140  return {};
141  }
142  std::vector<ESProxyIndex> ret = itemsToGetFromRecords_[iIndex];
143  auto const info = consumesInfos_[iIndex].get();
144  for (size_t i = 0; i < info->size(); ++i) {
145  auto chooserBase = (*info)[i].chooser_.get();
146  if (chooserBase) {
147  auto chooser = static_cast<eventsetup::impl::MayConsumeChooserBase<Record>*>(chooserBase);
148  ret[i] = chooser->makeChoice(iRecord);
149  }
150  }
151  return ret;
152  }
static const TGPicture * info(bool iBackgroundIsBlack)
ret
prodAgent to be discontinued
std::vector< std::unique_ptr< ESConsumesInfo > > consumesInfos_
Definition: ESProducer.h:296
bool hasMayConsumes() const noexcept
Definition: ESProducer.h:135
std::vector< std::vector< ESProxyIndex > > itemsToGetFromRecords_
Definition: ESProducer.h:297

◆ updateLookup()

void edm::ESProducer::updateLookup ( eventsetup::ESRecordsToProxyIndices const &  iProxyToIndices)
finalvirtual

Reimplemented from edm::eventsetup::DataProxyProvider.

Definition at line 23 of file ESProducer.cc.

References acquirer_, cms::cuda::assert(), edm::eventsetup::ESRecordsToProxyIndices::component(), consumesInfos_, hasMayConsumes_, edm::eventsetup::ESRecordsToProxyIndices::indexInRecord(), info(), edm::SharedResourcesRegistry::instance(), instance, mps_monitormerge::items, itemsToGetFromRecords_, edm::eventsetup::ESRecordsToProxyIndices::makeTagGetter(), edm::eventsetup::ESRecordsToProxyIndices::missingProxyIndex(), edm::eventsetup::ESRecordsToProxyIndices::missingRecordIndex(), eostools::move(), edm::eventsetup::ESRecordsToProxyIndices::recordIndexFor(), recordsUsedDuringGet_, and sharedResourceNames_.

23  {
26  acquirer_ = instance->createAcquirer(*sharedResourceNames_);
27  sharedResourceNames_.reset();
28  }
29 
30  itemsToGetFromRecords_.reserve(consumesInfos_.size());
31  recordsUsedDuringGet_.reserve(consumesInfos_.size());
32 
33  if (itemsToGetFromRecords_.size() == consumesInfos_.size()) {
34  return;
35  }
36 
37  for (auto& info : consumesInfos_) {
38  auto& items = itemsToGetFromRecords_.emplace_back();
39  items.reserve(info->size());
40  auto& records = recordsUsedDuringGet_.emplace_back();
41  records.reserve(info->size());
42  for (auto& proxyInfo : *info) {
43  //check for mayConsumes
44  if (auto chooser = proxyInfo.chooser_.get()) {
45  hasMayConsumes_ = true;
46  auto tagGetter = iProxyToIndices.makeTagGetter(chooser->recordKey(), chooser->productType());
47  if (not tagGetter.hasNothingToGet()) {
48  records.push_back(iProxyToIndices.recordIndexFor(chooser->recordKey()));
49  } else {
50  //The record is not actually missing but the proxy is
52  }
53  chooser->setTagGetter(std::move(tagGetter));
55  } else {
56  auto index = iProxyToIndices.indexInRecord(proxyInfo.recordKey_, proxyInfo.productKey_);
58  if (not proxyInfo.moduleLabel_.empty()) {
59  auto component = iProxyToIndices.component(proxyInfo.recordKey_, proxyInfo.productKey_);
60  if (nullptr == component) {
62  } else {
63  if (component->label_.empty()) {
64  if (component->type_ != proxyInfo.moduleLabel_) {
66  }
67  } else if (component->label_ != proxyInfo.moduleLabel_) {
69  }
70  }
71  }
72  }
73  items.push_back(index);
75  records.push_back(iProxyToIndices.recordIndexFor(proxyInfo.recordKey_));
76  } else {
77  //The record is not actually missing but the proxy is
79  }
80  assert(items.size() == records.size());
81  }
82  }
83  }
84  }
static const TGPicture * info(bool iBackgroundIsBlack)
std::vector< std::vector< ESRecordIndex > > recordsUsedDuringGet_
Definition: ESProducer.h:300
static PFTauRenderPlugin instance
std::vector< std::unique_ptr< ESConsumesInfo > > consumesInfos_
Definition: ESProducer.h:296
assert(be >=bs)
static SharedResourcesRegistry * instance()
std::unique_ptr< std::vector< std::string > > sharedResourceNames_
Definition: ESProducer.h:303
static constexpr ESProxyIndex missingProxyIndex() noexcept
bool hasMayConsumes_
Definition: ESProducer.h:304
SharedResourcesAcquirer acquirer_
Definition: ESProducer.h:302
std::vector< std::vector< ESProxyIndex > > itemsToGetFromRecords_
Definition: ESProducer.h:297
def move(src, dest)
Definition: eostools.py:511
static constexpr ESRecordIndex missingRecordIndex() noexcept

◆ usesResources()

void edm::ESProducer::usesResources ( std::vector< std::string > const &  iResourceNames)
protected

Specify the names of the shared resources used by this ESProducer

Definition at line 86 of file ESProducer.cc.

References edm::SharedResourcesRegistry::instance(), instance, and sharedResourceNames_.

Referenced by magneticfield::DD4hep_VolumeBasedMagneticFieldESProducerFromDB::DD4hep_VolumeBasedMagneticFieldESProducerFromDB(), DDDetectorESProducer::DDDetectorESProducer(), magneticfield::VolumeBasedMagneticFieldESProducerFromDB::VolumeBasedMagneticFieldESProducerFromDB(), XMLIdealGeometryESProducer::XMLIdealGeometryESProducer(), XMLIdealGeometryESSource::XMLIdealGeometryESSource(), and XMLIdealMagneticFieldGeometryESProducer::XMLIdealMagneticFieldGeometryESProducer().

86  {
88  if (not sharedResourceNames_ and !iResourceNames.empty()) {
89  sharedResourceNames_ = std::make_unique<std::vector<std::string>>(iResourceNames);
90  }
91 
92  for (auto const& r : iResourceNames) {
93  instance->registerSharedResource(r);
94  }
95  //Must defer setting acquirer_ until all resources have been registered
96  // by all modules in the job
97  }
static PFTauRenderPlugin instance
static SharedResourcesRegistry * instance()
std::unique_ptr< std::vector< std::string > > sharedResourceNames_
Definition: ESProducer.h:303

Member Data Documentation

◆ acquirer_

SharedResourcesAcquirer edm::ESProducer::acquirer_
private

Definition at line 302 of file ESProducer.h.

Referenced by queue(), and updateLookup().

◆ consumesInfos_

std::vector<std::unique_ptr<ESConsumesInfo> > edm::ESProducer::consumesInfos_
private

◆ hasMayConsumes_

bool edm::ESProducer::hasMayConsumes_ = false
private

Definition at line 304 of file ESProducer.h.

Referenced by hasMayConsumes(), and updateLookup().

◆ itemsToGetFromRecords_

std::vector<std::vector<ESProxyIndex> > edm::ESProducer::itemsToGetFromRecords_
private

◆ recordsUsedDuringGet_

std::vector<std::vector<ESRecordIndex> > edm::ESProducer::recordsUsedDuringGet_
private

Definition at line 300 of file ESProducer.h.

Referenced by getTokenRecordIndices(), and updateLookup().

◆ sharedResourceNames_

std::unique_ptr<std::vector<std::string> > edm::ESProducer::sharedResourceNames_
private

Definition at line 303 of file ESProducer.h.

Referenced by updateLookup(), and usesResources().