ROOT logo
#ifndef ALIANALYSISTASKSEDSTARJETS_H
#define ALIANALYSISTASKSEDSTARJETS_H
/**************************************************************************
 * Copyright(c) 1998-2009, ALICE Experiment at CERN, All rights reserved. *
 *                                                                        *
 * Author: The ALICE Off-line Project.                                    *
 * Contributors are mentioned in the code where appropriate.              *
 *                                                                        *
 * Permission to use, copy, modify and distribute this software and its   *
 * documentation strictly for non-commercial purposes is hereby granted   *
 * without fee, provided that the above copyright notice appears in all   *
 * copies and that both the copyright notice and this permission notice   *
 * appear in the supporting documentation. The authors make no claims     *
 * about the suitability of this software for any purpose. It is          *
 * provided "as is" without express or implied warranty.                  *
 **************************************************************************/

//-----------------------------------------------------------------------
// Author : A. Grelli, UTRECHT
//-----------------------------------------------------------------------


#include <TH2F.h>
#include "AliAnalysisTaskSE.h"
#include "AliAODEvent.h"
#include "AliRDHFCutsDStartoKpipi.h"

class TParticle ;
class TClonesArray ;
class AliAODMCParticle;


class AliAnalysisTaskSEDStarJets : public AliAnalysisTaskSE 
{
  
 public:
  
  AliAnalysisTaskSEDStarJets();
  AliAnalysisTaskSEDStarJets(const Char_t* name,AliRDHFCutsDStartoKpipi* cuts);
  virtual ~AliAnalysisTaskSEDStarJets();
  
  virtual void     UserCreateOutputObjects();
  virtual void     UserExec(Option_t *option);
  virtual void     Terminate(Option_t *);
  virtual void     Init();
  virtual void     LocalInit() {Init();}

  //side band background eval
  void     SideBandBackground(Double_t finvM, Double_t finvMDStar,  Double_t dStarMomBkg, Double_t fejet, Double_t ejet);
  
  // inizializations
  Bool_t   DefineHistoFroAnalysis();  
  //MC FF
  double   FillMCFF(AliAODMCParticle* mcPart, TClonesArray* mcArray, Int_t mcLabel);
  // correction for UA1 cone algorithm
  void     SetChargeFractionCorrection(Int_t chargeFrCorr) {fchargeFrCorr =  chargeFrCorr;}
  Int_t    GetChargeFractionCorrection() const {return fchargeFrCorr;}

  // set MC usage
  void    SetMC(Bool_t theMCon) {fUseMCInfo = theMCon;}
  Bool_t  GetMC() const {return fUseMCInfo;}
  
 private:
  
  AliAnalysisTaskSEDStarJets(const AliAnalysisTaskSEDStarJets &source);
  AliAnalysisTaskSEDStarJets& operator=(const AliAnalysisTaskSEDStarJets& source); 

  Int_t  fEvents;                //  n. of events
  Int_t  fchargeFrCorr;          //  Charge fraction correction UA1 algorithm
  Bool_t fUseMCInfo;             //  Use MC info
  Bool_t fRequireNormalization;  //  normalization 
  
  TList *fOutput;                  //! user output
  AliRDHFCutsDStartoKpipi *fCuts;  // Cuts 

  // define the histograms 

  TH1F *ftrigger;        //!
  TH1F *fPtPion;         //!
  TH1F *fInvMass;        //!
  TH1F *fRECOPtDStar;    //!
  TH1F *fRECOPtBkg;      //!
  TH1F *fDStar;          //!
  TH1F *fDiff;           //!
  TH1F *fDiffSideBand;   //!
  TH1F *fDStarMass;      //!
  TH1F *fPhi;            //!
  TH1F *fPhiBkg;         //!
  TH1F *fTrueDiff;       //!
  TH1F *fResZ;           //!
  TH1F *fResZBkg;        //!  
  TH1F *fEjet;           //!
  TH1F *fPhijet;         //!
  TH1F *fEtaJet;         //!
  TH1F *theMCFF;         //!
  TH1F *fDphiD0Dstar;    //!
  TH1F *fPtJet;          //!

  ClassDef(AliAnalysisTaskSEDStarJets,3); // class for charm-jet correlations
};

#endif
 AliAnalysisTaskSEDStarJets.h:1
 AliAnalysisTaskSEDStarJets.h:2
 AliAnalysisTaskSEDStarJets.h:3
 AliAnalysisTaskSEDStarJets.h:4
 AliAnalysisTaskSEDStarJets.h:5
 AliAnalysisTaskSEDStarJets.h:6
 AliAnalysisTaskSEDStarJets.h:7
 AliAnalysisTaskSEDStarJets.h:8
 AliAnalysisTaskSEDStarJets.h:9
 AliAnalysisTaskSEDStarJets.h:10
 AliAnalysisTaskSEDStarJets.h:11
 AliAnalysisTaskSEDStarJets.h:12
 AliAnalysisTaskSEDStarJets.h:13
 AliAnalysisTaskSEDStarJets.h:14
 AliAnalysisTaskSEDStarJets.h:15
 AliAnalysisTaskSEDStarJets.h:16
 AliAnalysisTaskSEDStarJets.h:17
 AliAnalysisTaskSEDStarJets.h:18
 AliAnalysisTaskSEDStarJets.h:19
 AliAnalysisTaskSEDStarJets.h:20
 AliAnalysisTaskSEDStarJets.h:21
 AliAnalysisTaskSEDStarJets.h:22
 AliAnalysisTaskSEDStarJets.h:23
 AliAnalysisTaskSEDStarJets.h:24
 AliAnalysisTaskSEDStarJets.h:25
 AliAnalysisTaskSEDStarJets.h:26
 AliAnalysisTaskSEDStarJets.h:27
 AliAnalysisTaskSEDStarJets.h:28
 AliAnalysisTaskSEDStarJets.h:29
 AliAnalysisTaskSEDStarJets.h:30
 AliAnalysisTaskSEDStarJets.h:31
 AliAnalysisTaskSEDStarJets.h:32
 AliAnalysisTaskSEDStarJets.h:33
 AliAnalysisTaskSEDStarJets.h:34
 AliAnalysisTaskSEDStarJets.h:35
 AliAnalysisTaskSEDStarJets.h:36
 AliAnalysisTaskSEDStarJets.h:37
 AliAnalysisTaskSEDStarJets.h:38
 AliAnalysisTaskSEDStarJets.h:39
 AliAnalysisTaskSEDStarJets.h:40
 AliAnalysisTaskSEDStarJets.h:41
 AliAnalysisTaskSEDStarJets.h:42
 AliAnalysisTaskSEDStarJets.h:43
 AliAnalysisTaskSEDStarJets.h:44
 AliAnalysisTaskSEDStarJets.h:45
 AliAnalysisTaskSEDStarJets.h:46
 AliAnalysisTaskSEDStarJets.h:47
 AliAnalysisTaskSEDStarJets.h:48
 AliAnalysisTaskSEDStarJets.h:49
 AliAnalysisTaskSEDStarJets.h:50
 AliAnalysisTaskSEDStarJets.h:51
 AliAnalysisTaskSEDStarJets.h:52
 AliAnalysisTaskSEDStarJets.h:53
 AliAnalysisTaskSEDStarJets.h:54
 AliAnalysisTaskSEDStarJets.h:55
 AliAnalysisTaskSEDStarJets.h:56
 AliAnalysisTaskSEDStarJets.h:57
 AliAnalysisTaskSEDStarJets.h:58
 AliAnalysisTaskSEDStarJets.h:59
 AliAnalysisTaskSEDStarJets.h:60
 AliAnalysisTaskSEDStarJets.h:61
 AliAnalysisTaskSEDStarJets.h:62
 AliAnalysisTaskSEDStarJets.h:63
 AliAnalysisTaskSEDStarJets.h:64
 AliAnalysisTaskSEDStarJets.h:65
 AliAnalysisTaskSEDStarJets.h:66
 AliAnalysisTaskSEDStarJets.h:67
 AliAnalysisTaskSEDStarJets.h:68
 AliAnalysisTaskSEDStarJets.h:69
 AliAnalysisTaskSEDStarJets.h:70
 AliAnalysisTaskSEDStarJets.h:71
 AliAnalysisTaskSEDStarJets.h:72
 AliAnalysisTaskSEDStarJets.h:73
 AliAnalysisTaskSEDStarJets.h:74
 AliAnalysisTaskSEDStarJets.h:75
 AliAnalysisTaskSEDStarJets.h:76
 AliAnalysisTaskSEDStarJets.h:77
 AliAnalysisTaskSEDStarJets.h:78
 AliAnalysisTaskSEDStarJets.h:79
 AliAnalysisTaskSEDStarJets.h:80
 AliAnalysisTaskSEDStarJets.h:81
 AliAnalysisTaskSEDStarJets.h:82
 AliAnalysisTaskSEDStarJets.h:83
 AliAnalysisTaskSEDStarJets.h:84
 AliAnalysisTaskSEDStarJets.h:85
 AliAnalysisTaskSEDStarJets.h:86
 AliAnalysisTaskSEDStarJets.h:87
 AliAnalysisTaskSEDStarJets.h:88
 AliAnalysisTaskSEDStarJets.h:89
 AliAnalysisTaskSEDStarJets.h:90
 AliAnalysisTaskSEDStarJets.h:91
 AliAnalysisTaskSEDStarJets.h:92
 AliAnalysisTaskSEDStarJets.h:93
 AliAnalysisTaskSEDStarJets.h:94
 AliAnalysisTaskSEDStarJets.h:95
 AliAnalysisTaskSEDStarJets.h:96
 AliAnalysisTaskSEDStarJets.h:97
 AliAnalysisTaskSEDStarJets.h:98
 AliAnalysisTaskSEDStarJets.h:99
 AliAnalysisTaskSEDStarJets.h:100
 AliAnalysisTaskSEDStarJets.h:101
 AliAnalysisTaskSEDStarJets.h:102