Fix for event mixing, when it was selecting events out of range of multiplicity cut
[u/mrichter/AliRoot.git] / EVGEN / AliGenTHnSparse.h
1 #ifndef ALIGENTHNSPARSE_H
2 #define ALIGENTHNSPARSE_H
3 /* Copyright(c) 1998-2007, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice                               */
5 // Particle generator according to 4 correlated variables : here
6 // z, ptot, r, theta. The input is a THnSparse object included in
7 // the root file (path and name to be set via the SetTHnSparse method).
8 // This class is similar to AliGenFunction.
9
10 #include "AliLog.h"
11 #include "AliGenerator.h"
12 #include "THnSparse.h"
13
14 class AliGenTHnSparse : public AliGenerator
15 {
16 public:
17
18   AliGenTHnSparse();
19   AliGenTHnSparse(const AliGenTHnSparse& func);
20   AliGenTHnSparse &operator=(const AliGenTHnSparse& func);
21   virtual ~AliGenTHnSparse();
22   virtual void Generate();
23   virtual void Init();
24   virtual void SetPart(Int_t part, Bool_t both) {fIpart=part; fBoth=both;}
25   virtual void SetThnSparse(char *file_name, char *thn_name);
26   
27 private:
28
29   THnSparse *fHn; // Pointer to THnSparse object
30   TFile *fFile;   // Pointer to input file
31   Int_t fIpart;   // Particle type
32   Bool_t fBoth;   // Particle and anti-particle type
33       
34   ClassDef(AliGenTHnSparse,2)
35 };
36
37 #endif