Fixed AliCDBId version/subversion entries to match filenames
[u/mrichter/AliRoot.git] / PWG3 / vertexingHF / AliAnalysisTaskSED0Mass.h
CommitLineData
49061176 1#ifndef ALIANALYSISTASKSED0MASS_H
2#define ALIANALYSISTASKSED0MASS_H
3
4/* Copyright(c) 1998-2009, ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice */
6
7//*************************************************************************
8// Class AliAnalysisTaskSED0Mass
9// AliAnalysisTaskSE for D0 candidates invariant mass histogram
a41f6fad 10// and comparison to MC truth (kinematics stored in the AOD) and cut variables
11// distributions
49061176 12// Authors: A.Dainese, andrea.dainese@ln.infn.it
13// and C.Bianchin, chiara.bianchin@pd.infn.it
14//*************************************************************************
15
16#include <TROOT.h>
17#include <TSystem.h>
18#include <TNtuple.h>
19#include <TH1F.h>
20
21#include "AliAnalysisTaskSE.h"
ea0d8716 22#include "AliRDHFCutsD0toKpi.h"
23
4e61a020 24class AliAODEvent;
49061176 25
26class AliAnalysisTaskSED0Mass : public AliAnalysisTaskSE
27{
28 public:
29
30 AliAnalysisTaskSED0Mass();
ea0d8716 31 AliAnalysisTaskSED0Mass(const char *name,AliRDHFCutsD0toKpi* cuts);
49061176 32 virtual ~AliAnalysisTaskSED0Mass();
33
34
35 // Implementation of interface methods
36 virtual void UserCreateOutputObjects();
37 virtual void Init();
38 virtual void LocalInit() {Init();}
39 virtual void UserExec(Option_t *option);
40 virtual void Terminate(Option_t *option);
41
feb73eca 42 void SetArray(Int_t type=AliAnalysisTaskSED0Mass::kD0){fArray=type;}
feb73eca 43 enum{kD0,kLS};
ce39f0ac 44
45 void SetReadMC(Bool_t readMC=kFALSE){fReadMC=readMC;}
ea0d8716 46 void SetCutOnDistr(Bool_t cutondistr=kFALSE){fCutOnDistr=cutondistr;}
6b3e3c78 47 void SetUsePid4Distr(Bool_t usepid=kTRUE){fUsePid4Distr=usepid;}
48
49 Bool_t GetCutOnDistr() const {return fCutOnDistr;}
50 Bool_t GetUsePid4Distr() const {return fUsePid4Distr;}
49061176 51 private:
52
53 AliAnalysisTaskSED0Mass(const AliAnalysisTaskSED0Mass &source);
54 AliAnalysisTaskSED0Mass& operator=(const AliAnalysisTaskSED0Mass& source);
6b3e3c78 55 void FillMassHists(AliAODEvent *aodev,AliAODRecoDecayHF2Prong *part, TClonesArray *arrMC, AliRDHFCutsD0toKpi *cuts, TList *listout);
4e61a020 56 void FillVarHists(AliAODEvent *aodev,AliAODRecoDecayHF2Prong *part, TClonesArray *arrMC, AliRDHFCutsD0toKpi *cuts, TList *listout);
57 AliAODVertex* GetPrimaryVtxSkipped(AliAODEvent *aodev,AliAODRecoDecayHF2Prong *d);
58
6b3e3c78 59 TList *fOutputMass; //! list send on output slot 1
60 TList *fDistr; //! list send on output slot 2
61 TH1F *fNentries; //! histogram with number of events on output slot 3
62 TList *fChecks; //! list send on output slot 4
63 AliRDHFCutsD0toKpi *fCuts; // Cuts - sent to output slot 5
64 Int_t fArray; // can be D0 or Like Sign candidates
65 Bool_t fReadMC; // flag for MC array: kTRUE = read it, kFALSE = do not read it
66 Bool_t fCutOnDistr; // flag to decide if apply cut also on distributions: 0 no cuts, 1 looser cuts, 2 tighter cuts
67 Bool_t fUsePid4Distr; // flag to use the particle identification to fill the signal histograms of distributions. It has effect only with fReadMC=kFALSE
68 Int_t fNPtBins; // number of pt bins
69 Int_t* fTotPosPairs; //[fNPtBins]
70 Int_t* fTotNegPairs; //[fNPtBins]
71 Double_t fLsNormalization; // normalization
72
73
74 ClassDef(AliAnalysisTaskSED0Mass,8); // AliAnalysisTaskSE for the MC association of heavy-flavour decay candidates
49061176 75};
76
77#endif
87020237 78