AliPhysics  3b4a69f (3b4a69f)
AliAnalysisTaskSED0MassCutVarFDSub.h
Go to the documentation of this file.
1 #ifndef ALIANALYSISTASKSED0MASSCUTVARFDSUB_H
2 #define ALIANALYSISTASKSED0MASSCUTVARFDSUB_H
3 
4 /* Copyright(c) 1998-2009, ALICE Experiment at CERN, All rights reserved. *
5  * See cxx source for full Copyright notice */
6 
16 
17 #include "THnSparse.h"
18 
19 #include "AliAnalysisTaskSE.h"
20 #include "AliRDHFCutsD0toKpi.h"
21 
24 class AliAODEvent;
25 class AliAODMCHeader;
26 class AliAODMCParticle;
27 
29 {
30  public:
31 
35 
36 
38  virtual void UserCreateOutputObjects();
39  virtual void Init();
40  virtual void LocalInit() {Init();}
41  virtual void UserExec(Option_t *option);
42  virtual void Terminate(Option_t *option);
43 
45  enum{kD0,kLS};
46 
47  void SetReadMC(Bool_t readMC=kFALSE){fReadMC=readMC;}
48  void SetCutOnDistr(Bool_t cutondistr=kFALSE){fCutOnDistr=cutondistr;}
49  void SetUsePid4Distr(Bool_t usepid=kTRUE){fUsePid4Distr=usepid;}
50  void SetFillOnlyD0D0bar(Int_t flagfill){fFillOnlyD0D0bar=flagfill;}
52  void SetFillPtHistos(Bool_t flag) {fFillPtHist=flag;}
53  void SetFillYHistos(Bool_t flag) {fFillYHist=flag;}
55  void SetSystem(Int_t sys){fSys=sys; if(fSys==1) SetFillVarHists(kFALSE);}
59  void SetDrawDetSignal(Bool_t flag) { fDrawDetSignal=flag; }
60  void SetPIDCheck(Bool_t flag) { fPIDCheck=flag; }
61 
62 
63  Bool_t GetCutOnDistr() const {return fCutOnDistr;}
68  Bool_t GetFillYHistos() const {return fFillYHist;}
70  Int_t GetSystem() const {return fSys;}
75  Bool_t GetPIDCheck() const {return fPIDCheck;}
76 
77  private:
78 
81  void DrawDetSignal(AliAODRecoDecayHF2Prong *part, TList *ListDetSignal);
82 
83  void FillMassHists(AliAODRecoDecayHF2Prong *part, TClonesArray *arrMC, AliAODMCHeader *mcHeader, AliRDHFCutsD0toKpi *cuts, TList *listout);
84  void FillVarHists(AliAODEvent *aodev,AliAODRecoDecayHF2Prong *part, TClonesArray *arrMC, AliRDHFCutsD0toKpi *cuts, TList *listout);
85  AliAODVertex* GetPrimaryVtxSkipped(AliAODEvent *aodev);
87  Int_t CheckOrigin(TClonesArray* arrayMC, AliAODMCParticle *mcPartCandidate) const;
88  Float_t GetTrueImpactParameter(AliAODMCHeader *mcHeader, TClonesArray* arrayMC, AliAODMCParticle *partD0) const ;
89 
94  TH1F *fNentries;
95  AliRDHFCutsD0toKpi *fCuts; // Cuts - sent to output slot 4
96  THnSparseF *fHistMassPtImpParTC[5];
114 
122  THnSparseF *fhsparsecutvar;
123 
126 };
128 
129 #endif
THnSparseF * fhsparsecutvar
object for cut variation study
AliNormalizationCounter * fCounter
flag to use the particle identification to fill the signal histograms of distributions. It has effect only with fReadMC=kFALSE
double Double_t
Definition: External.C:58
virtual void UserCreateOutputObjects()
Implementation of interface methods.
Bool_t fUseSelectionBit
flag to fill Pt and Impact Parameter Histograms
Float_t GetTrueImpactParameter(AliAODMCHeader *mcHeader, TClonesArray *arrayMC, AliAODMCParticle *partD0) const
Bool_t fUsePid4Distr
flag to decide if apply cut also on distributions: 0 no cuts, 1 looser cuts, 2 tighter cuts ...
Class for storing and handling D0 meson candidates properties // for estimating the feed-down fractio...
THnSparseF * fHistMassPtImpParTC[5]
! histograms for impact paramter studies
AliAODVertex * GetPrimaryVtxSkipped(AliAODEvent *aodev)
Bool_t fIsRejectSDDClusters
fSys=0 -> p-p; fSys=1 ->PbPb (in this case fFillVarHists=kFALSE by default: set it to kTRUE after if ...
Bool_t fDrawDetSignal
flag to decide whether to fill "PID = x" bins in fNentrie
TList * fOutputMassY
! list send on output slot 9
Int_t fIsSelectedCandidate
keeps the daughter tracks
void FillMassHists(AliAODRecoDecayHF2Prong *part, TClonesArray *arrMC, AliAODMCHeader *mcHeader, AliRDHFCutsD0toKpi *cuts, TList *listout)
Int_t fSys
flag to enable filling variable histos
int Int_t
Definition: External.C:63
void DrawDetSignal(AliAODRecoDecayHF2Prong *part, TList *ListDetSignal)
float Float_t
Definition: External.C:68
TList * fDetSignal
flag to decide whether to draw the TPC dE/dx and TOF signal before/after PID
Bool_t fWriteVariableTree
flag to check or not the selection bit
TList * fOutputMass
! list send on output slot 1
Bool_t fFillYHist
flag to fill Pt and Impact Parameter Histograms
TH1F * fNentries
! histogram with number of events on output slot 3
TTree * fVariablesTree
flag to decide whether to write the candidate variables on a tree variables
Int_t CheckOrigin(TClonesArray *arrayMC, AliAODMCParticle *mcPartCandidate) const
Bool_t fFillPtHist
flag to reject events with SDD clusters
Bool_t fCutOnDistr
flag for MC array: kTRUE = read it, kFALSE = do not read it
void SetArray(Int_t type=AliAnalysisTaskSED0MassCutVarFDSub::kD0)
Double_t * fCandidateVariables
! variables to be written to the tree
Bool_t fReadMC
can be D0 or Like Sign candidates
TList * fOutputMassPt
! list send on output slot 6
AliAnalysisTaskSED0MassCutVarFDSub & operator=(const AliAnalysisTaskSED0MassCutVarFDSub &source)
TObjArray fDaughterTracks
flag to fill mass histogram with D0/D0bar only (0 = fill with both, 1 = fill with D0 only...
const char Option_t
Definition: External.C:48
bool Bool_t
Definition: External.C:53
TList * fDistr
! list send on output slot 2
void FillVarHists(AliAODEvent *aodev, AliAODRecoDecayHF2Prong *part, TClonesArray *arrMC, AliRDHFCutsD0toKpi *cuts, TList *listout)