]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWG2/FLOW/AliFlowCommon/AliFlowTrackSimple.h
Bug fixed when creating AliCDBGridParam and the cache folder is not set.
[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
bc231a12 8#include "TObject.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
bc231a12 17class AliFlowTrackSimple: public TObject {
f1d945a1 18
244c607a 19public:
f1d945a1 20 AliFlowTrackSimple();
929098e4 21 AliFlowTrackSimple(const TParticle* p);
bc6b015e 22 AliFlowTrackSimple(const AliFlowTrackSimple& aTrack);
244c607a 23 AliFlowTrackSimple(Double_t phi, Double_t eta, Double_t pt);
bc231a12 24 virtual AliFlowTrackSimple& operator=(const AliFlowTrackSimple& aTrack);
f1d945a1 25 virtual ~AliFlowTrackSimple();
bc231a12 26 virtual AliFlowTrackSimple* Clone(const char* option="") const;
f1d945a1 27
c076fda8 28 Bool_t IsFolder() const {return kTRUE;};
29 // void Browse(TBrowser *b);
bc231a12 30 virtual void Print(Option_t* option = "") const;
c076fda8 31
f1d945a1 32 Double_t Eta() const;
33 Double_t Pt() const;
34 Double_t Phi() const;
88e00a8a 35 TBits GetFlowBits() const;
c280195b 36 Bool_t InRPSelection() const;
37 Bool_t InPOISelection() const;
244c607a 38 Bool_t InSubevent(Int_t i) const;
b125a454 39
f1d945a1 40 void SetEta(Double_t eta);
41 void SetPt(Double_t pt);
42 void SetPhi(Double_t phi);
7382279b 43 void SetForRPSelection(Bool_t b=kTRUE);
44 void SetForPOISelection(Bool_t b=kTRUE);
b125a454 45 void SetForSubevent(Int_t i);
7382279b 46
47 void ResolutionPt(Double_t resolution);
48
bc231a12 49 void AddV1( Double_t v1,
50 Double_t reactionPlaneAngle,
51 Double_t precision,
52 Int_t maxNumberOfIterations=100 );
53 void AddV2( Double_t v2,
54 Double_t reactionPlaneAngle,
55 Double_t precision,
56 Int_t maxNumberOfIterations=100 );
57 void AddV4( Double_t v4,
58 Double_t reactionPlaneAngle,
59 Double_t precision,
60 Int_t maxNumberOfIterations=100 );
61 void AddFlow( Double_t v1,
62 Double_t v2,
63 Double_t v4,
64 Double_t reactionPlaneAngle,
65 Double_t precision,
66 Int_t maxNumberOfIterations=100 );
b125a454 67
f1d945a1 68 private:
69 Double_t fEta; // eta
70 Double_t fPt; // pt
71 Double_t fPhi; // phi
72 TBits fFlowBits; // bits to set if track is selected
b125a454 73 TBits fSubEventBits; // bits to set if track is selected for a subevent
f1d945a1 74
1c1d4332 75 ClassDef(AliFlowTrackSimple,1) // macro for rootcint
f1d945a1 76
77};
78
79inline Double_t AliFlowTrackSimple::Eta() const {
88e00a8a 80 return this->fEta; }
f1d945a1 81inline Double_t AliFlowTrackSimple::Pt() const {
82 // cout << "Returned pt:" << fPt << endl;
88e00a8a 83 return this->fPt;}
f1d945a1 84inline Double_t AliFlowTrackSimple::Phi() const {
88e00a8a 85 return this->fPhi; }
b125a454 86//TBits
88e00a8a 87inline TBits AliFlowTrackSimple::GetFlowBits() const {
88 return this->fFlowBits; }
1918addd 89inline Bool_t AliFlowTrackSimple::InRPSelection() const {
90 return this->fFlowBits.TestBitNumber(0); }
91inline Bool_t AliFlowTrackSimple::InPOISelection() const {
92 return this->fFlowBits.TestBitNumber(1); }
b125a454 93inline Bool_t AliFlowTrackSimple::InSubevent(Int_t i) const {
94 return this->fSubEventBits.TestBitNumber(i); }
f1d945a1 95
96inline void AliFlowTrackSimple::SetEta(Double_t val) {
97 fEta = val; }
98inline void AliFlowTrackSimple::SetPt(Double_t val) {
99 fPt = val; }
100 // cout << "pt set to:" << fPt << endl;}
101inline void AliFlowTrackSimple::SetPhi(Double_t val) {
102 fPhi = val; }
b125a454 103//TBits
1918addd 104inline void AliFlowTrackSimple::SetForRPSelection(Bool_t val) {
f1d945a1 105 fFlowBits.SetBitNumber(0,val); }
1918addd 106inline void AliFlowTrackSimple::SetForPOISelection(Bool_t val) {
f1d945a1 107 fFlowBits.SetBitNumber(1,val); }
b125a454 108inline void AliFlowTrackSimple::SetForSubevent(Int_t i) {
109 fSubEventBits.SetBitNumber(i,kTRUE); }
110
f1d945a1 111#endif
112