New class AliGenRICHlib added. (Annalisa Mastroserio <Annalisa.Mastroserio@ba.infn...
[u/mrichter/AliRoot.git] / EVGEN / AliGenRICHlib.h
CommitLineData
d1590034 1#ifndef ALIGENRICHLIB_H
2#define ALIGENRICHLIB_H
3/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
5
6#include <TPDGCode.h>
7#include <AliGenLib.h>
8
9class TRandom;
10
11class AliGenRICHlib :public AliGenLib {
12
13 public:
14 enum EPartId {kPhi=333};
15
16// Phi(1020)
17 static Int_t IpPhi(TRandom *ran);
18 static Double_t PtPhiFlat(Double_t *px, Double_t *dummy);
19 static Double_t PtPhiExp (Double_t *px, Double_t *dummy);
20 static Double_t YPhiFlat (Double_t *py, Double_t *dummy);
21
22// Lambda
23 static Int_t IpLambda(TRandom *ran);
24 static Double_t PtLambdaFlat(Double_t *px, Double_t *dummy);
25 static Double_t PtLambdaExp (Double_t *px, Double_t *dummy);
26 static Double_t YLambdaFlat (Double_t *py, Double_t *dummy);
27
28// LambdaBar
29 static Int_t IpLambdaBar(TRandom *ran);
30 static Double_t PtLambdaBarFlat(Double_t *px, Double_t *dummy);
31 static Double_t PtLambdaBarExp (Double_t *px, Double_t *dummy);
32 static Double_t YLambdaBarFlat (Double_t *py, Double_t *dummy);
33
34
35// K0_s
36 static Int_t IpK0s(TRandom *ran);
37 static Double_t PtK0sFlat(Double_t *px, Double_t *dummy);
38 static Double_t PtK0sExp (Double_t *px, Double_t *dummy);
39 static Double_t YK0sFlat (Double_t *py, Double_t *dummy);
40
41
42 typedef Double_t (*GenFunc) (Double_t *, Double_t *);
43 typedef Int_t (*GenFuncIp)(TRandom *ran);
44
45 //Getters
46
47 GenFunc GetPt(Int_t iPID, const char * sForm=0) const;
48 GenFunc GetY (Int_t iPID, const char * sForm=0) const;
49 GenFuncIp GetIp(Int_t iPID, const char * sForm=0) const;
50
51 ClassDef(AliGenRICHlib,0)
52};
53
54#endif
55
56
57
58
59
60
61