CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
LaserBeamsTEC2.h
Go to the documentation of this file.
1 #ifndef LaserAlignmentSimulation_LaserBeamsTEC2_h
2 #define LaserAlignmentSimulation_LaserBeamsTEC2_h
3 
12 #include "CLHEP/Random/DRand48Engine.h"
13 
14 // G4 includes
15 #include "G4ParticleTable.hh"
16 #include "G4VUserPrimaryGeneratorAction.hh"
17 
18 class G4ParticleGun;
19 class G4Event;
20 
21 class LaserBeamsTEC2 : public G4VUserPrimaryGeneratorAction
22 {
23  public:
27  LaserBeamsTEC2(G4int nPhotonsInGun, G4int nPhotonsInBeam, G4double PhotonEnergy);
30 
31  public:
33  void GeneratePrimaries(G4Event* myEvent);
35  void setOptPhotonPolar(G4double Angle);
36 
37  private:
39  G4int thenParticle;
40  G4double thePhotonEnergy;
41 
42  private:
43  G4ParticleGun * theParticleGun;
44 
45  // Unique random number generator
46  CLHEP::DRand48Engine* theDRand48Engine;
47 };
48 #endif
49 
void setOptPhotonPolar(G4double Angle)
set the polarisation of the photons
G4ParticleGun * theParticleGun
LaserBeamsTEC2()
default constructor
G4int thenParticleInGun
~LaserBeamsTEC2()
destructor
void GeneratePrimaries(G4Event *myEvent)
shoot optical photons into the detector at the beginning of an event
CLHEP::DRand48Engine * theDRand48Engine
G4double thePhotonEnergy
Definition: Angle.h:17