er  dev
ERGammaGenerator.h
1 // -------------------------------------------------------------------------
2 // ----- ERGammaGenerator header file -----
3 // ----- Created 02/14 by V.Schetinin -----
4 // -------------------------------------------------------------------------
5 
6 #ifndef ERGAMMAGENERATOR_H
7 #define ERGAMMAGENERATOR_H 1
8 
9 
10 #include "FairGenerator.h"
11 #include "FairPrimaryGenerator.h"
12 
13 #include "TRandom3.h"
14 
15 #include <iostream>
16 
17 //using namespace std;
18 
19 
20 class ERGammaGenerator : public FairGenerator
21 {
22 
23  public:
24 
27 
29  virtual ~ERGammaGenerator();
30 
36  virtual Bool_t ReadEvent(FairPrimaryGenerator* primGen);
37  void SetBeamEnergy(Double_t en){fEBeam = en;}
38  void SetGammaCMEnergy(Double_t en){fEGammaCM = en;}
39  void SetGammaCMPhiRange(Double_t phiMin, Double_t phiMax){fPhiMinCM = phiMin; fPhiMaxCM= phiMax;}
40  void SetGammaCMThetaRange(Double_t thetaMin, Double_t thetaMax);
41  void SetIon(Int_t z, Int_t a){fA = a; fZ = z;}
42 
43  //Skip some events in file
44  Bool_t SkipEvents(Int_t count);
45 
46  private:
47  Int_t fA;
48  Int_t fZ;
49  Double_t fEBeam;
50  Double_t fEGammaCM;
51  Double_t fPhiMinCM, fPhiMaxCM;
52  Double_t fThetaMinCM, fThetaMaxCM;
53  Double_t fIonMass;
54  Int_t fGammaPDG;
55 
56  TRandom3 *fRnd;
57 
59  ERGammaGenerator& operator=(const ERGammaGenerator&);
60 
61  ClassDef(ERGammaGenerator,1);
62 
63 };
64 
65 #endif
66 
virtual Bool_t ReadEvent(FairPrimaryGenerator *primGen)
virtual ~ERGammaGenerator()