AliPhysics  f6e6b3f (f6e6b3f)
AliAnalysisTaskSEXicPlus2XiPiPifromAODtracks.h
Go to the documentation of this file.
1 #ifndef ALIANALYSISTASKSEXICPLUS2XIPIPIFROMAODTRACKS_H
2 #define ALIANALYSISTASKSEXICPLUS2XIPIPIFROMAODTRACKS_H
3 
4 /**************************************************************************
5  * Copyright(c) 1998-2009, ALICE Experiment at CERN, All rights reserved. *
6  * *
7  * Author: The ALICE Off-line Project. *
8  * Contributors are mentioned in the code where appropriate. *
9  * *
10  * Permission to use, copy, modify and distribute this software and its *
11  * documentation strictly for non-commercial purposes is hereby granted *
12  * without fee, provided that the above copyright notice appears in all *
13  * copies and that both the copyright notice and this permission notice *
14  * appear in the supporting documentation. The authors make no claims *
15  * about the suitability of this software for any purpose. It is *
16  * provided "as is" without express or implied warranty. *
17  **************************************************************************/
18 
19 /* $Id$ */
20 
21 #include "TROOT.h"
22 #include "TSystem.h"
23 
24 #include "AliAnalysisTaskSE.h"
25 #include "AliAODEvent.h"
26 #include "AliPID.h"
28 
30 
31 class THnSparse;
32 class TH1F;
33 class TH2F;
34 class TClonesArray;
36 class AliAODPidHF;
37 class AliESDtrackCuts;
38 class AliESDVertex;
39 class AliAODMCParticle;
40 
42 {
43  public:
47 
49  virtual void UserCreateOutputObjects();
50  virtual void Init();
51  virtual void LocalInit() {Init();}
52  virtual void UserExec(Option_t *option);
53  virtual void Terminate(Option_t *option);
54 
55  void FillROOTObjects(AliAODRecoCascadeHF3Prong *xicobj, AliAODMCParticle *mcpart, AliAODMCParticle *mcdau1, AliAODMCParticle *mcdau2, AliAODMCParticle *mcdauxi, Int_t mcnused);
56  void MakeAnalysis(AliAODEvent *aod, TClonesArray *mcArray);
57 
58 
60  void SetMC(Bool_t theMCon) {fUseMCInfo = theMCon;}
61  Bool_t GetMC() const {return fUseMCInfo;}
62 
64  void SelectCascade( const AliVEvent *event,Int_t nCascades,Int_t &nSeleCasc, Bool_t *seleCascFlags);
65  void SelectTrack( const AliVEvent *event, Int_t trkEntries, Int_t &nSeleTrks,Bool_t *seleFlags);
66  Bool_t SelectLikeSign(AliAODTrack *trk1, AliAODTrack *trk2);
67  AliAODRecoCascadeHF3Prong* MakeCascadeHF3Prong(AliAODcascade *casc, AliAODTrack *trk1, AliAODTrack *trk2, AliAODEvent *aod, AliAODVertex *secvert, Double_t dispersion);
68 
69  private:
70 
73 
74  void DefineTreeVariables();
77 
78  AliAODVertex *CallPrimaryVertex(AliAODcascade *casc, AliAODTrack *trk1, AliAODTrack *trk2, AliAODEvent *evt);
79  AliAODVertex* PrimaryVertex(const TObjArray *trkArray,AliVEvent *event);
80  AliAODVertex* CallReconstructSecondaryVertex(AliAODTrack *trk1, AliAODTrack *trk2,Double_t &disp);
81  AliAODVertex* ReconstructSecondaryVertex(TObjArray *trkArray, Double_t &dispersion,Bool_t useTRefArray=kTRUE);
82 
87  TH1F *fCEvents;
88  TH1F *fHTrigger;
89  TH1F *fHCentrality;
101  AliAODVertex *fVtx1;
102  AliESDVertex *fV1;
106 
107  //--------------------- My histograms ------------------
108  THnSparse* fHistoXicMass;
109 
115 
116  TH1F* fHistoXiMass;
124  TH1F* fHistoXiPt;
125 
126  TH1F* fHistoPiPt;
127  TH1F* fHistoPid0;
131 
139 
142 };
144 #endif
145 
double Double_t
Definition: External.C:58
AliAODVertex * PrimaryVertex(const TObjArray *trkArray, AliVEvent *event)
void SelectTrack(const AliVEvent *event, Int_t trkEntries, Int_t &nSeleTrks, Bool_t *seleFlags)
Definition: External.C:236
char Char_t
Definition: External.C:18
AliAnalysisTaskSEXicPlus2XiPiPifromAODtracks & operator=(const AliAnalysisTaskSEXicPlus2XiPiPifromAODtracks &source)
AliAODVertex * CallReconstructSecondaryVertex(AliAODTrack *trk1, AliAODTrack *trk2, Double_t &disp)
TList * fOutputAll
! User output slot 3 // Analysis histos
void SelectCascade(const AliVEvent *event, Int_t nCascades, Int_t &nSeleCasc, Bool_t *seleCascFlags)
Bool_t fIsMB
Reconstruct primary vertex excluding candidate tracks.
AliAODVertex * ReconstructSecondaryVertex(TObjArray *trkArray, Double_t &dispersion, Bool_t useTRefArray=kTRUE)
virtual void UserCreateOutputObjects()
Implementation of interface methods.
int Int_t
Definition: External.C:63
float Float_t
Definition: External.C:68
AliAODVertex * CallPrimaryVertex(AliAODcascade *casc, AliAODTrack *trk1, AliAODTrack *trk2, AliAODEvent *evt)
TH1F * fHistoCascDcaPosToPrimVertex
! DCA of positive track to primary vertex
TH1F * fHistoCascDcaBachToPrimVertex
! DCA of bachelor track to primary vertex
AliAODRecoCascadeHF3Prong * MakeCascadeHF3Prong(AliAODcascade *casc, AliAODTrack *trk1, AliAODTrack *trk2, AliAODEvent *aod, AliAODVertex *secvert, Double_t dispersion)
AliRDHFCutsXicPlustoXiPiPifromAODtracks * fAnalCuts
histogram to check centrality
void FillROOTObjects(AliAODRecoCascadeHF3Prong *xicobj, AliAODMCParticle *mcpart, AliAODMCParticle *mcdau1, AliAODMCParticle *mcdau2, AliAODMCParticle *mcdauxi, Int_t mcnused)
TH1F * fHistoCascCosPAXiPrim
! Cosine pointing angle of Xi to primary vertex
const char Option_t
Definition: External.C:48
bool Bool_t
Definition: External.C:53
TH1F * fHistoCascDcaNegToPrimVertex
! DCA of negative track to primary vertex
TTree * fVariablesTree
flag to decide whether to write the candidate variables on a tree variables