redoing of TPC vertex when flag is set
[u/mrichter/AliRoot.git] / PWG0 / AliRecoVsGeneCheck.h
CommitLineData
fe646d50 1//
2// Class to check the reconstruction versus the generated
3//
4// TODO:
5// - add a lot of histograms (much more on tracks vs mc particle)
6// - add documentation
7//
8
9
10#ifndef ROOT_TObject
11#include "TObject.h"
12#endif
13#ifndef ROOT_TTree
14#include "TTree.h"
15#endif
16#ifndef ROOT_TH3
17#include "TH3.h"
18#endif
19#ifndef ROOT_TParticle
20#include "TParticle.h"
21#endif
22
23#include "AliESDtrack.h"
24
61385583 25class AliRecoVsGeneCheck : public TObject
fe646d50 26{
27
28public:
29 AliRecoVsGeneCheck();
30
31 void Event(Double_t* vtx, Double_t* vtx_res, Double_t* mcvtx, Int_t n_part=-1);
32
33 void Track(AliESDtrack* esdTrack, TParticle* mcParticle);
34
35 void SetNPartAxisTitle(Char_t* t)
36 {fhVtxZResVsNPart ->SetXTitle(t);
37 fhVtxDzNormVsNPart->SetXTitle(t);
38 fhNPart->SetXTitle(t);}
39
40 void SaveHistograms(Char_t* dir="reco_vs_gene");
41
42protected:
43
44 // event specific histograms
45 TH2F* fhVtzZRecoVsMC; // z pos of vertex reco vs MC
46
47 TH1F* fhVtxZRes; // estimated z res. of vertex
48 TH2F* fhVtxZResVsZ; // estimated z res. of vertex vs z
49 TH2F* fhVtxZResVsNPart; // estimated z res. of vertex vs n part
50
51 TH1F* fhVtxDzNorm; // (z_mc - z_reco)/estimated res.
52 TH2F* fhVtxDzNormVsZ; // (z_mc - z_reco)/estimated res. vs vtx z
53 TH2F* fhVtxDzNormVsNPart; // (z_mc - z_reco)/estimated res. vs n part.
54
55 TH1F* fhVtxZMC; // vtz z mc
56 TH1F* fhVtxZReco; // vtx z reco
57
58 TH1F* fhNPart; // n charged primary particles
59
60 // track specific histograms
61 TH3F* fhDPtVsPtVsEta;
62 TH3F* fhDEtaVsPtVsEta;
63
61385583 64 private:
65 AliRecoVsGeneCheck(const AliRecoVsGeneCheck&);
66 AliRecoVsGeneCheck& operator=(const AliRecoVsGeneCheck&);
fe646d50 67
67e8aa2e 68 ClassDef(AliRecoVsGeneCheck, 1)
fe646d50 69};
70