CMS 3D CMS Logo

EventSetupImpl.h
Go to the documentation of this file.
1 #ifndef FWCore_Framework_EventSetupImpl_h
2 #define FWCore_Framework_EventSetupImpl_h
3 // -*- C++ -*-
4 //
5 // Package: Framework
6 // Class: EventSetupImpl
7 //
16 //
17 // Author: Chris Jones
18 // Created: Thu Mar 24 13:50:04 EST 2005
19 //
20 
21 // system include files
22 #include <map>
23 #include <optional>
24 #include <vector>
25 
26 // user include files
30 
31 // forward declarations
32 
33 class testEventsetup;
34 
35 namespace edm {
36  class ESInputTag;
37  class ProcessBlockTransitionInfo;
38  class Schedule;
39  class ServiceToken;
40  class WaitingTaskHolder;
41 
42  namespace eventsetup {
43  class EventSetupProvider;
44  class EventSetupRecordImpl;
45  class EventSetupRecordProvider;
46  } // namespace eventsetup
47 
49  public:
51 
52  EventSetupImpl(EventSetupImpl const&) = delete;
53  EventSetupImpl& operator=(EventSetupImpl const&) = delete;
54 
55  // ---------- const member functions ---------------------
58 
59  std::optional<eventsetup::EventSetupRecordGeneric> find(const eventsetup::EventSetupRecordKey&,
60  unsigned int iTransitionID,
61  ESProxyIndex const* getTokenIndices) const;
62 
64  void fillAvailableRecordKeys(std::vector<eventsetup::EventSetupRecordKey>& oToFill) const;
65 
69 
70  bool validRecord(eventsetup::EventSetupRecordKey const& iKey) const;
71 
75  friend class ::testEventsetup;
77 
78  protected:
80 
81  private:
83 
85 
86  void setKeyIters(std::vector<eventsetup::EventSetupRecordKey>::const_iterator const& keysBegin,
87  std::vector<eventsetup::EventSetupRecordKey>::const_iterator const& keysEnd);
88 
89  // ---------- member data --------------------------------
90 
91  std::vector<eventsetup::EventSetupRecordKey>::const_iterator keysBegin_;
92  std::vector<eventsetup::EventSetupRecordKey>::const_iterator keysEnd_;
93  std::vector<eventsetup::EventSetupRecordImpl const*> recordImpls_;
94  };
95 } // namespace edm
96 #endif
edm::EventSetupImpl::findImpl
eventsetup::EventSetupRecordImpl const * findImpl(const eventsetup::EventSetupRecordKey &) const
Definition: EventSetupImpl.cc:59
edm::ProcessBlockTransitionInfo
Definition: TransitionInfoTypes.h:80
ESInputTag
edm::EventSetupImpl
Definition: EventSetupImpl.h:48
edm
HLT enums.
Definition: AlignableModifier.h:19
edm::EventSetupImpl::fillAvailableRecordKeys
void fillAvailableRecordKeys(std::vector< eventsetup::EventSetupRecordKey > &oToFill) const
clears the oToFill vector and then fills it with the keys for all available records
Definition: EventSetupImpl.cc:75
edm::EventSetupImpl::find
std::optional< eventsetup::EventSetupRecordGeneric > find(const eventsetup::EventSetupRecordKey &, unsigned int iTransitionID, ESProxyIndex const *getTokenIndices) const
Definition: EventSetupImpl.cc:45
edm::EventSetupImpl::validRecord
bool validRecord(eventsetup::EventSetupRecordKey const &iKey) const
Definition: EventSetupImpl.cc:91
edm::ESRecordIndex
Definition: ESIndices.h:80
ESIndices.h
edm::eventsetup::EventSetupRecordKey
Definition: EventSetupRecordKey.h:30
edm::ESProxyIndex
Definition: ESIndices.h:30
EventSetupRecord.h
edm::eventsetup::EventSetupRecordProvider
Definition: EventSetupRecordProvider.h:47
edm::eventsetup::EventSetupProvider
Definition: EventSetupProvider.h:49
WaitingTaskHolder
edm::EventSetupImpl::keysEnd_
std::vector< eventsetup::EventSetupRecordKey >::const_iterator keysEnd_
Definition: EventSetupImpl.h:92
edm::eventsetup::EventSetupRecordImpl
Definition: EventSetupRecordImpl.h:76
edm::EventSetupImpl::setKeyIters
void setKeyIters(std::vector< eventsetup::EventSetupRecordKey >::const_iterator const &keysBegin, std::vector< eventsetup::EventSetupRecordKey >::const_iterator const &keysEnd)
Definition: EventSetupImpl.cc:100
edm::EventSetupImpl::~EventSetupImpl
~EventSetupImpl()
Definition: EventSetupImpl.cc:28
edm::EventSetupImpl::insertRecordImpl
void insertRecordImpl(const eventsetup::EventSetupRecordKey &, const eventsetup::EventSetupRecordImpl *)
Definition: EventSetupImpl.cc:30
edm::EventSetupImpl::keysBegin_
std::vector< eventsetup::EventSetupRecordKey >::const_iterator keysBegin_
Definition: EventSetupImpl.h:91
edm::EventSetupImpl::recordIsProvidedByAModule
bool recordIsProvidedByAModule(eventsetup::EventSetupRecordKey const &) const
Definition: EventSetupImpl.cc:86
ServiceToken
edm::EventSetupImpl::recordImpls_
std::vector< eventsetup::EventSetupRecordImpl const * > recordImpls_
Definition: EventSetupImpl.h:93
EventSetupRecordKey.h
edm::EventSetupImpl::operator=
EventSetupImpl & operator=(EventSetupImpl const &)=delete
edm::EventSetupImpl::addRecordImpl
void addRecordImpl(const eventsetup::EventSetupRecordImpl &iRecord)
Definition: EventSetupImpl.cc:41
edm::EventSetupImpl::EventSetupImpl
EventSetupImpl()
Definition: EventSetupImpl.cc:26