CMS 3D CMS Logo

OutputModule.h
Go to the documentation of this file.
1 #ifndef FWCore_Framework_global_OutputModule_h
2 #define FWCore_Framework_global_OutputModule_h
3 // -*- C++ -*-
4 //
5 // Package: FWCore/Framework
6 // Class : edm::global::OutputModule
7 //
16 //
17 //
18 
19 // system include files
20 
21 // user include files
23 
24 // forward declarations
25 namespace edm {
26  namespace global {
27  template <typename... T>
29  public:
31  : OutputModuleBase(iPSet), outputmodule::AbilityToImplementor<T>::Type(iPSet)... {}
32  // Required to work around ICC bug, but possible source of bloat in gcc.
33  // We do this only in the case of the intel compiler as this might end up
34  // creating a lot of code bloat due to inline symbols being generated in
35  // each DSO which uses this header.
36 #ifdef __INTEL_COMPILER
37  virtual ~OutputModule() = default;
38 #endif
39 
40  // ---------- const member functions ---------------------
41  bool wantsStreamRuns() const final { return WantsStreamRunTransitions<T...>::value; }
43 
44  // ---------- static member functions --------------------
45 
46  // ---------- member functions ---------------------------
47 
48  private:
49  OutputModule(const OutputModule&) = delete; // stop default
50 
51  const OutputModule& operator=(const OutputModule&) = delete; // stop default
52 
53  // ---------- member data --------------------------------
54  };
55  } // namespace global
56 } // namespace edm
57 
58 #endif
bool wantsStreamRuns() const final
Definition: OutputModule.h:41
bool wantsStreamLuminosityBlocks() const final
Definition: OutputModule.h:42
const OutputModule & operator=(const OutputModule &)=delete
HLT enums.
long double T
OutputModule(edm::ParameterSet const &iPSet)
Definition: OutputModule.h:30