FairRoot/PandaRoot
PndFTSParticlePerformanceBase.h
Go to the documentation of this file.
1 //-*- Mode: C++ -*-
2 // $Id: PndFTSParticlePerformanceBase.h,v 1.10 2010/09/01 10:38:27 ikulakov Exp $
3 // ************************************************************************
4 // This file is property of and copyright by the ALICE HLT Project *
5 // ALICE Experiment at CERN, All rights reserved. *
6 // See cxx source for full Copyright notice *
7 // *
8 //*************************************************************************
9 #ifdef DO_TPCCATRACKER_EFF_PERFORMANCE
10 
11 #ifndef PNDFTSParticlePERFORMANCEBASE_H
12 #define PNDFTSParticlePERFORMANCEBASE_H
13 
14 #include "PndFTSCounters.h"
15 
16 #include "PndFTSPerformanceBase.h"
17 
18 #include "PndFTSCADef.h"
19 #include "PndFTSArray.h"
20 #include "PndFTSCAMCTrack.h"
21 #include "PndFTSCAMCPoint.h"
22 #include <fstream>
23 #include <cstdio>
24 #include <map>
25 
26 #include "KFPartEfficiencies.h"
27 
28 #include <string>
29 using std::string;
30 
31 #include <iostream>
32 using std::ostream;
33 using std::istream;
34 
35 class TObject;
36 class TParticle;
37 class PndFTSCAMCPoint;
38 class PndFTSCAGBTracker;
39 class TDirectory;
40 class TH1;
41 class TH1F;
42 class TH2F;
43 class TFile;
44 
45 class KFParticle;
46 
50 class PndFTSParticlePerformanceBase: public PndFTSPerformanceBase
51 {
52  public:
53 
54  PndFTSParticlePerformanceBase();
55  virtual ~PndFTSParticlePerformanceBase() { };
56 
58  virtual void CreateHistos(string histoDir = "", TFile* outFile = 0);
59 
60  protected:
61 
62  virtual void FillHistos();
63 
64 
66  enum{
67  NTrackPulls = 12,
68  NTrackPullsAtProdVertex = 12,
69  NVertexPulls = 6
70  };
71 
72  //for KFParticleFinder
73 
74  vector<KFParticle> *fParticles;
75  KFParticle *fPV;
76 // Arrays of points, tracks, etc
77 
78 // Names of files
79  TString outfileName;
80  TDirectory* histodir;
81 
82 // efficiencies
83  KFPartEfficiencies fParteff;
84  int fNEvents;
85 
86 //histos
87  static const int nFitQA = 16;
88  TH1F *hFitDaughtersQA[KFPartEfficiencies::nParticles][nFitQA];
89  TH1F *hFitQA[KFPartEfficiencies::nParticles][nFitQA];
90 
91  static const int nHistoPartParam = 12;
92  TH1F *hPartParam[KFPartEfficiencies::nParticles][nHistoPartParam]; // mass, p, pt, Y, decay length, c*tau, chi/ndf, prob, theta, phi, z
93  TH1F *hPartParamBG[KFPartEfficiencies::nParticles][nHistoPartParam];
94  TH1F *hPartParamGhost[KFPartEfficiencies::nParticles][nHistoPartParam];
95 // TH1F *hPartParamCorrBG[KFPartEfficiencies::nParticles][nHistoPartParam];
96  TH1F *hPartParamSignal[KFPartEfficiencies::nParticles][nHistoPartParam];
97  static const int nHistoPartParamQA = 3;
98  TH1F *hPartParamQA[KFPartEfficiencies::nParticles][nHistoPartParamQA*2]; // residuals and pulls of these parameters
99 
100  static const int nHistoPartParam2D = 1;
101  TH2F *hPartParam2D[KFPartEfficiencies::nParticles][nHistoPartParam2D]; // y-pt,
102  TH2F *hPartParam2DBG[KFPartEfficiencies::nParticles][nHistoPartParam2D];
103  TH2F *hPartParam2DGhost[KFPartEfficiencies::nParticles][nHistoPartParam2D];
104 // TH2F *hPartParam2DCorrBG[KFPartEfficiencies::nParticles][nHistoPartParam2D];
105  TH2F *hPartParam2DSignal[KFPartEfficiencies::nParticles][nHistoPartParam2D];
106 
107  static const int nHistosPV = 6;
108  TH1F *hPVFitQa[nHistosPV];
109 
110  static const int nHistosTP = KFPartEfficiencies::nParticles + 1;
111  TH1F *hTrackParameters[nHistosTP];
112 };
113 
114 #endif
115 #endif //DO_TPCCATRACKER_EFF_PERFORMANCE
TString outFile
Definition: hit_dirc.C:17
Int_t fParticles
Definition: run_full.C:23
basic_ostream< char, char_traits< char > > ostream
basic_istream< char, char_traits< char > > istream
static const int nParticles