#include "AliAODTrack.h"
#include "AliAODPid.h"
class AliAnalysisFilter;
-class AliRunTag;
-class AliAODTagCreator;
+class AliStack;
+
class AliAnalysisTaskESDfilter : public AliAnalysisTaskSE
{
public:
AliAnalysisTaskESDfilter();
- AliAnalysisTaskESDfilter(const char* name, Bool_t tags = kFALSE);
+ 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 Bool_t Notify();
virtual void Terminate(Option_t *option);
- virtual void FinishTaskOutput();
virtual void ConvertESDtoAOD();
- virtual void CreateTags();
- virtual void SetCreateTags() {fCreateTags = kTRUE;}
// 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 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&);
+ void PrintMCInfo(AliStack *pStack,Int_t label); // for debugging
+
// Filtering
- AliAnalysisFilter* fTrackFilter; // Track Filter
- AliAnalysisFilter* fKinkFilter; // Kink Filter
- AliAnalysisFilter* fV0Filter; // V0 Filter
+ 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
- // Tags
- Bool_t fCreateTags; // Flag for tag creation
- Bool_t fFirstFile; //! To flag the first file
- AliRunTag *fRunTag; //! Pointer to run tag
- TTree *fTreeT; //! tree for aod tags
- AliAODTagCreator *fTagCreator; //! The tag creator
-
- ClassDef(AliAnalysisTaskESDfilter, 1); // Analysis task for standard ESD filtering
+
+ ClassDef(AliAnalysisTaskESDfilter, 3); // Analysis task for standard ESD filtering
};
#endif