CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_4_1_8_patch9/src/Alignment/LaserAlignmentSimulation/interface/LaserBeamsTEC1.h

Go to the documentation of this file.
00001 #ifndef LaserAlignmentSimulation_LaserBeamsTEC1_h
00002 #define LaserAlignmentSimulation_LaserBeamsTEC1_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 LaserBeamsTEC1 : public G4VUserPrimaryGeneratorAction
00022 {
00023  public:
00025   LaserBeamsTEC1();
00027   LaserBeamsTEC1(G4int nPhotonsInGun, G4int nPhotonsInBeam, G4double PhotonEnergy);
00029   ~LaserBeamsTEC1();
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