Merge branch 'master' of https://git.cern.ch/reps/AliRoot
[u/mrichter/AliRoot.git] / EVGEN / AliGenLib.h
1 #ifndef ALIGENLIB_H
2 #define ALIGENLIB_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 #include <TObject.h>
9
10 class TRandom;
11
12 class AliGenLib :
13   public TObject
14 {
15 public:
16   //
17     virtual ~AliGenLib(){}
18     typedef Double_t (*GenFunc)  (const Double_t *, const Double_t *);
19     typedef Int_t    (*GenFuncIp)(TRandom *);    
20     virtual GenFunc   GetPt(Int_t param, const char *tname) const   = 0;
21     virtual GenFunc   GetY (Int_t param, const char *tname) const   = 0;
22     virtual GenFuncIp GetIp(Int_t param, const char *tname) const   = 0;    
23   virtual GenFunc   GetV2(Int_t, const char *) const { return NoV2; }
24   static  Double_t  NoV2(const Double_t *, const Double_t *) { return 0; }
25     ClassDef(AliGenLib,0) // Library providing y and pT parameterisations
26 };
27 #endif