CMS 3D CMS Logo

RunFactory.h
Go to the documentation of this file.
1 #ifndef DataFormats_FWLite_RunFactory_h
2 #define DataFormats_FWLite_RunFactory_h
3 // -*- C++ -*-
4 //
5 // Package: DataFormats/FWLite
6 // Class : RunFactory
7 //
16 //
17 // Original Author:
18 // Created: Wed Feb 10 11:15:16 CST 2010
19 //
20 
21 #include <memory>
22 
25 
26 namespace fwlite {
27  class RunFactory {
28  public:
29  RunFactory();
30  virtual ~RunFactory();
31 
32  // ---------- const member functions ---------------------
33  std::shared_ptr<fwlite::Run> makeRun(std::shared_ptr<BranchMapReader> branchMap) const;
34 
35  private:
36  RunFactory(const RunFactory&) = delete; // stop default
37 
38  const RunFactory& operator=(const RunFactory&) = delete; // stop default
39  //This class is not inteded to be used across different threads
40  CMS_SA_ALLOW mutable std::shared_ptr<fwlite::Run> run_;
41 
42  // ---------- member data --------------------------------
43  };
44 } // namespace fwlite
45 
46 #endif
fwlite::RunFactory
Definition: RunFactory.h:27
fwlite
Definition: TFileDirectory.h:16
fwlite::RunFactory::makeRun
std::shared_ptr< fwlite::Run > makeRun(std::shared_ptr< BranchMapReader > branchMap) const
Definition: RunFactory.cc:26
Run.h
CMS_SA_ALLOW
#define CMS_SA_ALLOW
Definition: thread_safety_macros.h:5
fwlite::RunFactory::run_
std::shared_ptr< fwlite::Run > run_
Definition: RunFactory.h:40
thread_safety_macros.h
fwlite::RunFactory::operator=
const RunFactory & operator=(const RunFactory &)=delete
fwlite::RunFactory::RunFactory
RunFactory()
Definition: RunFactory.cc:23
fwlite::RunFactory::~RunFactory
virtual ~RunFactory()
Definition: RunFactory.cc:24