]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWG2/FLOW/AliFlowCommon/AliFlowEventSimple.h
fixes how common configurations are set
[u/mrichter/AliRoot.git] / PWG2 / FLOW / AliFlowCommon / AliFlowEventSimple.h
1 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
2 * See cxx source for full Copyright notice */
3 /* $Id$ */
4
5 #ifndef AliFlowEventSimple_H
6 #define AliFlowEventSimple_H
7
8 #include "AliFlowVector.h" //needed as include
9 #include "TH1F.h"
10 #include "TH1D.h"
11 #include "TFile.h"
12 #include "TParameter.h"
13 class AliFlowTrackSimple;
14
15 /**************************************
16  * AliFlowEventSimple: A simple event *
17  *  for flow analysis                 * 
18  *                                    * 
19  * authors: Naomi van der Kolk        *
20  *           (kolk@nikhef.nl)         *  
21  *          Ante Bilandzic            *
22  *           (anteb@nikhef.nl)        * 
23  *          Raimond Snellings         *
24  *    (Raimond.Snellings@nikhef.nl)   * 
25  * ***********************************/
26
27 class AliFlowEventSimple: public TObject {
28
29  public:
30   AliFlowEventSimple();
31   AliFlowEventSimple(Int_t aLenght);
32   AliFlowEventSimple(const AliFlowEventSimple& anEvent);
33   AliFlowEventSimple& operator=(const AliFlowEventSimple& anEvent);
34   virtual  ~AliFlowEventSimple();
35
36   Bool_t  IsFolder() const {return kTRUE;};
37   void Browse(TBrowser *b); 
38   void Print(Option_t* option = "") const;      //method to print stats
39   
40   Int_t NumberOfTracks() const              { return this->fNumberOfTracks; }
41   void  SetNumberOfTracks(Int_t nr)         { this->fNumberOfTracks = nr; }
42   Int_t GetEventNSelTracksRP() const        { return this->fEventNSelTracksRP; } //will replace GetEventNSelTracksIntFlow()
43   void  SetEventNSelTracksRP(Int_t nr)      { this->fEventNSelTracksRP = nr; }  //will replace SetEventNSelTracksIntFlow
44   Double_t GetMCReactionPlaneAngle() const  { return this->fMCReactionPlaneAngle; }
45   void  SetMCReactionPlaneAngle(Double_t fPhiRP)  { this->fMCReactionPlaneAngle = fPhiRP; }
46  
47   AliFlowTrackSimple* GetTrack(Int_t i);
48   TObjArray* TrackCollection() const        { return this->fTrackCollection; }
49  
50   AliFlowVector GetQ(Int_t n=2, TList *weightsList=NULL, Bool_t usePhiWeights=kFALSE, Bool_t usePtWeights=kFALSE, Bool_t useEtaWeights=kFALSE);
51   void GetQsub(AliFlowVector* Qarray, Int_t n=2, TList *weightsList=NULL, Bool_t usePhiWeights=kFALSE, Bool_t usePtWeights=kFALSE, Bool_t useEtaWeights=kFALSE);  
52
53  private:
54   TObjArray*              fTrackCollection;        // collection of tracks
55   Int_t                   fNumberOfTracks;         // number of tracks
56   Int_t                   fEventNSelTracksRP;      // number of tracks that have passed the RP selection
57   Double_t                fMCReactionPlaneAngle;   // the angle of the reaction plane from the MC truth
58   TParameter<Int_t>*      fNumberOfTracksWrap;     //! number of tracks in TBrowser
59   TParameter<Int_t>*      fEventNSelTracksRPWrap;  //! number of tracks that have passed the RP selection in TBrowser
60   TParameter<Double_t>*   fMCReactionPlaneAngleWrap;   //! the angle of the reaction plane from the MC truth in TBrowser
61   ClassDef(AliFlowEventSimple,1)                       // simplified event used in flow analysis 
62 };
63
64 #endif
65
66