BmnRoot 26.10.0-18-g4e3414f9
Software framework of the BM@N experiment
Loading...
Searching...
No Matches
CbmL1Track.h
Go to the documentation of this file.
1/*
2 *====================================================================
3 *
4 * CBM Level 1 Reconstruction
5 *
6 * Authors: I.Kisel, S.Gorbunov
7 *
8 * e-mail : ikisel@kip.uni-heidelberg.de
9 *
10 *====================================================================
11 *
12 * L1 track class
13 *
14 *====================================================================
15 */
16
17#ifndef CbmL1Track_H
18#define CbmL1Track_H
19
20#include "CbmL1MCTrack.h"
21#include "CbmL1TrackPar.h"
22
23#include <map>
24#include <vector>
25using std::map;
26using std::vector;
27
28class L1Triplet;
29class L1StsHit;
30class CbmL1MCTrack;
31
33{
34 public:
36 : StsHits()
37 , nStations(0)
38 , hitMap()
39 , mcTracks()
40 , maxPurity(-1)
41 {}
42
43 int GetNOfHits() { return StsHits.size(); }
44
45 void AddMCTrack(CbmL1MCTrack* mcTr) { mcTracks.push_back(mcTr); }
46 vector<CbmL1MCTrack*>& GetMCTracks() { return mcTracks; }
48 int GetNMCTracks() { return mcTracks.size(); }
49 bool IsGhost() { return !(mcTracks.size()); }
50
51 void SetMaxPurity(double maxPurity_) { maxPurity = maxPurity_; }
52 double GetMaxPurity() { return maxPurity; }
53
54 static bool compareChi2(const CbmL1Track& a, const CbmL1Track& b) { return (a.chi2 < b.chi2); }
55 static bool comparePChi2(const CbmL1Track* a, const CbmL1Track* b) { return (a->chi2 < b->chi2); }
56
57 double TLast[6], CLast[15];
58 vector<int> StsHits;
60
61 map<int, int> hitMap; // how many hits from each mcTrack belong to current recoTrack
62 private:
63 // next members filled and used in Performance
64 vector<CbmL1MCTrack*> mcTracks; // array of assosiated recoTracks. Should be only one.
65 double maxPurity; // maximum persent of hits, which belong to one mcTrack.
66};
67
68#endif
double GetMaxPurity()
Definition CbmL1Track.h:52
double maxPurity
Definition CbmL1Track.h:65
int nStations
Definition CbmL1Track.h:59
CbmL1MCTrack * GetMCTrack()
Definition CbmL1Track.h:47
map< int, int > hitMap
Definition CbmL1Track.h:61
void AddMCTrack(CbmL1MCTrack *mcTr)
Definition CbmL1Track.h:45
vector< CbmL1MCTrack * > mcTracks
Definition CbmL1Track.h:64
static bool comparePChi2(const CbmL1Track *a, const CbmL1Track *b)
Definition CbmL1Track.h:55
int GetNMCTracks()
Definition CbmL1Track.h:48
void SetMaxPurity(double maxPurity_)
Definition CbmL1Track.h:51
double TLast[6]
Definition CbmL1Track.h:57
static bool compareChi2(const CbmL1Track &a, const CbmL1Track &b)
Definition CbmL1Track.h:54
vector< int > StsHits
Definition CbmL1Track.h:58
bool IsGhost()
Definition CbmL1Track.h:49
double CLast[15]
Definition CbmL1Track.h:57
int GetNOfHits()
Number of Degrees of Freedom after fit.
Definition CbmL1Track.h:43
vector< CbmL1MCTrack * > & GetMCTracks()
Definition CbmL1Track.h:46