1 #ifndef FWCore_Framework_ESProductResolverProvider_h 2 #define FWCore_Framework_ESProductResolverProvider_h 60 namespace eventsetup {
61 class ESProductResolver;
86 unsigned int size()
const;
110 Iterator(std::vector<DataKey>::iterator dataKeysIter,
void createKeyedResolvers(EventSetupRecordKey const &key, unsigned int nConcurrentIOVs)
std::set< EventSetupRecordKey > usingRecords() const
const ComponentDescription & description() const
unsigned int indexToKeyedResolvers_
void fillRecordsNotAllowingConcurrentIOVs(std::set< EventSetupRecordKey > &recordsNotAllowingConcurrentIOVs) const
bool operator==(const PerRecordInfo &right) const
std::vector< PerRecordInfo > perRecordInfos_
void usingRecordWithKey(const EventSetupRecordKey &key)
unsigned int size() const
std::vector< edm::propagate_const< std::shared_ptr< ESProductResolver > > >::iterator productResolversIter_
EventSetupRecordKey recordKey_
std::string appendToDataLabel_
virtual void initConcurrentIOVs(EventSetupRecordKey const &key, unsigned int nConcurrentIOVs)
KeyedResolver operator*()
void setDescription(const ComponentDescription &iDescription)
Iterator(std::vector< DataKey >::iterator dataKeysIter, std::vector< edm::propagate_const< std::shared_ptr< ESProductResolver >>>::iterator productResolversIter)
KeyedResolvers & keyedResolvers(const EventSetupRecordKey &iRecordKey, unsigned int iovIndex)
bool isUsingRecord(const EventSetupRecordKey &) const
void usingRecordWithKey(const EventSetupRecordKey &)
edm::propagate_const< ESProductResolverContainer * > productResolverContainer_
std::vector< KeyedResolvers > keyedResolversCollection_
virtual KeyedResolversVector registerResolvers(const EventSetupRecordKey &, unsigned int iovIndex)=0
void insert(std::vector< std::pair< DataKey, std::shared_ptr< ESProductResolver >>> &&, std::string const &appendToDataLabel)
void fillRecordsNotAllowingConcurrentIOVs(std::set< EventSetupRecordKey > &recordsNotAllowingConcurrentIOVs) const
bool operator<(const PerRecordInfo &right) const
ESProductResolver * productResolver_
virtual ~ESProductResolverProvider() noexcept(false)
ComponentDescription description_
ESProductResolverProvider()
virtual void updateLookup(ESRecordsToProductResolverIndices const &)
unsigned int indexToDataKeys_
std::vector< DataKey >::iterator dataKeysIter_
void createKeyedResolvers(EventSetupRecordKey const &key, unsigned int nConcurrentIOVs)
std::set< EventSetupRecordKey > usingRecords() const
KeyedResolvers(ESProductResolverContainer *, unsigned int recordIndex)
void setAppendToDataLabel(const edm::ParameterSet &)
std::vector< std::pair< DataKey, std::shared_ptr< ESProductResolver > >> KeyedResolversVector
KeyedResolver(DataKey &dataKey, ESProductResolver *productResolver)
PerRecordInfo(const EventSetupRecordKey &)
bool isUsingRecord(const EventSetupRecordKey &key) const
ESProductResolver * productResolver()
bool operator!=(Iterator const &right) const
static void prevalidate(ConfigurationDescriptions &)
unsigned int recordIndex_
bool unInitialized() const
ESProductResolverContainer productResolverContainer_
unsigned int productResolversIndex_
KeyedResolvers & keyedResolvers(const EventSetupRecordKey &iRecordKey, unsigned int iovIndex=0)
bool contains(DataKey const &dataKey) const
std::vector< DataKey > dataKeys_
const ESProductResolverProvider & operator=(const ESProductResolverProvider &)=delete
EventSetupRecordKey const & recordKey() const
void sortEventSetupRecordKeys()
std::vector< edm::propagate_const< std::shared_ptr< ESProductResolver > > > productResolvers_