]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWG2/FLOW/AliFlowCommon/AliFlowTrackSimple.h
Added class AliFlowEvent, inherits from AliFlowEventSimple.
[u/mrichter/AliRoot.git] / PWG2 / FLOW / AliFlowCommon / AliFlowTrackSimple.h
CommitLineData
f1d945a1 1/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
2* See cxx source for full Copyright notice */
3/* $Id$ */
4
e1911c19 5#ifndef ALIFLOWTRACKSIMPLE_H
6#define ALIFLOWTRACKSIMPLE_H
f1d945a1 7
e1911c19 8#include "TNamed.h"
f1d945a1 9#include "TBits.h"
929098e4 10class TParticle;
f1d945a1 11
12// AliFlowTrackSimple:
13// A simple track class to the the AliFlowEventSimple for flow analysis
14// author: N. van der Kolk (kolk@nikhef.nl)
929098e4 15// mods: Mikolaj Krzewicki (mikolaj.krzewicki@cern.ch)
f1d945a1 16
e1911c19 17class AliFlowTrackSimple: public TNamed {
f1d945a1 18
19 public:
20 AliFlowTrackSimple();
929098e4 21 AliFlowTrackSimple(const TParticle* p);
bc6b015e 22 AliFlowTrackSimple(const AliFlowTrackSimple& aTrack);
23 AliFlowTrackSimple& operator=(const AliFlowTrackSimple& aTrack);
f1d945a1 24 virtual ~AliFlowTrackSimple();
25
c076fda8 26 Bool_t IsFolder() const {return kTRUE;};
27 // void Browse(TBrowser *b);
28 // void Print(Option_t* option = "") const; //method to print stats
29
30
f1d945a1 31 Double_t Eta() const;
32 Double_t Pt() const;
33 Double_t Phi() const;
88e00a8a 34 TBits GetFlowBits() const;
c280195b 35 Bool_t InRPSelection() const;
36 Bool_t InPOISelection() const;
b125a454 37 Bool_t InSubevent(Int_t i) const;
38
f1d945a1 39 void SetEta(Double_t eta);
40 void SetPt(Double_t pt);
41 void SetPhi(Double_t phi);
7382279b 42 void SetForRPSelection(Bool_t b=kTRUE);
43 void SetForPOISelection(Bool_t b=kTRUE);
b125a454 44 void SetForSubevent(Int_t i);
7382279b 45
46 void ResolutionPt(Double_t resolution);
47
48 void AddFlow( Double_t flow, Double_t planeAngle);
b125a454 49
f1d945a1 50 private:
51 Double_t fEta; // eta
52 Double_t fPt; // pt
53 Double_t fPhi; // phi
54 TBits fFlowBits; // bits to set if track is selected
b125a454 55 TBits fSubEventBits; // bits to set if track is selected for a subevent
f1d945a1 56
57
1c1d4332 58 ClassDef(AliFlowTrackSimple,1) // macro for rootcint
f1d945a1 59
60};
61
62inline Double_t AliFlowTrackSimple::Eta() const {
88e00a8a 63 return this->fEta; }
f1d945a1 64inline Double_t AliFlowTrackSimple::Pt() const {
65 // cout << "Returned pt:" << fPt << endl;
88e00a8a 66 return this->fPt;}
f1d945a1 67inline Double_t AliFlowTrackSimple::Phi() const {
88e00a8a 68 return this->fPhi; }
b125a454 69//TBits
88e00a8a 70inline TBits AliFlowTrackSimple::GetFlowBits() const {
71 return this->fFlowBits; }
1918addd 72inline Bool_t AliFlowTrackSimple::InRPSelection() const {
73 return this->fFlowBits.TestBitNumber(0); }
74inline Bool_t AliFlowTrackSimple::InPOISelection() const {
75 return this->fFlowBits.TestBitNumber(1); }
b125a454 76inline Bool_t AliFlowTrackSimple::InSubevent(Int_t i) const {
77 return this->fSubEventBits.TestBitNumber(i); }
f1d945a1 78
79inline void AliFlowTrackSimple::SetEta(Double_t val) {
80 fEta = val; }
81inline void AliFlowTrackSimple::SetPt(Double_t val) {
82 fPt = val; }
83 // cout << "pt set to:" << fPt << endl;}
84inline void AliFlowTrackSimple::SetPhi(Double_t val) {
85 fPhi = val; }
b125a454 86//TBits
1918addd 87inline void AliFlowTrackSimple::SetForRPSelection(Bool_t val) {
f1d945a1 88 fFlowBits.SetBitNumber(0,val); }
1918addd 89inline void AliFlowTrackSimple::SetForPOISelection(Bool_t val) {
f1d945a1 90 fFlowBits.SetBitNumber(1,val); }
b125a454 91inline void AliFlowTrackSimple::SetForSubevent(Int_t i) {
92 fSubEventBits.SetBitNumber(i,kTRUE); }
93
f1d945a1 94#endif
95