]> git.uio.no Git - u/mrichter/AliRoot.git/blob - ANALYSIS/AliAnalysisTaskESDfilter.h
Fixed format in printouts. Changed temp directory in merging to be current directory
[u/mrichter/AliRoot.git] / ANALYSIS / AliAnalysisTaskESDfilter.h
1 #ifndef ALIANALYSISTASKESDFILTER_H
2 #define ALIANALYSISTASKESDFILTER_H
3  
4 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5  * See cxx source for full Copyright notice                               */
6
7 /* $Id: AliAnalysisTaskESDfilter.h 24429 2008-03-12 10:27:50Z jgrosseo $ */
8
9 #include <TList.h> 
10 #include <TF1.h> 
11 #include "AliAnalysisTaskSE.h"
12 #include "AliESDtrack.h"
13 #include "AliAODTrack.h"
14 #include "AliAODPid.h"
15 class AliAnalysisFilter;
16 class AliStack;
17 class AliESDtrack;
18
19 class AliAnalysisTaskESDfilter : public AliAnalysisTaskSE
20 {
21  public:
22     AliAnalysisTaskESDfilter();
23     AliAnalysisTaskESDfilter(const char* name);
24     virtual ~AliAnalysisTaskESDfilter() {;}
25     // Implementation of interface methods
26     virtual void   UserCreateOutputObjects();
27     virtual void   Init();
28     virtual void   LocalInit() {Init();}
29     virtual void   UserExec(Option_t *option);
30     virtual void   Terminate(Option_t *option);
31
32     virtual void ConvertESDtoAOD();
33     // Setters
34     virtual void SetTrackFilter   (AliAnalysisFilter*   trackF) {fTrackFilter    =   trackF;}
35     virtual void SetKinkFilter    (AliAnalysisFilter*    KinkF) {fKinkFilter     =    KinkF;}
36     virtual void SetV0Filter      (AliAnalysisFilter*      V0F) {fV0Filter       =      V0F;}
37     virtual void SetCascadeFilter (AliAnalysisFilter* CascadeF) {fCascadeFilter  = CascadeF;}
38     virtual void SetPthreshold    (Double_t p)                  {fHighPthreshold =        p;}
39     virtual void SetPshape        (TF1 *func)                   {fPtshape        =     func;}
40
41     virtual void SetAODPID(AliESDtrack *esdtrack, AliAODTrack *aodtrack, AliAODPid *detpid, Double_t timezero, Double_t bfield);
42     void SetDetectorRawSignals(AliAODPid *aodpid, AliESDtrack *track, Double_t timezero, Double_t bfield);
43
44  private:
45     AliAnalysisTaskESDfilter(const AliAnalysisTaskESDfilter&);
46     AliAnalysisTaskESDfilter& operator=(const AliAnalysisTaskESDfilter&);
47     void PrintMCInfo(AliStack *pStack,Int_t label); // for debugging
48     Double_t Chi2perNDF(AliESDtrack* track);
49     
50     // Filtering
51     AliAnalysisFilter* fTrackFilter;      //  Track   Filter
52     AliAnalysisFilter* fKinkFilter;       //  Kink    Filter
53     AliAnalysisFilter* fV0Filter;         //  V0      Filter
54     AliAnalysisFilter* fCascadeFilter;    //  Cascade Filter
55     // PID
56     Double_t     fHighPthreshold;    //  Pt threshold for detector signal setting
57     TF1 *        fPtshape;           //  Pt spectrum distribution
58
59     ClassDef(AliAnalysisTaskESDfilter, 3); // Analysis task for standard ESD filtering
60 };
61  
62 #endif