/home/bes3soft/bes3soft/Boss/7.0.2/dist/7.0.2/Simulation/BOOST/GenSim/GenSim-00-00-07/GenSim/BesPrimaryGeneratorAction.hh

Go to the documentation of this file.
00001 //---------------------------------------------------------------------------//
00002 //      BOOST --- BESIII Object_Oriented Simulation Tool                     //
00003 //---------------------------------------------------------------------------//
00004 //Description: for generators, TESTER and GENBES
00005 //Author: Liuhm
00006 //Created: June, 2003
00007 //Modified:
00008 //Comment:
00009 //---------------------------------------------------------------------------//
00010 
00011 #ifndef BesPrimaryGeneratorAction_h
00012 #define BesPrimaryGeneratorAction_h 1
00013 
00014 #include "G4VUserPrimaryGeneratorAction.hh"
00015 #include "globals.hh"
00016 //#include "TFile.h"
00017 //#include "TNtuple.h"
00018 #include "TH1F.h"
00019 
00020 class G4ParticleGun;
00021 class G4Event;
00022 class G4ParticleTable; 
00023 class BesPrimaryGeneratorMessenger;
00024 class G4VPrimaryGenerator;
00025 
00026 class BesPrimaryGeneratorAction : public G4VUserPrimaryGeneratorAction
00027 {
00028   public:
00029 
00030     BesPrimaryGeneratorAction();
00031     ~BesPrimaryGeneratorAction();
00032 
00033   public:
00034 
00035     void GeneratePrimaries(G4Event* anEvent);
00036 // Getter and setters
00037     G4String GetGeneratorName(){return generatorName;}
00038     void SetGeneratorName(G4String genNew){generatorName=genNew;}
00039     G4String GetGenbesName(){return genbesName;}
00040     void SetGenbesName(G4String genbesNew){genbesName=genbesNew;} 
00041     void SetNParticle(G4int np){nParticle = np;}
00042     void SetParticleName(G4String pname){particleName = pname;}
00043     void SetMinCos(G4double min1){minCos = min1;}
00044     void SetMaxCos(G4double max1){maxCos = max1;}
00045     void SetPhiStart(G4double ps){phiStart =ps;}
00046     void SetPhiEnd(G4double pe){phiEnd = pe;}
00047     void SetMomentum(G4double pm){pMomentum = pm;}
00048     void SetDeltaP(G4double dp){deltaP = dp;}
00049     void SetPosX(G4double x){posX = x;}
00050     void SetPosY(G4double y){posY = y;}
00051     void SetPosZ(G4double z){posZ = z;}
00052 
00053   private:
00054 
00055     G4ParticleGun* particleGun;
00056     BesPrimaryGeneratorMessenger* messenger;
00057     G4VPrimaryGenerator* HEPEvt;
00058     G4String generatorName;
00059     G4String genbesName;
00060     G4bool isGenbes; 
00061     
00062     G4int nParticle;
00063     G4String particleName;
00064     G4double minCos;
00065     G4double maxCos;
00066     G4double phiStart;
00067     G4double phiEnd;
00068     G4double pMomentum;
00069     G4double deltaP;
00070     G4double posX;
00071     G4double posY;
00072     G4double posZ;
00073     //TFile* ftest;
00074     //TNtuple* tuple;
00075     //G4int counter;
00076     TH1F* h1;
00077     TH1F* h2;
00078     TH1F* h3;
00079 }; 
00080 
00081 #endif /*BesPrimaryGeneratorAction_h*/
00082 
00083 
00084 

Generated on Tue Nov 29 23:14:26 2016 for BOSS_7.0.2 by  doxygen 1.4.7