CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
EventSetupsController.h
Go to the documentation of this file.
1 #ifndef FWCore_Framework_EventSetupsController_h
2 #define FWCore_Framework_EventSetupsController_h
3 // -*- C++ -*-
4 //
5 // Package: Framework
6 // Class : EventSetupsController
7 //
16 //
17 // Original Author: Chris Jones
18 // Created: Wed Jan 12 14:30:42 CST 2011
19 //
20 
21 // user include files
23 
24 // system include files
25 #include <boost/shared_ptr.hpp>
26 
27 #include <map>
28 #include <vector>
29 
30 // forward declarations
31 namespace edm {
33  class ParameterSet;
34  class IOVSyncValue;
35 
36  namespace eventsetup {
37  class EventSetupProvider;
38 
40 
41  public:
43  //virtual ~EventSetupsController();
44 
45  // ---------- const member functions ---------------------
46 
47  // ---------- static member functions --------------------
48 
49  // ---------- member functions ---------------------------
50  boost::shared_ptr<EventSetupProvider> makeProvider(ParameterSet&);
51 
52  void eventSetupForInstance(IOVSyncValue const& syncValue) const;
53 
54  void forceCacheClear() const;
55 
56  boost::shared_ptr<EventSetupRecordIntervalFinder> const* getAlreadyMadeESSource(ParameterSet const& pset) const;
57  void putESSource(ParameterSet const& pset, boost::shared_ptr<EventSetupRecordIntervalFinder> const& component);
58  void clearComponents();
59 
60  private:
61  EventSetupsController(EventSetupsController const&); // stop default
62 
63  EventSetupsController const& operator=(EventSetupsController const&); // stop default
64 
65  // ---------- member data --------------------------------
66  std::vector<boost::shared_ptr<EventSetupProvider> > providers_;
67 
68  std::multimap<ParameterSetID, std::pair<ParameterSet const*, boost::shared_ptr<EventSetupRecordIntervalFinder> > > essources_;
69  };
70  }
71 }
72 #endif
boost::shared_ptr< EventSetupProvider > makeProvider(ParameterSet &)
void putESSource(ParameterSet const &pset, boost::shared_ptr< EventSetupRecordIntervalFinder > const &component)
std::vector< boost::shared_ptr< EventSetupProvider > > providers_
EventSetupsController const & operator=(EventSetupsController const &)
boost::shared_ptr< EventSetupRecordIntervalFinder > const * getAlreadyMadeESSource(ParameterSet const &pset) const
void eventSetupForInstance(IOVSyncValue const &syncValue) const
std::multimap< ParameterSetID, std::pair< ParameterSet const *, boost::shared_ptr< EventSetupRecordIntervalFinder > > > essources_