]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - EVGEN/AliGenGrayParticles.h
added the HCAL section and a method to get the local position
[u/mrichter/AliRoot.git] / EVGEN / AliGenGrayParticles.h
index 6dcec202d9d3ec2eb6dd421a47a97bba82297829..f7f350552f1bbbf55529566b5f4ddb94911caf8f 100644 (file)
@@ -6,6 +6,7 @@
 /* $Id$ */
 
 #include "AliGenerator.h"
+class AliGrayParticleModel;
 
 class AliGenGrayParticles : public AliGenerator
 {
@@ -18,8 +19,16 @@ public:
     virtual void SetPmax(Float_t pmax = 10.) {fPmax = pmax;}
     virtual void SetNominalCmsEnergy(Float_t energy = 14000.) {fCMS = energy;}
     virtual void SetTarget(Float_t a=208, Float_t z=82) {fATarget = a; fZTarget = z;}
+    virtual void SetCharge(Int_t c = 1) {fCharge = c;}
     virtual void SetTemperature(Double_t t = 0.05) {fTemperature = t;}
-    
+    virtual void SetBetaSource(Double_t b = 0.05) {fBetaSource = b;}
+    //
+    virtual void SetGrayParticleModel(AliGrayParticleModel* model) 
+       {fGrayParticleModel = model;}
+    virtual Bool_t NeedsCollisionGeometry() {return kTRUE;}
+    virtual void   SetCollisionGeometry(AliCollisionGeometry* geom)
+       {fCollisionGeometry = geom;}
+           
  protected:
     void     GenerateSlow(Int_t charge, Double_t T, Double_t beta, Float_t* q);
     Double_t Maxwell(Double_t m, Double_t p, Double_t t);
@@ -31,7 +40,11 @@ public:
     Float_t  fPmax;        // Maximum slow nucleon momentum
     Float_t  fATarget;     // Target nucleus mass number
     Float_t  fZTarget;     // Target nucleus charge number
+    Int_t    fCharge;      // Slow nucleon charge
     Float_t  fTemperature; // Source Temperature
+    Float_t  fBetaSource;  // Source beta
+    //
+    AliGrayParticleModel* fGrayParticleModel; // The gray particle model
   ClassDef(AliGenGrayParticles,1) // Gray Particle Generator
 };
 #endif