]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWG2/SPECTRA/AliAnalysisTaskProtonsQA.h
Moving the QA task to the spectra dir (Mihaela's request)
[u/mrichter/AliRoot.git] / PWG2 / SPECTRA / AliAnalysisTaskProtonsQA.h
1 #ifndef AliAnalysisTaskProtonsQA_cxx
2 #define AliAnalysisTaskProtonsQA_cxx
3
4 // Analysis task creating a the 2d y-p_t spectrum of p and antip
5 // Author: Panos Cristakoglou
6 class TList;
7 class AliESDEvent;
8 class AliMCEvent;
9 class AliProtonQAAnalysis;
10
11 #include "AliAnalysisTask.h"
12
13 class AliAnalysisTaskProtonsQA : public AliAnalysisTask {
14  public:
15   enum TriggerMode { kMB1 = 0, kMB2, kSPDFASTOR }; 
16   enum AnalysisMode { kInvalid = -1, kTPC = 0, kHybrid, kGlobal };
17   
18   AliAnalysisTaskProtonsQA();
19   AliAnalysisTaskProtonsQA(const char *name);
20   virtual ~AliAnalysisTaskProtonsQA() {}
21   
22   virtual void   ConnectInputData(Option_t *);
23   virtual void   CreateOutputObjects();
24   virtual void   Exec(Option_t *option);
25   virtual void   Terminate(Option_t *);
26
27   void SetTriggerMode(TriggerMode triggermode) {fTriggerMode = triggermode;}
28   void SetAnalysisMode(AnalysisMode analysismode) {fProtonAnalysisMode = analysismode;}
29   void SetAcceptedVertexDiamond(Double_t gVx, Double_t gVy, Double_t gVz) {
30     fVxMax = gVx; fVyMax = gVy; fVzMax = gVz;}
31
32   static Bool_t IsEventTriggered(const AliESDEvent *esd, 
33                                  TriggerMode trigger = kMB2);
34   static const  AliESDVertex *GetVertex(AliESDEvent *esd, 
35                                         AnalysisMode mode = kTPC,
36                                         Double_t gVx = 100.,
37                                         Double_t gVy = 100.,
38                                         Double_t gVz = 100.);
39  
40  private:
41   AliESDEvent *fESD;    //ESD object
42   AliMCEvent  *fMC;     //MC object
43
44   TList  *fList0; //TList output object
45   TList  *fList1; //TList output object
46   TList  *fList2; //TList output object
47   TList  *fList3; //TList output object
48   TList  *fList4; //TList output object
49   TList  *fList5; //TList output object
50   TList  *fList6; //TList output object
51   TList  *fList7; //TList output object
52   
53   AliProtonQAAnalysis *fProtonQAAnalysis; //analysis object
54  
55   TriggerMode   fTriggerMode; //Trigger mode
56   AnalysisMode  fProtonAnalysisMode; //Analysis mode
57   Double_t      fVxMax, fVyMax, fVzMax; //vertex diamond constrain
58
59   AliAnalysisTaskProtonsQA(const AliAnalysisTaskProtonsQA&); // not implemented
60   AliAnalysisTaskProtonsQA& operator=(const AliAnalysisTaskProtonsQA&); // not implemented
61   
62   ClassDef(AliAnalysisTaskProtonsQA, 1); // example of analysis
63 };
64
65 #endif