CMS 3D CMS Logo

LaserBeamsBarrel.h
Go to the documentation of this file.
1 #ifndef LaserAlignmentSimulation_LaserBeamsBarrel_h
2 #define LaserAlignmentSimulation_LaserBeamsBarrel_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 LaserBeamsBarrel : public G4VUserPrimaryGeneratorAction {
22 public:
26  LaserBeamsBarrel(G4int nPhotonsInGun, G4int nPhotonsInBeam, G4double PhotonEnergy);
28  ~LaserBeamsBarrel() override;
29 
30 public:
32  void GeneratePrimaries(G4Event *myEvent) override;
34  void setOptPhotonPolar(G4double Angle);
35 
36 private:
38  G4int thenParticle;
39  G4double thePhotonEnergy;
40 
41 private:
42  G4ParticleGun *theParticleGun;
43 
44  // Unique random number generator
45  CLHEP::DRand48Engine *theDRand48Engine;
46 };
47 #endif
LaserBeamsBarrel::theParticleGun
G4ParticleGun * theParticleGun
Definition: LaserBeamsBarrel.h:42
LaserBeamsBarrel::thenParticle
G4int thenParticle
Definition: LaserBeamsBarrel.h:38
LaserBeamsBarrel::setOptPhotonPolar
void setOptPhotonPolar(G4double Angle)
set the polarisation of the photons
Definition: LaserBeamsBarrel.cc:159
LaserBeamsBarrel::GeneratePrimaries
void GeneratePrimaries(G4Event *myEvent) override
shoot optical photons into the detector at the beginning of an event
Definition: LaserBeamsBarrel.cc:74
LaserBeamsBarrel::theDRand48Engine
CLHEP::DRand48Engine * theDRand48Engine
Definition: LaserBeamsBarrel.h:45
LaserBeamsBarrel
Definition: LaserBeamsBarrel.h:21
LaserBeamsBarrel::thenParticleInGun
G4int thenParticleInGun
Definition: LaserBeamsBarrel.h:37
ecalTB2006H4_GenSimDigiReco_cfg.myEvent
myEvent
Definition: ecalTB2006H4_GenSimDigiReco_cfg.py:7
LaserBeamsBarrel::thePhotonEnergy
G4double thePhotonEnergy
Definition: LaserBeamsBarrel.h:39
LaserBeamsBarrel::LaserBeamsBarrel
LaserBeamsBarrel()
default constructor
Definition: LaserBeamsBarrel.cc:21
Angle
Definition: Angle.h:17
LaserBeamsBarrel::~LaserBeamsBarrel
~LaserBeamsBarrel() override
destructor
Definition: LaserBeamsBarrel.cc:65