CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
DependentRecordIntervalFinder.h
Go to the documentation of this file.
1 #ifndef Framework_DependentRecordIntervalFinder_h
2 #define Framework_DependentRecordIntervalFinder_h
3 // -*- C++ -*-
4 //
5 // Package: Framework
6 // Class : DependentRecordIntervalFinder
7 //
18 //
19 // Author: Chris Jones
20 // Created: Sat Apr 30 19:36:59 EDT 2005
21 // $Id: DependentRecordIntervalFinder.h,v 1.10 2010/12/17 04:31:53 chrjones Exp $
22 //
23 
24 // system include files
25 #include <vector>
26 #include "boost/shared_ptr.hpp"
27 
28 // user include files
30 
31 // forward declarations
32 namespace edm {
33  namespace eventsetup {
35 
37 {
38 
39  public:
42 
43  // ---------- const member functions ---------------------
44  bool haveProviders() const {
45  return !providers_.empty();
46  }
47 
48  // ---------- static member functions --------------------
49 
50  // ---------- member functions ---------------------------
51  void addProviderWeAreDependentOn(boost::shared_ptr<EventSetupRecordProvider>);
52 
53  void setAlternateFinder(boost::shared_ptr<EventSetupRecordIntervalFinder>);
54  protected:
55  virtual void setIntervalFor(const EventSetupRecordKey&,
56  const IOVSyncValue& ,
58 
59  private:
61 
63 
64  // ---------- member data --------------------------------
65  typedef std::vector< boost::shared_ptr<EventSetupRecordProvider> > Providers;
67 
68  boost::shared_ptr<EventSetupRecordIntervalFinder> alternate_;
69  std::vector<ValidityInterval> previousIOVs_;
70 };
71 
72  }
73 }
74 #endif
boost::shared_ptr< EventSetupRecordIntervalFinder > alternate_
void addProviderWeAreDependentOn(boost::shared_ptr< EventSetupRecordProvider >)
virtual void setIntervalFor(const EventSetupRecordKey &, const IOVSyncValue &, ValidityInterval &)
const DependentRecordIntervalFinder & operator=(const DependentRecordIntervalFinder &)
void setAlternateFinder(boost::shared_ptr< EventSetupRecordIntervalFinder >)
std::vector< boost::shared_ptr< EventSetupRecordProvider > > Providers