CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_6_1_2_SLHC2/src/Alignment/LaserAlignmentSimulation/interface/LaserBeamsTEC2.h

Go to the documentation of this file.
00001 #ifndef LaserAlignmentSimulation_LaserBeamsTEC2_h
00002 #define LaserAlignmentSimulation_LaserBeamsTEC2_h
00003 
00012 #include "CLHEP/Random/DRand48Engine.h"
00013 
00014 // G4 includes
00015 #include "G4ParticleTable.hh"
00016 #include "G4VUserPrimaryGeneratorAction.hh"
00017 
00018 class G4ParticleGun;
00019 class G4Event;
00020 
00021 class LaserBeamsTEC2 : public G4VUserPrimaryGeneratorAction
00022 {
00023  public:
00025   LaserBeamsTEC2();
00027   LaserBeamsTEC2(G4int nPhotonsInGun, G4int nPhotonsInBeam, G4double PhotonEnergy);
00029   ~LaserBeamsTEC2();
00030 
00031  public:
00033   void GeneratePrimaries(G4Event* myEvent);
00035   void setOptPhotonPolar(G4double Angle);
00036 
00037  private:
00038   G4int thenParticleInGun;
00039   G4int thenParticle;
00040   G4double thePhotonEnergy;
00041 
00042  private:
00043   G4ParticleGun * theParticleGun;
00044 
00045   // Unique random number generator
00046   CLHEP::DRand48Engine* theDRand48Engine;
00047 };
00048 #endif
00049