]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWGHF/correlationHF/AliAnalysisTaskDxHFECorrelation.h
Fix for par file creation on lion with clang (Dario Berzano)
[u/mrichter/AliRoot.git] / PWGHF / correlationHF / AliAnalysisTaskDxHFECorrelation.h
1 //-*- Mode: C++ -*-
2 // $Id$
3
4 //* This file is property of and copyright by the ALICE Project        * 
5 //* ALICE Experiment at CERN, All rights reserved.                     *
6 //* See cxx source for full Copyright notice                           *
7
8 /// @file   AliAnalysisTaskDxHFECorrelation.h
9 /// @author Sedat Altinpinar, Hege Erdal, Matthias Richter
10 /// @date   2012-03-19
11 /// @brief  AnalysisTask D0 - HFE correlation
12 ///
13
14 #ifndef ALIANALYSISTASKDXHFECORRELATION_H
15 #define ALIANALYSISTASKDXHFECORRELATION_H
16
17 #include "AliAnalysisTaskSE.h"
18 #include "TString.h"
19
20 class AliPID;
21 class AliPIDResponse;
22 class TList;
23 class AliDxHFEParticleSelection;
24 class AliDxHFEParticleSelectionD0;
25 class AliDxHFEParticleSelectionEl;
26 class AliDxHFECorrelation;
27 class AliAnalysisCuts;
28 class AliHFEpid;
29 class AliHFEcuts;
30
31 /**
32  * @class AliAnalysisTaskDxHFECorrelation
33  * Task for D0-HFE correleations
34  */
35 class AliAnalysisTaskDxHFECorrelation : public AliAnalysisTaskSE {
36   public:
37   /// constructor
38   AliAnalysisTaskDxHFECorrelation(const char* opt="");
39   /// destructor
40   virtual ~AliAnalysisTaskDxHFECorrelation();
41
42   /// inherited from AliAnalysisTask: connect tree branches at input slots
43   virtual void ConnectInputData(Option_t *option="") {
44     return AliAnalysisTaskSE::ConnectInputData(option);
45   }
46
47   /// inherited from AliAnalysisTaskSE: create output objects
48   virtual void UserCreateOutputObjects();
49   /// inherited from AliAnalysisTaskSE: event processing
50   virtual void UserExec(Option_t*);
51   /// inherited from AliAnalysisTask: called in SlaveTerminate phase for each task
52   virtual void FinishTaskOutput();
53   /// inherited from AliAnalysisTask: final step
54   virtual void Terminate(Option_t*);
55
56   /// set options
57   void SetOption(const char* opt) { fOption = opt; }
58   void SetFillOnlyD0D0bar(Int_t flagfill){fFillOnlyD0D0bar=flagfill;}
59   virtual void SetUseMC(Bool_t useMC){fUseMC=useMC;}
60   virtual void SetCutsD0(AliAnalysisCuts* cuts){fCutsD0=cuts;}
61   virtual void SetCutsHFE(AliHFEcuts* cuts){fCutsHFE=cuts;}
62
63   /// overloaded from TObject: get option
64   virtual Option_t* GetOption() const { return fOption;}
65   Int_t  GetFillOnlyD0D0bar() const {return fFillOnlyD0D0bar;}
66   Bool_t GetUseMC() const {return fUseMC;}
67
68  protected:
69
70  private:
71   /// copy constructor prohibited: might change
72   AliAnalysisTaskDxHFECorrelation(const AliAnalysisTaskDxHFECorrelation&);
73   /// assignment operator prohibited: might change
74   AliAnalysisTaskDxHFECorrelation& operator=(const AliAnalysisTaskDxHFECorrelation&);
75
76   int DefineSlots();
77
78   TList* fOutput;                        //! list send on output slot 1
79   TString fOption;                       //  option string
80   AliDxHFECorrelation* fCorrelation;     //  correlation worker class
81   AliDxHFEParticleSelection* fD0s;       //  selection of D0s
82   AliDxHFEParticleSelection* fElectrons; //  selection of electrons
83   AliAnalysisCuts *fCutsD0;              //  Cuts D0 
84   AliHFEcuts *fCutsHFE;                  //  Cuts HFE
85   AliHFEpid *fPID;                       //  dummy
86   Int_t     fFillOnlyD0D0bar;            // flag to set what to fill (0 = both, 1 = D0 only, 2 = D0bar only)
87   Bool_t fUseMC;                 // use MC info
88
89
90   ClassDef(AliAnalysisTaskDxHFECorrelation, 2);
91 };
92
93 #endif