]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWGHF/vertexingHF/AliAnalysisTaskCheckHFMCProd.h
New task to do D2H QA checks on MC productions
[u/mrichter/AliRoot.git] / PWGHF / vertexingHF / AliAnalysisTaskCheckHFMCProd.h
CommitLineData
7b6a4dcd 1#ifndef ALIANALYSISTASKCHECKHFMCPROD
2#define ALIANALYSISTASKCHECKHFMCPROD
3
4/* Copyright(c) 1998-2012, ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice */
6
7/* $Id$ */
8
9//*************************************************************************
10// Class AliAnalysisTaskCheckHFMCProd
11// AliAnalysisTask to check MC production at ESD+Kine level
12//
13//
14// Author: F. Prino, prino@to.infn.it
15//
16//*************************************************************************
17
18class TList;
19class TNtuple;
20class TH1F;
21class TH2F;
22class TTree;
23class TString;
24class AliESDEvent;
25class AliESDfriend;
26class AliStack;
27
28#include "AliAnalysisTaskSE.h"
29
30class AliAnalysisTaskCheckHFMCProd : public AliAnalysisTaskSE {
31
32 public:
33
34 AliAnalysisTaskCheckHFMCProd();
35 virtual ~AliAnalysisTaskCheckHFMCProd();
36
37 virtual void UserExec(Option_t *option);
38 virtual void UserCreateOutputObjects();
39 virtual void Terminate(Option_t *option);
40
41 Int_t CheckD0Decay(Int_t labD0, AliStack* stack) const;
42 Int_t CheckDplusDecay(Int_t labDplus, AliStack* stack) const;
43 Int_t CheckDsDecay(Int_t labDs, AliStack* stack) const;
44 Int_t CheckDstarDecay(Int_t labDstar, AliStack* stack) const;
45 Int_t CheckLcDecay(Int_t labLc, AliStack* stack) const;
46
47 void SetReadMC(Bool_t opt) {fReadMC=opt;}
48 void SetPbPb() {fPbPb=kTRUE;}
49 void Setpp() {fPbPb=kFALSE;}
50
51 private:
52
53 AliAnalysisTaskCheckHFMCProd(const AliAnalysisTaskCheckHFMCProd &source);
54 AliAnalysisTaskCheckHFMCProd& operator=(const AliAnalysisTaskCheckHFMCProd &source);
55
56 TList* fOutput; //! list of output histos
57 TH1F* fHistoNEvents; //! histo with N of events
58
59 TH1F* fHistoTracks; //! histo with number of ESD tracks
60 TH1F* fHistoSelTracks; //! histo with number of TPC+ITS refit ESD tracks
61 TH1F* fHistoTracklets; //! histo with number of SPD tracklets
62
63 TH1F* fHistoSPD3DVtxX; //! histo with distr. of x coord. of SPD3D vertex
64 TH1F* fHistoSPD3DVtxY; //! histo with distr. of y coord. of SPD3D vertex
65 TH1F* fHistoSPD3DVtxZ; //! histo with distr. of z coord. of SPD3D vertex
66
67 TH1F* fHistoSPDZVtxX; //! histo with distr. of x coord. of SPDZ vertex
68 TH1F* fHistoSPDZVtxY; //! histo with distr. of y coord. of SPDZ vertex
69 TH1F* fHistoSPDZVtxZ; //! histo with distr. of z coord. of SPDZ vertex
70
71 TH1F* fHistoTRKVtxX; //! histo with distr. of x coord. of TRK vertex
72 TH1F* fHistoTRKVtxY; //! histo with distr. of y coord. of TRK vertex
73 TH1F* fHistoTRKVtxZ; //! histo with distr. of z coord. of TRK vertex
74
75 TH2F* fHistoNcharmed; //! histo of D mesons vs. dN/dy
76 TH2F* fHistoNbVsNc; //! histo of n. b quarks vs. n c. quarks
77
78 TH2F* fHistYPtPrompt[5]; //! histo of y vs. pt from prompt D0, D+, D*, Ds, Lc
79 TH2F* fHistYPtFeeddown[5]; //! histo of y vs. pt from feeddown D0, D+, D*, Ds, Lc
80 TH2F* fHistYPtD0byDecChannel[2]; //! histo of y vs. pt for D0->Kpi and D0->Kpipipi
81 TH2F* fHistYPtDplusbyDecChannel[2]; //! histo of y vs. pt for D+->Kpipi and D+->K0*pi
82 TH2F* fHistYPtDsbyDecChannel[2]; //! histo of y vs. pt for Ds->phipi and Ds->K0*K
83
84 Bool_t fPbPb;
85 Bool_t fReadMC;
86
87 ClassDef(AliAnalysisTaskCheckHFMCProd,1);
88};
89
90
91#endif