ATLAS Offline Software
Loading...
Searching...
No Matches
CombinedFitTag.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef MUONCOMBINEDEVENT_COMBINEDFITTAG_H
6#define MUONCOMBINEDEVENT_COMBINEDFITTAG_H
7
8#include <vector>
9
14
15namespace Trk {
16 class Track;
17}
18
19namespace MuonCombined {
20
21 class MuonCandidate;
22
24 class CombinedFitTag : public TagBase {
25 public:
30 CombinedFitTag(xAOD::Muon::Author author, const MuonCandidate& muonCandidate, const Trk::TrackScore& score);
31
34
36 const Trk::Track* combinedTrack() const;
37
38 /*ElementLink to combined track*/
40
43
45 const MuonCandidate& muonCandidate() const;
46
49
50 /* ElementLink to ME track*/
52
55
57 void innerMatch(double chi2, int dof, double prob);
58
60 double matchChi2() const;
61
63 int matchDoF() const;
64
66 double matchProb() const;
67
69 void fieldIntegral(const Rec::FieldIntegral& fieldI);
70
72 const Rec::FieldIntegral& fieldIntegral() const;
73
75 void momentumBalanceSignificance(double m);
76
78 double momentumBalanceSignificance() const;
79
81 const Trk::TrackScore& trackScore() const;
82
84 std::string name() const override;
85
87 std::string toString() const override;
88
90 const Trk::Track* primaryTrack() const override;
91
93 std::vector<const Muon::MuonSegment*> associatedSegments() const override;
94
96 bool isCommissioning() const override;
97
98 private:
102
105 ElementLink<TrackCollection> m_combLink{}; // link to combined track
108
110
111 double m_matchChi2{0.};
113 double m_matchProb{0.};
115 };
116
117 inline bool operator<(const CombinedFitTag& t1, const CombinedFitTag& t2) { return t1.trackScore() < t2.trackScore(); }
118} // namespace MuonCombined
119
120#endif
TagBase implementation for a combined fit.
const Trk::Track * updatedExtrapolatedTrack() const
access update extrapolated track, returns zero if none are available
int matchDoF() const
access the inner matching DoF
void setUpdatedExtrapolatedTrackLink(const ElementLink< TrackCollection > &MELink)
set update extrapolated track ElementLink
ElementLink< TrackCollection > combinedTrackLink() const
void setCombinedTrackLink(const ElementLink< TrackCollection > &combLink)
set combined track ElementLink
const Trk::TrackScore & trackScore() const
get track score
const MuonCandidate * m_muonCandidate
data content
ElementLink< TrackCollection > m_combLink
MuonCandidate.
double momentumBalanceSignificance() const
get momentum balance significance
const Rec::FieldIntegral & fieldIntegral() const
get field integral measurements
std::string toString() const override
print content to string
CombinedFitTag & operator=(const CombinedFitTag &)=delete
ElementLink< TrackCollection > updatedExtrapolatedTrackLink() const
ElementLink< TrackCollection > m_MELink
void innerMatch(double chi2, int dof, double prob)
store inner match quality info
const MuonCandidate & muonCandidate() const
access to MuonCandidate
Rec::FieldIntegral m_fieldIntegral
std::vector< const Muon::MuonSegment * > associatedSegments() const override
access to associated segments, empty vector if non available
CombinedFitTag(const CombinedFitTag &)=delete
block copy and assignment
const Trk::Track * primaryTrack() const override
access to primary muon system track, zero if non available
const Trk::Track * combinedTrack() const
access combined track
double matchProb() const
access the inner matching probability
CombinedFitTag(xAOD::Muon::Author author, const MuonCandidate &muonCandidate, const Trk::TrackScore &score)
Constructor taking a MuonCandidate as input Users should ensure that the life time of the MuonCandida...
std::string name() const override
name string
double matchChi2() const
access the inner matching chi2
bool isCommissioning() const override
Returns whether the muon belongs to the commissioning chain.
Author author() const
access to Muon Author
Definition TagBase.h:58
TagBase(Author author, Type type)
protected base class to be called by concrete implementations
Definition TagBase.h:80
lightweight return data-object for field integral track query
double chi2(TH1 *h0, TH1 *h1)
The MuonTagToSegMap is an auxillary construct that links the MuonSegments associated with a combined ...
bool operator<(const CombinedFitTag &t1, const CombinedFitTag &t2)
Ensure that the ATLAS eigen extensions are properly loaded.
float TrackScore
Definition TrackScore.h:10