00001 #ifndef SimG4Core_CustomPhysicsList_H 00002 #define SimG4Core_CustomPhysicsList_H 00003 00004 #include "SimG4Core/CustomPhysics/interface/HadronicProcessHelper.hh" 00005 #include "SimG4Core/CustomPhysics/interface/G4ProcessHelper.hh" 00006 00007 #include <string> 00008 00009 #include "FWCore/ParameterSet/interface/ParameterSet.h" 00010 00011 #include "G4VPhysicsConstructor.hh" 00012 00013 class CustomPhysicsList : public G4VPhysicsConstructor 00014 { 00015 public: 00016 CustomPhysicsList(std::string name, const edm::ParameterSet & p); 00017 virtual ~CustomPhysicsList(); 00018 protected: 00019 virtual void ConstructParticle(); 00020 virtual void ConstructProcess(); 00021 void addCustomPhysics(); 00022 // void SetCuts(); 00023 00024 private: 00025 00026 void setupRHadronPhycis(G4ParticleDefinition* particle); 00027 void setupSUSYPhycis(G4ParticleDefinition* particle); 00028 00029 //HadronicProcessHelper *myHelper; 00030 G4ProcessHelper *myHelper; 00031 00032 edm::ParameterSet myConfig; 00033 00034 std::string particleDefFilePath; 00035 std::string processDefFilePath; 00036 00037 }; 00038 00039 #endif