#include "AliInputEventHandler.h"
#include "AliTOFPIDResponse.h"
#include "AliAnalysisTaskSE.h"
+#include "AliAnalysisUtils.h"
class AliAnalysisTaskPIDV0base : public AliAnalysisTaskSE {
public:
+ enum PileUpRejectionType { kPileUpRejectionOff = 0, kPileUpRejectionSPD = 1, kPileUpRejectionMV = 2 };
enum TPCcutType { kNoCut = 0, kTPCCutMIGeo = 1, kTPCnclCut = 2 };
AliAnalysisTaskPIDV0base();
AliAnalysisTaskPIDV0base(const char *name);
virtual void Terminate(const Option_t*);
virtual Bool_t GetVertexIsOk(AliVEvent* event, Bool_t doVtxZcut = kTRUE) const;
+
+ virtual Bool_t GetIsPileUp(AliVEvent* event, PileUpRejectionType pileUpRejectionType) const;
virtual Bool_t GetIsPbpOrpPb() const { return fIsPbpOrpPb; };
virtual void SetIsPbpOrpPb(Bool_t newValue) { fIsPbpOrpPb = newValue; };
virtual Double_t GetZvtxCutEvent() const { return fZvtxCutEvent; };
- virtual void SetZvtxCutEvent(Double_t newValue) { fZvtxCutEvent = newValue; };
+ virtual void SetZvtxCutEvent(Double_t newValue) { fZvtxCutEvent = newValue; if (fAnaUtils) fAnaUtils->SetMaxVtxZ(fZvtxCutEvent);};
virtual Bool_t GetUsePhiCut() const { return fUsePhiCut; };
virtual void SetUsePhiCut(Bool_t newValue) { fUsePhiCut = newValue; };
static Bool_t TPCnclCut(const AliVTrack* track);
protected:
+ void FillV0PIDlist(AliESDEvent* esdEvent = 0x0);
+ void ClearV0PIDlist();
+
static Double_t fgCutGeo; // Cut variable for TPCCutMIGeo concerning geometry
static Double_t fgCutNcr; // Cut variable for TPCCutMIGeo concerning num crossed rows
static Double_t fgCutNcl; // Cut variable for TPCCutMIGeo concerning num clusters
AliPIDResponse *fPIDResponse; //! PID response Handler
AliESDv0KineCuts *fV0KineCuts; //! ESD V0 kine cuts
+ AliAnalysisUtils *fAnaUtils; //! Object to use analysis utils like pile-up rejection
+
Bool_t fIsPbpOrpPb; // Pbp/pPb collision or something else?
Bool_t fUsePhiCut; // Use cut on phi (useful for TPC)
TPCcutType fTPCcutType; // Type of TPC cut to be used
Int_t* fV0motherIndex; //! Pointer to array with index of the mother V0
private:
- void FillV0PIDlist(AliESDEvent* esdEvent = 0x0);
- void ClearV0PIDlist();
-
AliAnalysisTaskPIDV0base(const AliAnalysisTaskPIDV0base&); // not implemented
AliAnalysisTaskPIDV0base& operator=(const AliAnalysisTaskPIDV0base&); // not implemented
- ClassDef(AliAnalysisTaskPIDV0base, 1);
+ ClassDef(AliAnalysisTaskPIDV0base, 3);
};