3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
6 /* $Id: AliGenEMlib.h 30052 2008-11-25 14:54:18Z morsch $ */
8 /////////////////////////////////////////////////////////////////////////////
10 // Implementation of AliGenEMlib for electron, di-electron, and photon //
11 // cocktail calculations. //
12 // It is based on AliGenGSIlib. //
14 // Responsible: R.Averbeck@gsi.de //
16 /////////////////////////////////////////////////////////////////////////////
18 #include "AliGenLib.h"
21 class AliGenEMlib :public AliGenLib {
23 GenFunc GetPt(Int_t param, const char * tname=0) const;
24 GenFunc GetY(Int_t param, const char * tname=0) const;
25 GenFuncIp GetIp(Int_t param, const char * tname=0) const;
27 enum constants{kPizero, kEta, kRho, kOmega, kEtaprime, kPhi};
32 static Int_t IpPizero(TRandom *ran);
33 static Double_t PtPizero( const Double_t *px, const Double_t *dummy );
34 static Double_t YPizero(const Double_t *py, const Double_t *dummy);
35 static Double_t MtScal(Double_t pt, Int_t np);
38 static Int_t IpEta(TRandom *ran);
39 static Double_t PtEta( const Double_t *px, const Double_t *dummy );
40 static Double_t YEta(const Double_t *py, const Double_t *dummy);
43 static Int_t IpRho(TRandom *ran);
44 static Double_t PtRho( const Double_t *px, const Double_t *dummy );
45 static Double_t YRho(const Double_t *py, const Double_t *dummy);
48 static Int_t IpOmega(TRandom *ran);
49 static Double_t PtOmega( const Double_t *px, const Double_t *dummy );
50 static Double_t YOmega(const Double_t *py, const Double_t *dummy);
53 static Int_t IpEtaprime(TRandom *ran);
54 static Double_t PtEtaprime( const Double_t *px, const Double_t *dummy );
55 static Double_t YEtaprime(const Double_t *py, const Double_t *dummy);
58 static Int_t IpPhi(TRandom *ran);
59 static Double_t PtPhi( const Double_t *px, const Double_t *dummy );
60 static Double_t YPhi(const Double_t *py, const Double_t *dummy);
63 static Double_t PtFlat(const Double_t *px, const Double_t *dummy);
64 static Double_t YFlat(Double_t y);
67 ClassDef(AliGenEMlib,0)