CMS 3D CMS Logo

CustomPhysicsListSS.h
Go to the documentation of this file.
1 #ifndef SimG4Core_CustomPhysics_CustomPhysicsListSS_H
2 #define SimG4Core_CustomPhysics_CustomPhysicsListSS_H
3 
5 #include "G4VPhysicsConstructor.hh"
6 #include <string>
7 
8 class G4ProcessHelper;
9 class G4Decay;
11 
12 class CustomPhysicsListSS : public G4VPhysicsConstructor {
13 public:
14  CustomPhysicsListSS(const std::string& name, const edm::ParameterSet& p, bool useuni = false);
15  ~CustomPhysicsListSS() override;
16 
17  void ConstructParticle() override;
18  void ConstructProcess() override;
19 
20 private:
21  static G4ThreadLocal std::unique_ptr<G4Decay> fDecayProcess;
22  static G4ThreadLocal std::unique_ptr<G4ProcessHelper> myHelper;
23 
24  std::unique_ptr<CustomParticleFactory> fParticleFactory;
25 
27 
29 
32  double dfactor;
33 };
34 
35 #endif
std::string particleDefFilePath
std::string processDefFilePath
std::unique_ptr< CustomParticleFactory > fParticleFactory
void ConstructParticle() override
static G4ThreadLocal std::unique_ptr< G4Decay > fDecayProcess
static G4ThreadLocal std::unique_ptr< G4ProcessHelper > myHelper
edm::ParameterSet myConfig
void ConstructProcess() override
CustomPhysicsListSS(const std::string &name, const edm::ParameterSet &p, bool useuni=false)