]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWG2/FLOW/AliFlowCommon/AliFlowTrackSimple.h
select only primaries
[u/mrichter/AliRoot.git] / PWG2 / FLOW / AliFlowCommon / AliFlowTrackSimple.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 AliFlowTrackSimple_H
6 #define AliFlowTrackSimple_H
7
8 #include "TBits.h"
9
10 // AliFlowTrackSimple:
11 // A simple track class to the the AliFlowEventSimple for flow analysis
12 // author: N. van der Kolk (kolk@nikhef.nl)
13
14 class AliFlowTrackSimple: public TObject {
15
16  public:
17   AliFlowTrackSimple();
18   AliFlowTrackSimple(const AliFlowTrackSimple& aTrack);
19   AliFlowTrackSimple& operator=(const AliFlowTrackSimple& aTrack);
20   virtual  ~AliFlowTrackSimple();
21   
22   Bool_t  IsFolder() const {return kTRUE;};
23   //  void Browse(TBrowser *b); 
24   //  void Print(Option_t* option = "") const;      //method to print stats
25  
26
27   Double_t Eta() const; 
28   Double_t Pt()  const; 
29   Double_t Phi() const; 
30   TBits    GetFlowBits() const;
31   Bool_t   InRPSelection() const; 
32   Bool_t   InPOISelection() const; 
33     
34   void SetEta(Double_t eta);
35   void SetPt(Double_t pt); 
36   void SetPhi(Double_t phi);
37   void SetForRPSelection(Bool_t b); 
38   void SetForPOISelection(Bool_t b); 
39   
40  private:
41   Double_t fEta;    // eta
42   Double_t fPt;     // pt
43   Double_t fPhi;    // phi
44   TBits fFlowBits;  // bits to set if track is selected
45   
46
47   ClassDef(AliFlowTrackSimple,1)                 // macro for rootcint
48
49 };
50
51 inline Double_t AliFlowTrackSimple::Eta() const { 
52   return this->fEta; }
53 inline Double_t AliFlowTrackSimple::Pt() const {  
54   //  cout << "Returned pt:" << fPt << endl; 
55   return this->fPt;}
56 inline Double_t AliFlowTrackSimple::Phi() const { 
57   return this->fPhi; }
58 inline TBits AliFlowTrackSimple::GetFlowBits() const { 
59   return this->fFlowBits; }
60 inline Bool_t AliFlowTrackSimple::InRPSelection() const { 
61   return this->fFlowBits.TestBitNumber(0); }
62 inline Bool_t AliFlowTrackSimple::InPOISelection() const { 
63   return this->fFlowBits.TestBitNumber(1); }
64
65 inline void AliFlowTrackSimple::SetEta(Double_t val) {
66   fEta = val; }
67 inline void AliFlowTrackSimple::SetPt(Double_t val) {
68   fPt = val; }
69   //  cout << "pt set to:" << fPt << endl;}
70 inline void AliFlowTrackSimple::SetPhi(Double_t val) {
71   fPhi = val; }
72 inline void AliFlowTrackSimple::SetForRPSelection(Bool_t val) {
73   fFlowBits.SetBitNumber(0,val); }
74 inline void AliFlowTrackSimple::SetForPOISelection(Bool_t val) {
75   fFlowBits.SetBitNumber(1,val); }
76 #endif
77