CMS 3D CMS Logo

Contexts.h
Go to the documentation of this file.
1 #ifndef FWCore_Framework_stream_Contexts_h
2 #define FWCore_Framework_stream_Contexts_h
3 // -*- C++ -*-
4 //
5 // Package: FWCore/Framework
6 // Class : Contexts
7 //
16 //
17 // Original Author: Chris Jones
18 // Created: Fri, 02 Aug 2013 18:19:39 GMT
19 //
20 
21 // system include files
22 
23 // user include files
24 
25 // forward declarations
26 
27 namespace edm {
28  namespace stream {
29 
30  template <typename R, typename G>
31  class RunContextT {
32  public:
33  RunContextT(R const* iRun, G const* iGlobal) : m_run(iRun), m_global(iGlobal) {}
34  R const* run() const { return m_run; }
35  G const* global() const { return m_global; }
36 
37  private:
38  R const* m_run;
39  G const* m_global;
40  };
41 
42  template <typename L, typename R, typename G>
44  public:
45  LuminosityBlockContextT(L const* iLumi, R const* iRun, G const* iGlobal)
46  : m_lumi(iLumi), m_run(iRun), m_global(iGlobal) {}
47 
48  L const* luminosityBlock() const { return m_lumi; }
49  R const* run() const { return m_run; }
50  G const* global() const { return m_global; }
51 
52  private:
53  L const* m_lumi;
54  R const* m_run;
55  G const* m_global;
56  };
57  } // namespace stream
58 } // namespace edm
59 
60 #endif
RunContextT(R const *iRun, G const *iGlobal)
Definition: Contexts.h:33
L const * luminosityBlock() const
Definition: Contexts.h:48
G const * global() const
Definition: Contexts.h:35
LuminosityBlockContextT(L const *iLumi, R const *iRun, G const *iGlobal)
Definition: Contexts.h:45
HLT enums.
R const * run() const
Definition: Contexts.h:34