CMS 3D CMS Logo

LaserOpticalPhysicsList.h
Go to the documentation of this file.
1 #ifndef LaserAlignmentSimulation_LaserOpticalPhysicsList_H
2 #define LaserAlignmentSimulation_LaserOpticalPhysicsList_H
3 
13 // G4 includes
14 #include "G4VPhysicsConstructor.hh"
15 
16 #include "G4OpWLS.hh"
17 
18 class G4Cerenkov;
19 class G4Scintillation;
20 class G4OpAbsorption;
21 class G4OpRayleigh;
22 class G4OpBoundaryProcess;
23 
24 class LaserOpticalPhysicsList : public G4VPhysicsConstructor {
25 public:
27  LaserOpticalPhysicsList(const G4String &name = "optical");
29  ~LaserOpticalPhysicsList() override;
30 
31 public:
33  void ConstructParticle() override;
35  void ConstructProcess() override;
36 
37 protected:
38  G4bool wasActivated;
39 
40  G4Scintillation *theScintProcess;
41  G4Cerenkov *theCerenkovProcess;
42  G4OpAbsorption *theAbsorptionProcess;
43  G4OpRayleigh *theRayleighScattering;
44  G4OpBoundaryProcess *theBoundaryProcess;
45  G4OpWLS *theWLSProcess;
46 };
47 #endif
~LaserOpticalPhysicsList() override
destructor
void ConstructParticle() override
construct Optical Photons
LaserOpticalPhysicsList(const G4String &name="optical")
constructor
G4OpBoundaryProcess * theBoundaryProcess
void ConstructProcess() override
construct Optical Processes
G4OpAbsorption * theAbsorptionProcess