BmnRoot
Loading...
Searching...
No Matches
CbmStsFindTracksQa.h
Go to the documentation of this file.
1// -------------------------------------------------------------------------
2// ----- CbmStsFindTracksQa header file -----
3// ----- Created 11/01/06 by V. Friese -----
4// -------------------------------------------------------------------------
5
13#ifndef CBMSTSTRACKFINDERQA_H
14#define CBMSTSTRACKFINDERQA_H 1
15
16
17#include <map>
18
19#include "TStopwatch.h"
20#include "TVector3.h"
21
22#include "FairTask.h"
23
24class TCanvas;
25class TClonesArray;
26class TH1;
27class TH1F;
28class TList;
30class CbmGeoStsPar;
31
32
33class CbmStsFindTracksQa : public FairTask
34{
35
36 public:
37
39 CbmStsFindTracksQa(Int_t iVerbose = 1);
40
41
47 CbmStsFindTracksQa(Int_t minHits, Double_t quota, Int_t iVerbose);
48
49
52
53
55 virtual void SetParContainers();
56
57
59 virtual InitStatus Init();
60
61
63 virtual InitStatus ReInit();
64
65
67 virtual void Exec(Option_t* opt);
68
69 private:
70
72 virtual void Finish();
73
75 InitStatus GetGeometry();
76
77
79 void CreateHistos();
80
81
83 void Reset();
84
85
87 void FillHitMap();
88
89
95 void FillMatchMap(Int_t& nRec, Int_t& nGhosts, Int_t& nClones);
96
97
103 void DivideHistos(TH1* histo1, TH1* histo2, TH1* histo3);
104
105
107 std::map<Int_t, Int_t> fHitMap;
108
109
111 std::map<Int_t, Int_t> fMatchMap;
112
113
115 std::map<Int_t, Double_t> fQualiMap;
116
117
119 TClonesArray* fMCTracks; // MCtrack
120 TClonesArray* fStsPoints; // StsPoints
121 TClonesArray* fStsHits; // StsHits
122 TClonesArray* fStsTracks; // StsTrack
123 TClonesArray* fMatches; // StsTrackMatch
124
125
127 FairGeoPassivePar* fPassGeo; // Passive geometry parameters
128 CbmGeoStsPar* fStsGeo; // STS geometry parameters
129 TVector3 fTargetPos; // Target centre position
130 Int_t fNStations; // Number of STS stations
131
132
134 Int_t fMinHits; // Minimal number of StsHits for considered MCTrack
135 Double_t fQuota; // True/all hits for track to be considered reconstructed
136
137
139 TH1F *fhMomAccAll, *fhMomRecAll, *fhMomEffAll; // eff. vs. p, all
140 TH1F *fhMomAccPrim, *fhMomRecPrim, *fhMomEffPrim; // eff. vs. p, vertex
141 TH1F *fhMomAccSec, *fhMomRecSec, *fhMomEffSec; // eff. vs. p, non-vertex
142 TH1F *fhNpAccAll, *fhNpRecAll, *fhNpEffAll; // eff. vs. np, all
143 TH1F *fhNpAccPrim, *fhNpRecPrim, *fhNpEffPrim; // eff. vs. np, vertex
144 TH1F *fhNpAccSec, *fhNpRecSec, *fhNpEffSec; // eff. vs. np, non-vertex
145 TH1F *fhZAccSec, *fhZRecSec, *fhZEffSec; // eff. vs. z, non-vertex
146 TH1F *fhNhClones, *fhNhGhosts; // # hits of clones and ghosts
147
148
150 TList* fHistoList;
151
152
154 Int_t fNAccAll, fNAccPrim, fNAccRef, fNAccSec;
155 Int_t fNRecAll, fNRecPrim, fNRecRef, fNRecSec;
156 Int_t fNGhosts, fNClones;
157 Int_t fNEvents;
158 Int_t fNEventsFailed;
159 Double_t fTime;
162 TStopwatch fTimer;
163
165 CbmStsFindTracksQa operator=(const CbmStsFindTracksQa&);
166
167 ClassDef(CbmStsFindTracksQa,1);
168
169};
170
171#endif
CbmStsFindTracksQa(Int_t iVerbose=1)
virtual InitStatus Init()
virtual ~CbmStsFindTracksQa()
virtual void SetParContainers()
CbmStsFindTracksQa(Int_t minHits, Double_t quota, Int_t iVerbose)
virtual void Exec(Option_t *opt)
virtual InitStatus ReInit()