#ifndef ALIANALYSISTASKSEDSTARSPECTRA_H
#define ALIANALYSISTASKSEDSTARSPECTRA_H
#include <TH2F.h>
#include <TH3F.h>
#include <THnSparse.h>
#include "AliAnalysisTaskSE.h"
class AliRDHFCutsDStartoKpipi;
class AliNormalizationCounter;
class AliAnalysisTaskSEDStarSpectra : public AliAnalysisTaskSE
{
public:
AliAnalysisTaskSEDStarSpectra();
AliAnalysisTaskSEDStarSpectra(const Char_t* name,AliRDHFCutsDStartoKpipi* cuts);
virtual ~AliAnalysisTaskSEDStarSpectra();
virtual void UserCreateOutputObjects();
virtual void Init();
virtual void LocalInit() {Init();}
virtual void UserExec(Option_t *option);
virtual void Terminate(Option_t *option);
void SideBandBackground(AliAODRecoCascadeHF *part, AliRDHFCutsDStartoKpipi *cuts, Int_t isSel, TList *listout);
void WrongSignForDStar(AliAODRecoCascadeHF *part, AliRDHFCutsDStartoKpipi *cuts, TList *listout);
void FillSpectrum(AliAODRecoCascadeHF *part, Int_t isDStar, AliRDHFCutsDStartoKpipi *cuts, Int_t isSel, TList *listout);
void DefineHistograms();
Int_t CheckOrigin(TClonesArray* arrayMC, const AliAODMCParticle *mcPartCandidate) const;
void CreateImpactParameterHistos();
void SetAnalysisType(Int_t anaType) {fAnalysis = anaType;}
void PrintAnalysisType() {printf("Analysis type: %d\n(0: Heidelberg\t1: Utrecht)",fAnalysis);}
void SetMC(Bool_t theMCon) {fUseMCInfo = theMCon;}
Bool_t GetMC() const {return fUseMCInfo;}
void SetRareSearch(Bool_t theRareOn) {fDoSearch = theRareOn;}
Bool_t GetRareSearch() const {return fDoSearch;}
void SetDoImpactParameterHistos(Bool_t doImp=kTRUE){fDoImpParDstar=doImp;}
Bool_t GetDoImpactParameterHistos() const {return fDoImpParDstar;}
Float_t GetTrueImpactParameterD0(const AliAODMCHeader *mcHeader, TClonesArray* arrayMC, const AliAODMCParticle *partDp) const;
void SetDoDStarVsY(Bool_t theDStarVsY) {fDoDStarVsY = theDStarVsY;}
private:
AliAnalysisTaskSEDStarSpectra(const AliAnalysisTaskSEDStarSpectra &source);
AliAnalysisTaskSEDStarSpectra& operator=(const AliAnalysisTaskSEDStarSpectra& source);
Int_t fEvents;
Int_t fAnalysis;
Double_t fD0Window;
Double_t fPeakWindow;
Bool_t fUseMCInfo;
Bool_t fDoSearch;
TList *fOutput;
TList *fOutputAll;
TList *fOutputPID;
Int_t fNSigma;
AliRDHFCutsDStartoKpipi *fCuts;
TH1F *fCEvents;
TH2F *fTrueDiff2;
TH1F *fDeltaMassD1;
AliNormalizationCounter *fCounter;
Bool_t fDoImpParDstar;
Int_t fNImpParBins;
Float_t fLowerImpPar;
Float_t fHigherImpPar;
Bool_t fDoDStarVsY;
THnSparseF *fHistMassPtImpParTCDs[5];
ClassDef(AliAnalysisTaskSEDStarSpectra,9);
};
#endif
AliAnalysisTaskSEDStarSpectra.h:1 AliAnalysisTaskSEDStarSpectra.h:2 AliAnalysisTaskSEDStarSpectra.h:3 AliAnalysisTaskSEDStarSpectra.h:4 AliAnalysisTaskSEDStarSpectra.h:5 AliAnalysisTaskSEDStarSpectra.h:6 AliAnalysisTaskSEDStarSpectra.h:7 AliAnalysisTaskSEDStarSpectra.h:8 AliAnalysisTaskSEDStarSpectra.h:9 AliAnalysisTaskSEDStarSpectra.h:10 AliAnalysisTaskSEDStarSpectra.h:11 AliAnalysisTaskSEDStarSpectra.h:12 AliAnalysisTaskSEDStarSpectra.h:13 AliAnalysisTaskSEDStarSpectra.h:14 AliAnalysisTaskSEDStarSpectra.h:15 AliAnalysisTaskSEDStarSpectra.h:16 AliAnalysisTaskSEDStarSpectra.h:17 AliAnalysisTaskSEDStarSpectra.h:18 AliAnalysisTaskSEDStarSpectra.h:19 AliAnalysisTaskSEDStarSpectra.h:20 AliAnalysisTaskSEDStarSpectra.h:21 AliAnalysisTaskSEDStarSpectra.h:22 AliAnalysisTaskSEDStarSpectra.h:23 AliAnalysisTaskSEDStarSpectra.h:24 AliAnalysisTaskSEDStarSpectra.h:25 AliAnalysisTaskSEDStarSpectra.h:26 AliAnalysisTaskSEDStarSpectra.h:27 AliAnalysisTaskSEDStarSpectra.h:28 AliAnalysisTaskSEDStarSpectra.h:29 AliAnalysisTaskSEDStarSpectra.h:30 AliAnalysisTaskSEDStarSpectra.h:31 AliAnalysisTaskSEDStarSpectra.h:32 AliAnalysisTaskSEDStarSpectra.h:33 AliAnalysisTaskSEDStarSpectra.h:34 AliAnalysisTaskSEDStarSpectra.h:35 AliAnalysisTaskSEDStarSpectra.h:36 AliAnalysisTaskSEDStarSpectra.h:37 AliAnalysisTaskSEDStarSpectra.h:38 AliAnalysisTaskSEDStarSpectra.h:39 AliAnalysisTaskSEDStarSpectra.h:40 AliAnalysisTaskSEDStarSpectra.h:41 AliAnalysisTaskSEDStarSpectra.h:42 AliAnalysisTaskSEDStarSpectra.h:43 AliAnalysisTaskSEDStarSpectra.h:44 AliAnalysisTaskSEDStarSpectra.h:45 AliAnalysisTaskSEDStarSpectra.h:46 AliAnalysisTaskSEDStarSpectra.h:47 AliAnalysisTaskSEDStarSpectra.h:48 AliAnalysisTaskSEDStarSpectra.h:49 AliAnalysisTaskSEDStarSpectra.h:50 AliAnalysisTaskSEDStarSpectra.h:51 AliAnalysisTaskSEDStarSpectra.h:52 AliAnalysisTaskSEDStarSpectra.h:53 AliAnalysisTaskSEDStarSpectra.h:54 AliAnalysisTaskSEDStarSpectra.h:55 AliAnalysisTaskSEDStarSpectra.h:56 AliAnalysisTaskSEDStarSpectra.h:57 AliAnalysisTaskSEDStarSpectra.h:58 AliAnalysisTaskSEDStarSpectra.h:59 AliAnalysisTaskSEDStarSpectra.h:60 AliAnalysisTaskSEDStarSpectra.h:61 AliAnalysisTaskSEDStarSpectra.h:62 AliAnalysisTaskSEDStarSpectra.h:63 AliAnalysisTaskSEDStarSpectra.h:64 AliAnalysisTaskSEDStarSpectra.h:65 AliAnalysisTaskSEDStarSpectra.h:66 AliAnalysisTaskSEDStarSpectra.h:67 AliAnalysisTaskSEDStarSpectra.h:68 AliAnalysisTaskSEDStarSpectra.h:69 AliAnalysisTaskSEDStarSpectra.h:70 AliAnalysisTaskSEDStarSpectra.h:71 AliAnalysisTaskSEDStarSpectra.h:72 AliAnalysisTaskSEDStarSpectra.h:73 AliAnalysisTaskSEDStarSpectra.h:74 AliAnalysisTaskSEDStarSpectra.h:75 AliAnalysisTaskSEDStarSpectra.h:76 AliAnalysisTaskSEDStarSpectra.h:77 AliAnalysisTaskSEDStarSpectra.h:78 AliAnalysisTaskSEDStarSpectra.h:79 AliAnalysisTaskSEDStarSpectra.h:80 AliAnalysisTaskSEDStarSpectra.h:81 AliAnalysisTaskSEDStarSpectra.h:82 AliAnalysisTaskSEDStarSpectra.h:83 AliAnalysisTaskSEDStarSpectra.h:84 AliAnalysisTaskSEDStarSpectra.h:85 AliAnalysisTaskSEDStarSpectra.h:86 AliAnalysisTaskSEDStarSpectra.h:87 AliAnalysisTaskSEDStarSpectra.h:88 AliAnalysisTaskSEDStarSpectra.h:89 AliAnalysisTaskSEDStarSpectra.h:90 AliAnalysisTaskSEDStarSpectra.h:91 AliAnalysisTaskSEDStarSpectra.h:92 AliAnalysisTaskSEDStarSpectra.h:93 AliAnalysisTaskSEDStarSpectra.h:94 AliAnalysisTaskSEDStarSpectra.h:95 AliAnalysisTaskSEDStarSpectra.h:96 AliAnalysisTaskSEDStarSpectra.h:97 AliAnalysisTaskSEDStarSpectra.h:98 AliAnalysisTaskSEDStarSpectra.h:99 AliAnalysisTaskSEDStarSpectra.h:100 AliAnalysisTaskSEDStarSpectra.h:101 AliAnalysisTaskSEDStarSpectra.h:102 AliAnalysisTaskSEDStarSpectra.h:103 AliAnalysisTaskSEDStarSpectra.h:104 AliAnalysisTaskSEDStarSpectra.h:105