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 {
33  public:
35 
36  // ---------- const member functions ---------------------
37  std::unique_ptr<PhysicsList> make(const edm::ParameterSet& p,
38  SimActivityRegistry& reg) const override
39  {
40  std::unique_ptr<T> returnValue(new T(p));
41  SimActivityRegistryEnroller::enroll(reg, returnValue.get());
42 
43  return returnValue;
44  }
45  private:
46 
47  PhysicsListMaker(const PhysicsListMaker&) = delete;
48  const PhysicsListMaker& operator=(const PhysicsListMaker&) = delete;
49 };
50 
51 
52 #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