q vector from loop on stack
[u/mrichter/AliRoot.git] / PWGLF / SPECTRA / MultEvShape / AliAnalysisTaskCentral.h
1 #ifndef ALIANALYSISTASKCENTRAL_H
2 #define ALIANALYSISTASKCENTRAL_H
3
4 /*
5  * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved.
6  * See cxx source for full Copyright notice
7  * $Id$
8  */
9
10 //-----------------------------------------
11 //  analysis task for azimuthal isotropic
12 //  expansion in highly central collisions
13 //  author: Cristian Andrei
14 //         acristian@niham.nipne.ro
15 //-----------------------------------------
16
17 #include "AliAnalysisTask.h"
18
19 class TH1D;
20 class TObject;
21 class TObjArray;
22 class TList;
23
24 class AliESDEvent;
25 class AliMCEvent;
26 class AliCFContainer;
27
28
29 class AliAnalysisTaskCentral : public AliAnalysisTask {
30  public:
31   AliAnalysisTaskCentral(const char *name="AliAnalysisTaskCentral");
32   virtual ~AliAnalysisTaskCentral();
33
34   void SetCuts(Int_t const  no, TObjArray* const array) {fCutsList[no] = array;} //used to set the cuts to the Task
35
36   void SendEvent(TObject *obj) const;  //used to send the MCEvent to the cuts that need it (i.e MC IsPrimary)
37
38   Bool_t CheckCuts(Int_t no, TObject *obj) const; //used to check if a track/particle is selected
39
40 //  void SetSimulation(Bool_t type) {fSim = type;} // set to kTRUE if running on simulated data
41
42   virtual void   ConnectInputData(Option_t *);
43   virtual void   CreateOutputObjects();
44   virtual void   Exec(Option_t *option);
45   virtual void   Terminate(Option_t *);
46
47  private:
48   AliAnalysisTaskCentral(const AliAnalysisTaskCentral& ref);
49   AliAnalysisTaskCentral& operator=(const AliAnalysisTaskCentral& ref);
50
51   void InitCuts();  //initialize cuts
52
53   AliESDEvent *fESD;   //ESD object
54   AliMCEvent  *fMC;    //MC Object
55
56   TH1D *fNoEvt;  //Number of events processed
57
58   AliCFContainer *fCFContainerPi; // CF Container used to calc/apply eff - Pions
59   AliCFContainer *fCFContainerK; // CF Container used to calc/apply eff - Kaons
60   AliCFContainer *fCFContainerP; // CF Container used to calc/apply eff - Protons
61
62   Bool_t fSim; // kTRUE = running on simulated data (look at MC Truth too)
63
64   TObjArray *fCutsList[10];  //list containing the cuts
65
66   TList *fOutList;  //list containing the output objects
67
68
69   ClassDef(AliAnalysisTaskCentral, 1);
70 };
71
72 #endif