1 #ifndef ALIANALYSISTASKSED0MASS_H
2 #define ALIANALYSISTASKSED0MASS_H
4 /* Copyright(c) 1998-2009, ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice */
7 //*************************************************************************
8 // Class AliAnalysisTaskSED0Mass
9 // AliAnalysisTaskSE for D0 candidates invariant mass histogram
10 // and comparison to MC truth (kinematics stored in the AOD) and cut variables
12 // Authors: A.Dainese, andrea.dainese@ln.infn.it
13 // and C.Bianchin, chiara.bianchin@pd.infn.it
14 //*************************************************************************
21 #include "AliAnalysisTaskSE.h"
22 #include "AliAnalysisVertexingHF.h"
24 class AliAnalysisTaskSED0Mass : public AliAnalysisTaskSE
28 AliAnalysisTaskSED0Mass();
29 AliAnalysisTaskSED0Mass(const char *name);
30 virtual ~AliAnalysisTaskSED0Mass();
33 // Implementation of interface methods
34 virtual void UserCreateOutputObjects();
36 virtual void LocalInit() {Init();}
37 virtual void UserExec(Option_t *option);
38 virtual void Terminate(Option_t *option);
40 void SetArray(Int_t type=AliAnalysisTaskSED0Mass::kD0){fArray=type;}
43 void SetReadMC(Bool_t readMC=kFALSE){fReadMC=readMC;}
44 void SetCutOnDistr(Int_t cutondistr=0){fCutOnDistr=cutondistr;}
48 AliAnalysisTaskSED0Mass(const AliAnalysisTaskSED0Mass &source);
49 AliAnalysisTaskSED0Mass& operator=(const AliAnalysisTaskSED0Mass& source);
50 void FillMassHists(Int_t ptbin, AliAODRecoDecayHF2Prong *part, TClonesArray *arrMC, AliAnalysisVertexingHF *vhf, TList *listout);
51 void FillVarHists(Int_t ptbin, AliAODRecoDecayHF2Prong *part, TClonesArray *arrMC, AliAnalysisVertexingHF *vhf, TList *listout);
52 TList *fOutputPPR; //! list send on output slot 1
53 TList *fOutputmycuts; //! list send on output slot 2
54 TH1F *fNentries; //! histogram with number of events on output slot 3
55 TList *fDistr; //! list send on output slot 4
56 TList *fChecks; //! list send on output slot 5
57 AliAnalysisVertexingHF *fVHFPPR; // Vertexer heavy flavour (used to pass the cuts)
58 AliAnalysisVertexingHF *fVHFmycuts; // Vertexer heavy flavour (used to pass the cuts)
59 Int_t fArray; // can be D0 or Like Sign candidates
60 Bool_t fReadMC; // flag for MC array: kTRUE = read it, kFALSE = do not read it
61 Int_t fCutOnDistr; // Flag to decide if apply cut also on distributions: 0 no cuts, 1 looser cuts, 2 tighter cuts
63 Int_t fTotPosPairs[5]; //
64 Int_t fTotNegPairs[5]; //
65 Double_t fLsNormalization; // normalization
68 ClassDef(AliAnalysisTaskSED0Mass,6); // AliAnalysisTaskSE for the MC association of heavy-flavour decay candidates