]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWGHF/vertexingHF/AliAnalysisTaskCheckHFMCProd.h
consolidate zero-length arrays (aka struct hack)
[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;
7c569cb6 22class TH3F;
7b6a4dcd 23class TTree;
24class TString;
25class AliESDEvent;
26class AliESDfriend;
27class AliStack;
7c569cb6 28class AliESDtrackCuts;
7b6a4dcd 29
30#include "AliAnalysisTaskSE.h"
31
32class AliAnalysisTaskCheckHFMCProd : public AliAnalysisTaskSE {
33
34 public:
35
36 AliAnalysisTaskCheckHFMCProd();
37 virtual ~AliAnalysisTaskCheckHFMCProd();
38
39 virtual void UserExec(Option_t *option);
40 virtual void UserCreateOutputObjects();
41 virtual void Terminate(Option_t *option);
42
43 Int_t CheckD0Decay(Int_t labD0, AliStack* stack) const;
44 Int_t CheckDplusDecay(Int_t labDplus, AliStack* stack) const;
45 Int_t CheckDsDecay(Int_t labDs, AliStack* stack) const;
46 Int_t CheckDstarDecay(Int_t labDstar, AliStack* stack) const;
47 Int_t CheckLcDecay(Int_t labLc, AliStack* stack) const;
fcedd2b1 48 void SetSearchUpToQuark(Bool_t opt){fSearchUpToQuark=opt;};
49
7b6a4dcd 50
51 void SetReadMC(Bool_t opt) {fReadMC=opt;}
a35b52e8 52 void SetpPb() {fSystem=2;}
53 void SetPbPb() {fSystem=1;}
54 void Setpp() {fSystem=0;}
7b6a4dcd 55
56 private:
57
58 AliAnalysisTaskCheckHFMCProd(const AliAnalysisTaskCheckHFMCProd &source);
59 AliAnalysisTaskCheckHFMCProd& operator=(const AliAnalysisTaskCheckHFMCProd &source);
60
61 TList* fOutput; //! list of output histos
62 TH1F* fHistoNEvents; //! histo with N of events
a35b52e8 63
7c3336d1 64 TH1F* fHistoPhysPrim; //! histo of n. of physical primaries in |eta|<0.5
65 TH1F* fHistoTracks; //! histo with number of ESD tracks
66 TH1F* fHistoSelTracks; //! histo with number of TPC+ITS refit ESD tracks
67 TH1F* fHistoTracklets; //! histo with number of SPD tracklets
68 TH1F* fHistoTrackletsEta1;//! histo with number of SPD tracklets in |eta|<1
69 TH1F* fHistoPtPhysPrim; //! histo of pt distribution of phys primaries
70 TH1F* fHistoEtaPhysPrim; //! histo of eta distribution of physical primaries
7b6a4dcd 71
72 TH1F* fHistoSPD3DVtxX; //! histo with distr. of x coord. of SPD3D vertex
73 TH1F* fHistoSPD3DVtxY; //! histo with distr. of y coord. of SPD3D vertex
74 TH1F* fHistoSPD3DVtxZ; //! histo with distr. of z coord. of SPD3D vertex
75
76 TH1F* fHistoSPDZVtxX; //! histo with distr. of x coord. of SPDZ vertex
77 TH1F* fHistoSPDZVtxY; //! histo with distr. of y coord. of SPDZ vertex
78 TH1F* fHistoSPDZVtxZ; //! histo with distr. of z coord. of SPDZ vertex
79
80 TH1F* fHistoTRKVtxX; //! histo with distr. of x coord. of TRK vertex
81 TH1F* fHistoTRKVtxY; //! histo with distr. of y coord. of TRK vertex
82 TH1F* fHistoTRKVtxZ; //! histo with distr. of z coord. of TRK vertex
83
84 TH2F* fHistoNcharmed; //! histo of D mesons vs. dN/dy
85 TH2F* fHistoNbVsNc; //! histo of n. b quarks vs. n c. quarks
86
a35b52e8 87 TH2F* fHistBYPtAllDecay[5]; //! histo of y vs. pt from prompt B0, B+, B*, Bs, Lb
5472ae5b 88 TH2F* fHistYPtAllDecay[5]; //! histo of y vs. pt from prompt D0, D+, D*, Ds, Lc, no selection on decay channel
89 TH2F* fHistYPtPromptAllDecay[5]; //! histo of y vs. pt from prompt D0, D+, D*, Ds, Lc, no selection on decay channel
90 TH2F* fHistYPtFeeddownAllDecay[5]; //! histo of y vs. pt from prompt D0, D+, D*, Ds, Lc, no selection on decay channel
7b6a4dcd 91 TH2F* fHistYPtPrompt[5]; //! histo of y vs. pt from prompt D0, D+, D*, Ds, Lc
92 TH2F* fHistYPtFeeddown[5]; //! histo of y vs. pt from feeddown D0, D+, D*, Ds, Lc
93 TH2F* fHistYPtD0byDecChannel[2]; //! histo of y vs. pt for D0->Kpi and D0->Kpipipi
94 TH2F* fHistYPtDplusbyDecChannel[2]; //! histo of y vs. pt for D+->Kpipi and D+->K0*pi
95 TH2F* fHistYPtDsbyDecChannel[2]; //! histo of y vs. pt for Ds->phipi and Ds->K0*K
fcedd2b1 96 TH1F* fHistOriginPrompt; //! histo of D production point (prompt)
97 TH1F* fHistOriginFeeddown; //! histo of D production point (feeddown)
c833b704 98 TH1F* fHistMotherID; //! histo of mother ID
a916dfdb 99 TH1F* fHistDSpecies; //! histo of D hadron species
100 TH1F* fHistBSpecies; //! histo of B hadron species
c7112a2a 101 TH2F* fHistNcollHFtype; //! histo of B hadron species
7c569cb6 102 TH3F* fHistEtaPhiPtGenEle; //! histo of generated electrons
103 TH3F* fHistEtaPhiPtGenPi; //! histo of generated pions
104 TH3F* fHistEtaPhiPtGenK; //! histo of generated kaons
105 TH3F* fHistEtaPhiPtGenPro; //! histo of generated protons
106 TH3F* fHistEtaPhiPtRecEle; //! histo of generated electrons
107 TH3F* fHistEtaPhiPtRecPi; //! histo of generated pions
108 TH3F* fHistEtaPhiPtRecK; //! histo of generated kaons
109 TH3F* fHistEtaPhiPtRecPro; //! histo of generated protons
fcedd2b1 110 Bool_t fSearchUpToQuark; // c/b separation using quarks
111 Int_t fSystem; // 0=pp, 1=PbPb, 2=pPb
7c569cb6 112 AliESDtrackCuts *fESDtrackCuts; // track selection
7b6a4dcd 113 Bool_t fReadMC;
114
7c569cb6 115 ClassDef(AliAnalysisTaskCheckHFMCProd,6);
7b6a4dcd 116};
117
118
119#endif