2 // Class AliRsnValueMult
4 // Inherits from AliRsnValue, and computer multiplicity of the event
7 // Author: A. Pulvirenti
8 // Email : alberto.pulvirenti@ct.infn.it
11 #ifndef ALIRSNVALUEMULT
12 #define ALIRSNVALUEMULT
14 #include "AliRsnValue.h"
15 #include "AliESDtrackCuts.h"
17 class AliRsnValueMult : public AliRsnValue
29 AliRsnValueMult(const char *name, EValueType type, Int_t n = 0, Double_t min = 0.0, Double_t max = 0.0);
30 AliRsnValueMult(const char *name, EValueType type, Double_t min, Double_t max, Double_t step);
31 AliRsnValueMult(const char *name, EValueType type, Int_t n, Double_t *array);
32 AliRsnValueMult(const AliRsnValueMult& copy) : AliRsnValue(copy),fMode(copy.fMode),fESDcuts(copy.fESDcuts) {}
33 AliRsnValueMult& operator=(const AliRsnValueMult& copy) {AliRsnValue::operator=(copy); fMode=copy.fMode; fESDcuts=copy.fESDcuts;return (*this);}
34 virtual ~AliRsnValueMult() { }
36 AliESDtrackCuts* GetCuts() {return &fESDcuts;}
37 EMode GetMode() {return fMode;}
38 void SetMode(EMode mode) {fMode = mode;}
40 virtual Bool_t Eval(AliRsnMother * const mother, AliRsnPairDef * const pairDef, AliRsnEvent * const event);
41 virtual Bool_t Eval(AliRsnDaughter * const daughter, AliRsnEvent * const event);
45 EMode fMode; // chosen method to compute multiplicity
46 AliESDtrackCuts fESDcuts; // ESD track cuts necessary for one of the methods
50 ClassDef(AliRsnValueMult,1)