18 #ifndef PND_VOLGENERATOR_H 19 #define PND_VOLGENERATOR_H 21 #include "FairGenerator.h" 25 #include "TGeoMatrix.h" 28 class FairPrimaryGenerator;
49 void SetPRange(Double32_t pmin = 0, Double32_t pmax = 10)
56 void SetPtRange(Double32_t ptmin = 0, Double32_t ptmax = 10)
60 fPtRangeIsSet = kTRUE;
63 void SetPhiRange(Double32_t phimin = 0, Double32_t phimax = 360)
69 void SetEtaRange(Double32_t etamin = -5, Double32_t etamax = 7)
73 fEtaRangeIsSet = kTRUE;
76 void SetYRange(Double32_t ymin = -5, Double32_t ymax = 7)
87 fThetaRangeIsSet = kTRUE;
94 void SetXYZ(Double32_t x = 0, Double32_t y = 0, Double32_t z = 0)
99 fPointVtxIsSet = kTRUE;
102 void SetVolXYZ(Double32_t x1 = 0, Double32_t y1 = 0, Double32_t x2 = 0, Double32_t y2 = 0, Double32_t z = 0)
109 fVolVtxIsSet = kTRUE;
112 void SetDebug(Bool_t debug = 0) { fDebug = debug; }
134 virtual Bool_t
ReadEvent(FairPrimaryGenerator *primGen);
142 TGeoHMatrix *fCurrentTransMat;
145 Double32_t fPtMin, fPtMax;
146 Double32_t fPhiMin, fPhiMax;
147 Double32_t fEtaMin, fEtaMax;
148 Double32_t fYMin, fYMax;
149 Double32_t fPMin, fPMax;
150 Double32_t fThetaMin, fThetaMax;
151 Double32_t fX, fY, fZ;
152 Double32_t fX1, fY1, fX2, fY2;
154 Bool_t fEtaRangeIsSet;
156 Bool_t fThetaRangeIsSet;
157 Bool_t fCosThetaIsSet;
158 Bool_t fInversePIsSet;
159 Bool_t fPtRangeIsSet;
161 Bool_t fPointVtxIsSet;
virtual ~PndVolGenerator()
void SetVolTarg(Int_t quad=2, Int_t abs=5)
void SetPRange(Double32_t pmin=0, Double32_t pmax=10)
void SetVolXYZ(Double32_t x1=0, Double32_t y1=0, Double32_t x2=0, Double32_t y2=0, Double32_t z=0)
void SetPhiRange(Double32_t phimin=0, Double32_t phimax=360)
void SetEtaRange(Double32_t etamin=-5, Double32_t etamax=7)
void SetDebug(Bool_t debug=0)
void SetYRange(Double32_t ymin=-5, Double32_t ymax=7)
virtual Bool_t ReadEvent(FairPrimaryGenerator *primGen)
void SetVolTgFc(Int_t quad=2, TF1 *func=nullptr)
void SetPtRange(Double32_t ptmin=0, Double32_t ptmax=10)
void SetMultiplicity(Int_t mult)
void SetThetaRange(Double32_t thetamin=0, Double32_t thetamax=90)
void SetXYZ(Double32_t x=0, Double32_t y=0, Double32_t z=0)
void SetPDGType(Int_t pdg)