]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWG2/FLOW/AliFlowTasks/AliAnalysisTaskLeeYangZeros.h
bug in StepManager fixed, thanks to Andreas
[u/mrichter/AliRoot.git] / PWG2 / FLOW / AliFlowTasks / AliAnalysisTaskLeeYangZeros.h
1 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
2 * See cxx source for full Copyright notice */
3 /* $Id$ */
4
5
6 #ifndef AliAnalysisTaskLeeYangZeros_H
7 #define AliAnalysisTaskLeeYangZeros_H
8
9 // AliAnalysisTaskLeeYangZeros:
10 // analysis task for 
11 // Lee Yang Zeroes method
12 // Author: 
13 // Naomi van der Kolk (kolk@nikhef.nl)             
14
15 class AliESDEvent;
16 class AliAODEvent;
17 class AliCFManager;
18 class AliFlowAnalysisWithLeeYangZeros;
19 class AliFlowEventSimpleMaker;
20 class TFile;
21 class TList;
22
23 #include "TString.h"
24 #include "AliAnalysisTask.h"
25
26 class AliAnalysisTaskLeeYangZeros : public AliAnalysisTask {
27  public:
28   AliAnalysisTaskLeeYangZeros();
29   AliAnalysisTaskLeeYangZeros(const char *name, Bool_t firstrun, Bool_t QAon);
30   virtual ~AliAnalysisTaskLeeYangZeros();
31   
32   virtual void   ConnectInputData(Option_t *);
33   virtual void   CreateOutputObjects();
34   virtual void   Exec(Option_t *option);
35   virtual void   Terminate(Option_t *);
36
37   //lyz flags
38   void           SetFirstRunLYZ(Bool_t kt)     { this->fFirstRunLYZ = kt ;  }
39   Bool_t         GetFirstRunLYZ() const        { return this->fFirstRunLYZ ; }
40   void           SetUseSumLYZ(Bool_t kt)       { this->fUseSumLYZ = kt ;  }
41   Bool_t         GetUseSumLYZ() const          { return this->fUseSumLYZ ; }
42   void           SetAnalysisType(TString type) {this->fAnalysisType = type ; }
43   TString        GetAnalysisType()             {return this->fAnalysisType; } 
44   void           SetCFManager1(AliCFManager* cfmgr) {this->fCFManager1 = cfmgr; } 
45   AliCFManager*  GetCFManager1()               {return this->fCFManager1; }
46   void           SetCFManager2(AliCFManager* cfmgr) {this->fCFManager2 = cfmgr; } 
47   AliCFManager*  GetCFManager2()               {return this->fCFManager2; }
48   void           SetQAList1(TList* list)       {this->fQAInt = list; }
49   TList*         GetQAList1()                  {return this->fQAInt; }
50   void           SetQAList2(TList* list)       {this->fQADiff = list; }
51   TList*         GetQAList2()                  {return this->fQADiff; }
52   void           SetQAOn(Bool_t kt)            {this->fQA = kt; }
53   Bool_t         GetQAOn()                     {return this->fQA; }
54
55  private:
56  
57   AliAnalysisTaskLeeYangZeros(const AliAnalysisTaskLeeYangZeros& aAnalysis);
58   AliAnalysisTaskLeeYangZeros& operator=(const AliAnalysisTaskLeeYangZeros& aAnalysis);
59
60   AliESDEvent*     fESD;                  // ESD object
61   AliAODEvent*     fAOD;                  // AOD object
62   TString          fAnalysisType;         // string to select which kind of input to analyse: ESD, AOD or MC
63   AliCFManager*    fCFManager1;           // correction framework manager
64   AliCFManager*    fCFManager2;           // correction framework manager
65   AliFlowAnalysisWithLeeYangZeros* fLyz;  // LYZ analysis object
66   AliFlowEventSimpleMaker* fEventMaker;   // FlowEventSimple maker object
67
68   TFile*           fFirstRunFile;         // file from the first loop over events
69   TList*           fListHistos;           // collection of output
70   TList*           fQAInt;                // QA histogram list
71   TList*           fQADiff;               // QA histogram list
72
73   //flags
74   Bool_t fFirstRunLYZ ;    // flag for lyz analysis 
75   Bool_t fUseSumLYZ ;      // flag for lyz analysis 
76   Bool_t fQA;              // flag to set the filling of the QA hostograms
77   
78       
79   ClassDef(AliAnalysisTaskLeeYangZeros, 1);  //AliAnalysisTaskLeeYangZeros class object
80 };
81
82 #endif
83