]> git.uio.no Git - u/mrichter/AliRoot.git/blob - EVGEN/AliGenPHOSlib.h
Recover mods from Rev. 1.8
[u/mrichter/AliRoot.git] / EVGEN / AliGenPHOSlib.h
1 #ifndef ALIGENPHOSLIB_H
2 #define ALIGENPHOSLIB_H
3 #include "AliGenLib.h"
4 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5  * See cxx source for full Copyright notice                               */
6
7 /* $Id$ */
8
9 class TRandom;
10
11 class AliGenPHOSlib :
12 public AliGenLib
13 {
14  public:
15     enum constants{kPion, kPi0Flat, kKaon, kEta, kEtaFlat,kOmega, kEtaPrime, kPhi, kBaryon};
16 // pions
17     static Double_t PtPion(Double_t *px, Double_t *dummy);
18     static Double_t PtScal(Double_t pt, Int_t np);
19     static Double_t YPion( Double_t *py, Double_t *dummy);
20     static Int_t    IpPion(TRandom* ran);
21     
22 //  pi0 Flat Distribution
23     static Double_t PtPi0Flat(Double_t *px, Double_t *dummy);
24     static Double_t YPi0Flat( Double_t *py, Double_t *dummy);
25     static Int_t    IpPi0Flat(TRandom* ran); 
26     
27 // kaons
28     static Double_t PtKaon(Double_t *px, Double_t *dummy);
29     static Double_t YKaon( Double_t *py, Double_t *dummy);
30     static Int_t    IpKaon(TRandom* ran);
31     
32 // etas
33     static Double_t PtEta(Double_t *px, Double_t *dummy);
34     static Double_t YEta( Double_t *py, Double_t *dummy);
35     static Int_t    IpEta(TRandom *ran);
36     
37 // etas Flat Distribution
38     static Double_t PtEtaFlat(Double_t *px, Double_t *dummy);
39     static Double_t YEtaFlat( Double_t *py, Double_t *dummy);
40     static Int_t    IpEtaFlat(TRandom *ran);
41
42 // omegas
43     static Double_t PtOmega(Double_t *px, Double_t *dummy);
44     static Double_t YOmega( Double_t *py, Double_t *dummy);
45     static Int_t    IpOmega(TRandom *ran);
46     
47 // etaprime
48     static Double_t PtEtaprime(Double_t *px, Double_t *dummy);
49     static Double_t YEtaprime( Double_t *py, Double_t *dummy);
50     static Int_t    IpEtaprime(TRandom* ran);
51     
52 // phis
53     static Double_t PtPhi(Double_t *px, Double_t *dummy);
54     static Double_t YPhi( Double_t *py, Double_t *dummy);
55     static Int_t    IpPhi(TRandom* ran);
56     
57 // baryons
58     static Double_t PtBaryon(Double_t *px, Double_t *dummy);
59     static Double_t YBaryon( Double_t *py, Double_t *dummy);
60     static Int_t    IpBaryon(TRandom *ran);
61     
62     GenFunc   GetPt(Int_t param, const char* tname=0) const;
63     GenFunc   GetY (Int_t param, const char* tname=0) const;
64     GenFuncIp GetIp(Int_t param, const char* tname=0) const;    
65     ClassDef(AliGenPHOSlib,0) // Library providing y and pT parameterisations
66 };
67 #endif
68
69
70
71
72
73
74