CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
HadronPhysicsCMS.h
Go to the documentation of this file.
1 #ifndef SimG4Core_PhysicsLists_HadronPhysicsCMS_h
2 #define SimG4Core_PhysicsLists_HadronPhysicsCMS_h 1
3 
4 #include "globals.hh"
5 #include "G4ios.hh"
6 
7 #include "G4VPhysicsConstructor.hh"
8 #include "G4MiscLHEPBuilder.hh"
9 
10 #include "G4PiKBuilder.hh"
11 #include "G4BertiniPiKBuilder.hh"
12 #include "G4BinaryPiKBuilder.hh"
13 #include "G4FTFPPiKBuilder.hh"
14 #include "G4LHEPPiKBuilder.hh"
15 #include "G4QGSPPiKBuilder.hh"
16 
17 #include "G4ProtonBuilder.hh"
18 #include "G4BertiniProtonBuilder.hh"
19 #include "G4BinaryProtonBuilder.hh"
20 #include "G4FTFPProtonBuilder.hh"
21 #include "G4LHEPProtonBuilder.hh"
22 #include "G4QGSPProtonBuilder.hh"
23 
24 #include "G4NeutronBuilder.hh"
25 #include "G4BertiniNeutronBuilder.hh"
26 #include "G4BinaryNeutronBuilder.hh"
27 #include "G4FTFPNeutronBuilder.hh"
28 #include "G4LHEPNeutronBuilder.hh"
29 #include "G4QGSPNeutronBuilder.hh"
30 
31 #include "G4FTFBinaryNeutronBuilder.hh"
32 #include "G4FTFBinaryPiKBuilder.hh"
33 #include "G4FTFBinaryProtonBuilder.hh"
34 
35 class HadronPhysicsCMS : public G4VPhysicsConstructor {
36 
37 public:
38 
39  HadronPhysicsCMS(const G4String& name ="QGSP", G4bool quasiElastic=true);
40  virtual ~HadronPhysicsCMS();
41 
42 public:
43 
44  virtual void ConstructParticle();
45  virtual void ConstructProcess();
46 
47 private:
48 
49  void CreateModels();
50 
51  G4NeutronBuilder * theNeutrons;
52  G4BertiniNeutronBuilder * theBertiniNeutron;
53  G4BinaryNeutronBuilder * theBinaryNeutron;
54  G4FTFPNeutronBuilder * theFTFPNeutron;
55  G4LHEPNeutronBuilder * theLHEPNeutron;
56  G4QGSPNeutronBuilder * theQGSPNeutron;
57 
58  G4PiKBuilder * thePiK;
59  G4BertiniPiKBuilder * theBertiniPiK;
60  G4BinaryPiKBuilder * theBinaryPiK;
61  G4FTFPPiKBuilder * theFTFPPiK;
62  G4LHEPPiKBuilder * theLHEPPiK;
63  G4QGSPPiKBuilder * theQGSPPiK;
64 
65  G4ProtonBuilder * thePro;
66  G4BertiniProtonBuilder * theBertiniPro;
67  G4BinaryProtonBuilder * theBinaryPro;
68  G4FTFPProtonBuilder * theFTFPPro;
69  G4LHEPProtonBuilder * theLHEPPro;
70  G4QGSPProtonBuilder * theQGSPPro;
71 
72  G4MiscLHEPBuilder * theMiscLHEP;
73 
74  G4FTFBinaryNeutronBuilder * theFTFNeutron;
75  G4FTFBinaryPiKBuilder * theFTFPiK;
76  G4FTFBinaryProtonBuilder * theFTFPro;
77 
78  G4String modelName;
79  G4bool QuasiElastic;
80 };
81 
82 #endif
83 
G4LHEPProtonBuilder * theLHEPPro
G4MiscLHEPBuilder * theMiscLHEP
G4LHEPNeutronBuilder * theLHEPNeutron
G4QGSPProtonBuilder * theQGSPPro
G4FTFPNeutronBuilder * theFTFPNeutron
G4FTFBinaryNeutronBuilder * theFTFNeutron
virtual void ConstructParticle()
G4BertiniProtonBuilder * theBertiniPro
G4BertiniPiKBuilder * theBertiniPiK
HadronPhysicsCMS(const G4String &name="QGSP", G4bool quasiElastic=true)
G4FTFBinaryPiKBuilder * theFTFPiK
G4FTFBinaryProtonBuilder * theFTFPro
G4FTFPPiKBuilder * theFTFPPiK
G4PiKBuilder * thePiK
virtual ~HadronPhysicsCMS()
G4FTFPProtonBuilder * theFTFPPro
G4BinaryProtonBuilder * theBinaryPro
G4QGSPNeutronBuilder * theQGSPNeutron
G4ProtonBuilder * thePro
G4BertiniNeutronBuilder * theBertiniNeutron
G4NeutronBuilder * theNeutrons
G4BinaryPiKBuilder * theBinaryPiK
G4QGSPPiKBuilder * theQGSPPiK
G4BinaryNeutronBuilder * theBinaryNeutron
virtual void ConstructProcess()
G4LHEPPiKBuilder * theLHEPPiK