1 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
2 * See cxx source for full Copyright notice */
3 //////////////////////////////////////////////////////////////////////////
4 // AliFlowEventSimpleMaker:
5 // Class to fill the AliFlowEventSimple with AliFlowTrackSimple objects
6 // author: N. van der Kolk (kolk@nikhef.nl), Ante Bilandzic (anteb@nikhef.nl),
7 // Raimond Snellings (Raimond.Snellings@nikhef.nl)
8 //////////////////////////////////////////////////////////////////////////
11 #ifndef ALIFLOWEVENTSIMPLEMAKER_H
12 #define ALIFLOWEVENTSIMPLEMAKER_H
14 class AliFlowEventSimple;
15 class AliFlowTrackSimpleCuts;
22 class AliFlowEventSimpleMaker {
26 AliFlowEventSimpleMaker(); //constructor
27 virtual ~AliFlowEventSimpleMaker(); //destructor
29 void SetMCReactionPlaneAngle(Double_t fPhiRP) { this->fMCReactionPlaneAngle = fPhiRP; }
31 AliFlowEventSimple* FillTracks(TTree* anInput, const AliFlowTrackSimpleCuts* rpCuts, const AliFlowTrackSimpleCuts* poiCuts); //use own cut class
33 AliFlowEventSimple* FillTracks(AliMCEvent* anInput); //use own cuts
34 AliFlowEventSimple* FillTracks(AliMCEvent* anInput, const AliCFManager* rpCFManager, const AliCFManager* poiCFManager ); //use CF(2x)
36 AliFlowEventSimple* FillTracks(AliESDEvent* anInput); //use own cuts
37 AliFlowEventSimple* FillTracks(AliESDEvent* anInput, const AliCFManager* rpCFManager, const AliCFManager* poiCFManager); //use CF(2x)
38 //AliESDEvent & AliMCEvent
39 AliFlowEventSimple* FillTracks(AliESDEvent* anInput, const AliMCEvent* anInputMc, Int_t anOption); //use own cuts
40 AliFlowEventSimple* FillTracks(AliESDEvent* anInput, const AliMCEvent* anInputMc, const AliCFManager* rpCFManager, const AliCFManager* poiCFManager, Int_t anOption); //use CF(2x)
41 // anOption = 0 : kine from ESD
42 // anOption = 1 : kine from MC
44 AliFlowEventSimple* FillTracks(AliAODEvent* anInput); //use own cuts
45 AliFlowEventSimple* FillTracks(AliAODEvent* anInput, const AliCFManager* rpCFManager, const AliCFManager* poiCFManager); //use CF(2x)
47 void SetNoOfLoops(Int_t noofl) {this->fNoOfLoops = noofl;}
48 Int_t GetNoOfLoops() const {return this->fNoOfLoops;}
50 void SetEllipticFlowValue(Double_t elfv) {this->fEllipticFlowValue = elfv;}
51 Double_t GetEllipticFlowValue() const {return this->fEllipticFlowValue;}
53 void SetMultiplicityOfEvent(Int_t multevnt) {this->fMultiplicityOfEvent = multevnt;}
54 Int_t GetMultiplicityOfEvent() const {return this->fMultiplicityOfEvent;}
56 void SetMinMult(Int_t multmin) {this->fMinMult = multmin; }
57 Int_t GetMinMult() const {return this->fMinMult; }
58 void SetMaxMult(Int_t multmax) {this->fMaxMult = multmax; }
59 Int_t GetMaxMult() const {return this->fMaxMult; }
61 void SetSubeventEtaRange(Double_t minA,Double_t maxA,Double_t minB,Double_t maxB)
62 {this->fEtaMinA = minA; this->fEtaMaxA = maxA;this->fEtaMinB = minB; this->fEtaMaxB = maxB;};
65 AliFlowEventSimpleMaker(const AliFlowEventSimpleMaker& anAnalysis); //copy constructor
66 AliFlowEventSimpleMaker& operator=(const AliFlowEventSimpleMaker& anAnalysis); //assignment operator
68 Double_t fMCReactionPlaneAngle; // the angle of the reaction plane from the MC truth
69 Int_t fCount; // counter for the number of events processed
71 Int_t fNoOfLoops; // number of times to use the same particle (nonflow)
72 Double_t fEllipticFlowValue; // Add Flow. Must be in range [0,1].
73 Int_t fMultiplicityOfEvent; // Set maximal multiplicity (when manipulating the event).
75 Int_t fMinMult; // Minimum multiplicity from tracks selected using CORRFW
76 Int_t fMaxMult; // Maximum multiplicity from tracks selected using CORRFW
78 Double_t fEtaMinA; // minimum eta of subevent A eta range
79 Double_t fEtaMaxA; // maximum eta of subevent A eta range
80 Double_t fEtaMinB; // minimum eta of subevent B eta range
81 Double_t fEtaMaxB; // maximum eta of subevent B eta range
83 ClassDef(AliFlowEventSimpleMaker,1) // macro for rootcint