1 #ifndef AliHFAssociatedTrackCuts_H
\r
2 #define AliHFAssociatedTrackCuts_H
\r
3 /**************************************************************************
\r
4 * Copyright(c) 1998-2010, ALICE Experiment at CERN, All rights reserved. *
\r
6 * Author: The ALICE Off-line Project. *
\r
7 * Contributors are mentioned in the code where appropriate. *
\r
9 * Permission to use, copy, modify and distribute this software and its *
\r
10 * documentation strictly for non-commercial purposes is hereby granted *
\r
11 * without fee, provided that the above copyright notice appears in all *
\r
12 * copies and that both the copyright notice and this permission notice *
\r
13 * appear in the supporting documentation. The authors make no claims *
\r
14 * about the suitability of this software for any purpose. It is *
\r
15 * provided "as is" without express or implied warranty. *
\r
16 **************************************************************************/
\r
20 ////////////////////////////////////////////////////////////////////////
\r
22 // Base class for cuts on Associated tracks for HF Correlation analysis
\r
24 // Author: S.Bjelogrlic (Utrecht) sandro.bjelogrlic@cern.ch
\r
25 ////////////////////////////////////////////////////////////////////////
\r
27 #include <TString.h>
\r
28 #include "AliAnalysisCuts.h"
\r
29 #include "AliESDtrackCuts.h"
\r
30 #include "AliAODPidHF.h"
\r
31 #include "AliAODEvent.h"
\r
32 #include <TClonesArray.h>
\r
39 class AliHFAssociatedTrackCuts : public AliAnalysisCuts
\r
42 AliHFAssociatedTrackCuts();
\r
43 AliHFAssociatedTrackCuts(const char* name, const char* title);
\r
46 AliHFAssociatedTrackCuts(const AliHFAssociatedTrackCuts& source);
\r
47 AliHFAssociatedTrackCuts& operator=(const AliHFAssociatedTrackCuts& source);
\r
49 virtual ~AliHFAssociatedTrackCuts(); // destructor
\r
50 // virtual Bool_t IsSelected(TList* list) {if(list) return kTRUE; return kFALSE;};
\r
51 Bool_t IsInAcceptance();
\r
52 Bool_t IsHadronSelected(AliAODTrack * track, AliAODVertex *vtx1, Double_t bz);
\r
53 Bool_t CheckKaonCompatibility(AliAODTrack * track, Bool_t useMc, TClonesArray* mcArray);
\r
54 Bool_t IsKZeroSelected(AliAODv0 *vzero, AliAODVertex *vtx1);
\r
55 Int_t IsMCpartFromHF(Int_t label, TClonesArray*mcArray);
\r
59 void AddTrackCuts(const AliESDtrackCuts *cuts) {
\r
60 delete fESDTrackCuts;
\r
61 fESDTrackCuts=new AliESDtrackCuts(*cuts);
\r
65 void SetAODTrackCuts(Float_t *cutsarray);
\r
66 void SetTrackCutsNames(/*TString *namearray*/);
\r
67 void SetAODvZeroCuts(Float_t *cutsarray);
\r
68 void SetvZeroCutsNames(/*TString *namearray*/);
\r
69 void SetPidHF(AliAODPidHF* pid) {fPidObj = pid; return;}
\r
70 virtual void PrintAll();
\r
71 Int_t GetNVarsTrack(){return fNTrackCuts;}
\r
75 void SetNVarsTrack(Int_t nVars){fNTrackCuts=nVars;}
\r
76 void SetNVarsVzero(Int_t nVars){fNvZeroCuts=nVars;}
\r
79 //AliESDtrackCuts *fTrackCuts;
\r
80 AliESDtrackCuts *fESDTrackCuts; // track cut object
\r
81 AliAODPidHF * fPidObj; /// PID object
\r
82 Int_t fNTrackCuts; // array dimension
\r
83 Float_t* fAODTrackCuts;//[fNTrackCuts]
\r
84 TString * fTrackCutsNames;//[fNTrackCuts]
\r
85 Int_t fNvZeroCuts;// array dimension
\r
86 Float_t *fAODvZeroCuts;//[fNvZeroCuts]
\r
87 TString * fvZeroCutsNames;//[fNvZeroCuts]
\r
90 ClassDef(AliHFAssociatedTrackCuts,1);
\r