CMS 3D CMS Logo

PhysicsListMaker.h
Go to the documentation of this file.
1 #ifndef Physics_PhysicsListMaker_h
2 #define Physics_PhysicsListMaker_h
3 // -*- C++ -*-
4 //
5 // Package: Physics
6 // Class : PhysicsListMaker
7 //
16 //
17 // Original Author:
18 // Created: Tue Nov 22 13:03:44 EST 2005
19 //
20 
21 // system include files
22 #include <memory>
23 
24 // user include files
27 
28 // forward declarations
29 
30 template <class T>
32 public:
34 
35  // ---------- const member functions ---------------------
36  std::unique_ptr<PhysicsList> make(const edm::ParameterSet& p, SimActivityRegistry& reg) const override {
37  std::unique_ptr<T> returnValue(new T(p));
38  SimActivityRegistryEnroller::enroll(reg, returnValue.get());
39 
40  return returnValue;
41  }
42 
43 private:
44  PhysicsListMaker(const PhysicsListMaker&) = delete;
45  const PhysicsListMaker& operator=(const PhysicsListMaker&) = delete;
46 };
47 
48 #endif
std::unique_ptr< PhysicsList > make(const edm::ParameterSet &p, SimActivityRegistry &reg) const override
static void enroll(SimActivityRegistry &iReg, T *iObj)
const PhysicsListMaker & operator=(const PhysicsListMaker &)=delete
long double T