CMS 3D CMS Logo

makeGlobal.h
Go to the documentation of this file.
1 #ifndef FWCore_Framework_stream_makeGlobal_h
2 #define FWCore_Framework_stream_makeGlobal_h
3 // -*- C++ -*-
4 //
5 // Package: FWCore/Framework
6 // Class : makeGlobal
7 //
16 //
17 // Original Author: Chris Jones
18 // Created: Thu, 22 May 2014 13:55:01 GMT
19 //
20 
21 // system include files
22 #include <memory>
23 // user include files
25 // forward declarations
26 
27 namespace edm {
28  class ParameterSet;
29  namespace stream {
30  namespace impl {
31  template <typename T, typename G>
32  std::unique_ptr<G> makeGlobal(edm::ParameterSet const& iPSet, G const*) {
33  return T::initializeGlobalCache(iPSet);
34  }
35  template <typename T>
36  dummy_ptr makeGlobal(edm::ParameterSet const& iPSet, void const*) {
37  return dummy_ptr();
38  }
39 
40  template <typename T, typename G>
41  T* makeStreamModule(edm::ParameterSet const& iPSet, G const* iGlobal) {
42  return new T(iPSet, iGlobal);
43  }
44 
45  template <typename T>
46  T* makeStreamModule(edm::ParameterSet const& iPSet, void const*) {
47  return new T(iPSet);
48  }
49  } // namespace impl
50  } // namespace stream
51 } // namespace edm
52 #endif
edm
HLT enums.
Definition: AlignableModifier.h:19
cms::cuda::stream
cudaStream_t stream
Definition: HistoContainer.h:57
callgraph.G
G
Definition: callgraph.py:17
edm::stream::impl::makeStreamModule
T * makeStreamModule(edm::ParameterSet const &iPSet, DQMEDAnalyzerGlobalCache const *global)
Definition: DQMEDAnalyzer.h:15
edm::stream::impl::dummy_ptr
Definition: dummy_helpers.h:32
edm::ParameterSet
Definition: ParameterSet.h:47
ParameterSet
Definition: Functions.h:16
edm::stream::impl::makeGlobal
std::unique_ptr< G > makeGlobal(edm::ParameterSet const &iPSet, G const *)
Definition: makeGlobal.h:32
impl
Definition: trackAlgoPriorityOrder.h:18
T
long double T
Definition: Basic3DVectorLD.h:48
dummy_helpers.h