File indexing completed on 2024-04-06 11:56:27
0001 #ifndef LaserAlignmentSimulation_LaserOpticalPhysicsList_H
0002 #define LaserAlignmentSimulation_LaserOpticalPhysicsList_H
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014 #include "G4VPhysicsConstructor.hh"
0015
0016 #include "G4OpWLS.hh"
0017
0018 class G4Cerenkov;
0019 class G4Scintillation;
0020 class G4OpAbsorption;
0021 class G4OpRayleigh;
0022 class G4OpBoundaryProcess;
0023
0024 class LaserOpticalPhysicsList : public G4VPhysicsConstructor {
0025 public:
0026
0027 LaserOpticalPhysicsList(const G4String &name = "optical");
0028
0029 ~LaserOpticalPhysicsList() override;
0030
0031 public:
0032
0033 void ConstructParticle() override;
0034
0035 void ConstructProcess() override;
0036
0037 protected:
0038 G4bool wasActivated;
0039
0040 G4Scintillation *theScintProcess;
0041 G4Cerenkov *theCerenkovProcess;
0042 G4OpAbsorption *theAbsorptionProcess;
0043 G4OpRayleigh *theRayleighScattering;
0044 G4OpBoundaryProcess *theBoundaryProcess;
0045 G4OpWLS *theWLSProcess;
0046 };
0047 #endif