class AliFlowEventSimpleMaker;
class AliFlowEvent;
class TList;
+class TF1;
class TRandom3;
class AliAnalysisTaskSE;
class TString;
class AliAnalysisTaskFlowEvent : public AliAnalysisTaskSE {
public:
AliAnalysisTaskFlowEvent();
- AliAnalysisTaskFlowEvent(const char *name, TString RPtype, Bool_t QAon, UInt_t seed=666, Bool_t bCandidates=kFALSE);
+ AliAnalysisTaskFlowEvent(const char *name, TString RPtype = "", Bool_t QAon = kFALSE, UInt_t seed=666, Bool_t bCandidates=kFALSE);
virtual ~AliAnalysisTaskFlowEvent();
virtual void UserCreateOutputObjects();
void SetCutsEvent(AliFlowEventCuts* cutsEvent) {fCutsEvent=cutsEvent;}
AliFlowEventCuts* GetCutsEvent() const {return fCutsEvent;}
- void SetCutsRP(AliFlowTrackCuts* cutsRP) {fCutContainer->Add(cutsRP); fCutsRP=cutsRP; cutsRP->SetFlowTagType(AliFlowTrackSimple::kRP);}
+ void SetCutsRP(AliFlowTrackCuts* cutsRP) {fCutContainer->AddAt(cutsRP,0); fCutsRP=cutsRP; cutsRP->SetPOItype(0); }
AliFlowTrackCuts* GetCutsRP() const {return fCutsRP;} //to be reimplemented
- void SetCutsPOI(AliFlowTrackCuts* cutsPOI) {fCutContainer->Add(cutsPOI); fCutsPOI=cutsPOI; cutsPOI->SetFlowTagType(AliFlowTrackSimple::kPOI);}
+ void SetCutsPOI(AliFlowTrackCuts* cutsPOI) {fCutContainer->AddAt(cutsPOI,1); fCutsPOI=cutsPOI; cutsPOI->SetPOItype(1); }
AliFlowTrackCuts* GetCutsPOI() const {return fCutsPOI;} //to be reimplemented
void SetCFManager1(AliCFManager* cfmgr) {this->fCFManager1 = cfmgr; }
void SetQAOn(Bool_t kt) {fQAon = kt; }
Bool_t GetQAOn() const {return fQAon; }
+ void SetShuffleTracks(Bool_t b) {fShuffleTracks=b;}
+
// setters for common constants
void SetNbinsMult( Int_t i ) { fNbinsMult = i; }
void SetNbinsPt( Int_t i ) { fNbinsPt = i; }
void SetNbinsPhi( Int_t i ) { fNbinsPhi = i; }
void SetNbinsEta( Int_t i ) { fNbinsEta = i; }
void SetNbinsQ( Int_t i ) { fNbinsQ = i; }
+ void SetNbinsMass( Int_t i ) { fNbinsMass = i; }
void SetMultMin( Double_t i ) { fMultMin = i; }
void SetMultMax( Double_t i ) { fMultMax = i; }
void SetEtaMax( Double_t i ) { fEtaMax = i; }
void SetQMin( Double_t i ) { fQMin = i; }
void SetQMax( Double_t i ) { fQMax = i; }
+ void SetMassMin( Double_t i ) { fMassMin = i; }
+ void SetMassMax( Double_t i ) { fMassMax = i; }
void SetHistWeightvsPhiMin( Double_t i ) {fHistWeightvsPhiMin=i;}
void SetHistWeightvsPhiMax( Double_t i ) {fHistWeightvsPhiMax=i;}
// end setters common constants
// setters for adding by hand flow values (afterburner)
void SetAfterburnerOn(Bool_t b=kTRUE) {fAfterburnerOn=b;}
void SetNonFlowNumberOfTrackClones(Int_t n) {fNonFlowNumberOfTrackClones=n;}
+ void SetPtDifferentialV2( TF1 *gPtV2) {
+ fDifferentialV2 = gPtV2;}
void SetFlow( Double_t v1, Double_t v2, Double_t v3=0.0, Double_t v4=0.0, Double_t v5=0.0)
{fV1=v1;fV2=v2;fV3=v3;fV4=v4;fV5=v5;}
// end setters afterburner
Int_t fNbinsPhi; // histogram size
Int_t fNbinsEta; // histogram size
Int_t fNbinsQ; // histogram size
+ Int_t fNbinsMass; // histogram size
// Histograms limits
Double_t fMultMin; // histogram limit
Double_t fEtaMax; // histogram limit
Double_t fQMin; // histogram limit
Double_t fQMax; // histogram limit
+ Double_t fMassMin; // histogram limit
+ Double_t fMassMax; // histogram limit
Double_t fHistWeightvsPhiMin; //histogram limit
Double_t fHistWeightvsPhiMax; //histogram limit
// end common constants
Double_t fV3; // Add Flow. Must be in range [0,0.5].
Double_t fV4; // Add Flow. Must be in range [0,0.5].
Double_t fV5; // Add Flow. Must be in range [0,0.5].
+ TF1 *fDifferentialV2; // pt-differential v2
AliFlowEvent* fFlowEvent; //flowevent
+ Bool_t fShuffleTracks; //serve the tracks shuffled
TRandom3* fMyTRandom3; // TRandom3 generator
// end afterburner