Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:30:19

0001 #ifndef SimG4Core_CustomPhysics_CustomPhysicsListSS_H
0002 #define SimG4Core_CustomPhysics_CustomPhysicsListSS_H
0003 
0004 #include "FWCore/ParameterSet/interface/ParameterSet.h"
0005 #include "G4VPhysicsConstructor.hh"
0006 #include <string>
0007 
0008 class G4ProcessHelper;
0009 class CustomParticleFactory;
0010 
0011 class CustomPhysicsListSS : public G4VPhysicsConstructor {
0012 public:
0013   CustomPhysicsListSS(const std::string& name, const edm::ParameterSet& p, bool useuni = false);
0014   ~CustomPhysicsListSS() override;
0015 
0016   void ConstructParticle() override;
0017   void ConstructProcess() override;
0018 
0019 private:
0020   static G4ThreadLocal std::unique_ptr<G4ProcessHelper> myHelper;
0021 
0022   std::unique_ptr<CustomParticleFactory> fParticleFactory;
0023 
0024   bool fHadronicInteraction;
0025 
0026   edm::ParameterSet myConfig;
0027 
0028   std::string particleDefFilePath;
0029   std::string processDefFilePath;
0030   double dfactor;
0031 };
0032 
0033 #endif