]> git.uio.no Git - u/mrichter/AliRoot.git/blob - EVGEN/AliSimpleGen.h
Adding protection against inconsistent Euclid files
[u/mrichter/AliRoot.git] / EVGEN / AliSimpleGen.h
1 #ifndef ALISIMPLEGEN_H
2 #define ALISIMPLEGEN_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice                               */
5
6 /* $Id$ */
7
8 ///////////////////////////////////////////////////////////
9 //                                                       //
10 //  Class to generate the particles for the MC           //
11 //  The base class is empty                              //
12 //                                                       //
13 ///////////////////////////////////////////////////////////
14
15 #include "AliGenerator.h"
16 #include "AliPDG.h"
17 #include "TF1.h"
18
19
20 class AliGenHIJINGpara : public AliGenerator
21 {
22  
23 protected:
24
25   TF1* fPtpi; // Parametrised pt distribution for pi
26   TF1* fPtka; // Parametrised pt distribution for ka
27   TF1* fETApic; // Parametrised eta distribution for pi
28   TF1* fETAkac; // Parametrised eta distribution fro ka
29
30 public:
31
32   AliGenHIJINGpara();
33   AliGenHIJINGpara(Int_t npart);
34   virtual ~AliGenHIJINGpara();
35   virtual void Generate();
36   virtual void Init();
37
38   ClassDef(AliGenHIJINGpara,1) // Hijing parametrisation generator
39 };
40
41 class AliGenFixed : public AliGenerator
42 {
43  
44 protected:
45
46   Int_t fIpart; // Particle type
47
48 public:
49
50   AliGenFixed();
51   AliGenFixed(Int_t npart);
52   virtual ~AliGenFixed() {}
53   virtual void Generate();
54   virtual void Init() {}
55   virtual void SetSigma(Float_t, Float_t, Float_t);
56   //
57   virtual void SetMomentum(Float_t pmom) {fPMin=pmom; fPMax=pmom;}
58   virtual void SetPhi(Float_t phi) {fPhiMin=phi*TMath::Pi()/180; fPhiMax=phi*TMath::Pi()/180;}
59   virtual void SetTheta(Float_t theta) {fThetaMin=theta*TMath::Pi()/180; fThetaMax=theta*TMath::Pi()/180;}
60   virtual void SetPart(Int_t part) {fIpart=part;}
61
62   ClassDef(AliGenFixed,1) // Single particle generator
63 };
64
65
66 class AliGenBox : public AliGenerator
67 {
68  
69 protected:
70
71   Int_t fIpart; // Particle type
72
73 public:
74
75   AliGenBox();
76   AliGenBox(Int_t npart);
77   virtual ~AliGenBox() {}
78   virtual void Generate();
79   virtual void Init() {}
80   virtual void SetPart(Int_t part) {fIpart=part;}
81
82   ClassDef(AliGenBox,1) // Square box random generator
83 };
84
85 #endif