1 #ifndef ALIGENCOCKTAIL_H
2 #define ALIGENCOCKTAIL_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
8 #include "AliGenerator.h"
10 class AliGenCocktailEntry;
13 class AliGenCocktail : public AliGenerator
17 AliGenCocktail(const AliGenCocktail &cocktail);
19 virtual ~AliGenCocktail();
21 virtual void Generate();
23 // Add a new generator to the list
24 virtual void AddGenerator
25 (AliGenerator *Generator, TString Name, Float_t RateExp );
26 virtual TList* Entries() {return fEntries;}
28 AliGenCocktailEntry* FirstGenerator();
29 AliGenCocktailEntry* NextGenerator();
30 void FirstGeneratorPair(AliGenCocktailEntry*&e1, AliGenCocktailEntry*&e2);
31 void NextGeneratorPair (AliGenCocktailEntry*&e1, AliGenCocktailEntry*&e2);
32 AliGenCocktail & operator=(const AliGenCocktail & rhs);
35 Int_t fNGenerators; // Number of generators booked
36 TList *fEntries; // List of Generators
37 TObjLink *flnk1; // Iterator for first generator
38 TObjLink *flnk2; // Iterator for second generator
40 ClassDef(AliGenCocktail,1) // Particle cocktail generator a la SHAKER