1 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
2 * See cxx source for full Copyright notice */
5 /*****************************************************************
6 AliFlowEventSimple: A simple event
9 origin: Naomi van der Kolk (kolk@nikhef.nl)
10 Ante Bilandzic (anteb@nikhef.nl)
11 Raimond Snellings (Raimond.Snellings@nikhef.nl)
12 mods: Mikolaj Krzewicki (mikolaj.krzewicki@cern.ch)
13 *****************************************************************/
15 #ifndef ALIFLOWEVENTSIMPLE_H
16 #define ALIFLOWEVENTSIMPLE_H
19 #include "TParameter.h"
22 class AliFlowTrackSimple;
23 class AliFlowTrackSimpleCuts;
25 class AliFlowEventSimple: public TObject {
29 AliFlowEventSimple(Int_t aLenght);
30 AliFlowEventSimple(TTree* anInput, const AliFlowTrackSimpleCuts* rpCuts, const AliFlowTrackSimpleCuts* poiCuts);
31 AliFlowEventSimple(const AliFlowEventSimple& anEvent);
32 AliFlowEventSimple& operator=(const AliFlowEventSimple& anEvent);
33 virtual ~AliFlowEventSimple();
35 Bool_t IsFolder() const {return kTRUE;};
36 void Browse(TBrowser *b);
37 void Print(Option_t* option = "") const; //method to print stats
39 Int_t NumberOfTracks() const { return fNumberOfTracks; }
40 Int_t GetEventNSelTracksRP() const { return fEventNSelTracksRP; }
41 void SetEventNSelTracksRP(Int_t nr) { fEventNSelTracksRP = nr; }
42 Double_t GetMCReactionPlaneAngle() const { return fMCReactionPlaneAngle; }
43 void SetMCReactionPlaneAngle(Double_t fPhiRP) { fMCReactionPlaneAngle=fPhiRP; fMCReactionPlaneAngleIsSet=kTRUE; }
44 Bool_t IsSetMCReactionPlaneAngle() const { return fMCReactionPlaneAngleIsSet; }
46 void ResolutionPt(Double_t res);
47 void TagSubeventsInEta(Double_t etaMinA, Double_t etaMaxA, Double_t etaMinB, Double_t etaMaxB );
48 void CloneTracks(Int_t n);
49 void AddFlow( Double_t flow );
51 AliFlowTrackSimple* GetTrack(Int_t i);
52 void AddTrack( AliFlowTrackSimple* track );
54 AliFlowVector GetQ(Int_t n=2, TList *weightsList=NULL, Bool_t usePhiWeights=kFALSE, Bool_t usePtWeights=kFALSE, Bool_t useEtaWeights=kFALSE);
55 void Get2Qsub(AliFlowVector* Qarray, Int_t n=2, TList *weightsList=NULL, Bool_t usePhiWeights=kFALSE, Bool_t usePtWeights=kFALSE, Bool_t useEtaWeights=kFALSE);
57 //these should go away!!!!
58 TObjArray* TrackCollection() const { return fTrackCollection; } //deprecated!
59 void SetNumberOfTracks(Int_t nr) { fNumberOfTracks = nr; }
62 TObjArray* fTrackCollection; // collection of tracks
63 Int_t fNumberOfTracks; // number of tracks
64 Int_t fEventNSelTracksRP; // number of tracks that have passed the RP selection
65 Double_t fMCReactionPlaneAngle; // the angle of the reaction plane from the MC truth
66 Bool_t fMCReactionPlaneAngleIsSet; // did we set it from MC?
67 TParameter<Int_t>* fNumberOfTracksWrap; //! number of tracks in TBrowser
68 TParameter<Int_t>* fEventNSelTracksRPWrap; //! number of tracks that have passed the RP selection in TBrowser
69 TParameter<Double_t>* fMCReactionPlaneAngleWrap; //! the angle of the reaction plane from the MC truth in TBrowser
71 ClassDef(AliFlowEventSimple,1) // simplified event used in flow analysis