#include "AliAODTrack.h"
#include "AliAODPid.h"
class AliAnalysisFilter;
+class AliStack;
+class AliESDtrack;
class AliAnalysisTaskESDfilter : public AliAnalysisTaskSE
{
AliAnalysisTaskESDfilter(const char* name);
virtual ~AliAnalysisTaskESDfilter() {;}
// Implementation of interface methods
- virtual void UserCreateOutputObjects();
- virtual void Init();
- virtual void LocalInit() {Init();}
- virtual void UserExec(Option_t *option);
- virtual void Terminate(Option_t *option);
+ virtual void UserCreateOutputObjects();
+ virtual void Init();
+ virtual void LocalInit() {Init();}
+ virtual void UserExec(Option_t *option);
+ virtual void Terminate(Option_t *option);
virtual void ConvertESDtoAOD();
-
// Setters
- virtual void SetTrackFilter(AliAnalysisFilter* trackF) {fTrackFilter = trackF;}
- virtual void SetKinkFilter (AliAnalysisFilter* KinkF) {fKinkFilter = KinkF;}
- virtual void SetV0Filter (AliAnalysisFilter* V0F) {fV0Filter = V0F;}
- virtual void SetPthreshold (Double_t p) {fHighPthreshold = p;}
- virtual void SetPshape (TF1 *func) {fPtshape = func;}
+ virtual void SetTrackFilter (AliAnalysisFilter* trackF) {fTrackFilter = trackF;}
+ virtual void SetKinkFilter (AliAnalysisFilter* KinkF) {fKinkFilter = KinkF;}
+ virtual void SetV0Filter (AliAnalysisFilter* V0F) {fV0Filter = V0F;}
+ virtual void SetCascadeFilter (AliAnalysisFilter* CascadeF) {fCascadeFilter = CascadeF;}
+ virtual void SetPthreshold (Double_t p) {fHighPthreshold = p;}
+ virtual void SetPshape (TF1 *func) {fPtshape = func;}
+ virtual void SetEnableFillAOD (Bool_t b) {fEnableFillAOD = b;}
- virtual void SetAODPID(AliESDtrack *esdtrack, AliAODTrack *aodtrack, AliAODPid *detpid, Double_t timezero);
- void SetDetectorRawSignals(AliAODPid *aodpid, AliESDtrack *track, Double_t timezero);
+ virtual void SetAODPID(AliESDtrack *esdtrack, AliAODTrack *aodtrack, AliAODPid *detpid, Double_t timezero, Double_t bfield);
+ void SetDetectorRawSignals(AliAODPid *aodpid, AliESDtrack *track, Double_t timezero, Double_t bfield);
private:
AliAnalysisTaskESDfilter(const AliAnalysisTaskESDfilter&);
AliAnalysisTaskESDfilter& operator=(const AliAnalysisTaskESDfilter&);
- AliAnalysisFilter* fTrackFilter; // Track Filter
- AliAnalysisFilter* fKinkFilter; // Kink Filter
- AliAnalysisFilter* fV0Filter; // V0 Filter
+ void PrintMCInfo(AliStack *pStack,Int_t label); // for debugging
+ Double_t Chi2perNDF(AliESDtrack* track);
+
+ // Filtering
+ AliAnalysisFilter* fTrackFilter; // Track Filter
+ AliAnalysisFilter* fKinkFilter; // Kink Filter
+ AliAnalysisFilter* fV0Filter; // V0 Filter
+ AliAnalysisFilter* fCascadeFilter; // Cascade Filter
+ // PID
Double_t fHighPthreshold; // Pt threshold for detector signal setting
TF1 * fPtshape; // Pt spectrum distribution
+ Bool_t fEnableFillAOD; // value that decides if this task activates AOD filling
- ClassDef(AliAnalysisTaskESDfilter, 1); // Analysis task for standard ESD filtering
+ ClassDef(AliAnalysisTaskESDfilter, 4); // Analysis task for standard ESD filtering
};
#endif