ATLAS Offline Software
Loading...
Searching...
No Matches
TileTrackMuFeature.cxx
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2026 CERN for the benefit of the ATLAS collaboration
3*/
4
5
7
8
9
11namespace{
12 constexpr double DELTA = 0.001;
13}
14
15
16
31
32
34 : m_PtTR_Trk(muon_feature.m_PtTR_Trk)
35 , m_EtaTR_Trk(muon_feature.m_EtaTR_Trk)
36 , m_PhiTR_Trk(muon_feature.m_PhiTR_Trk)
37 , m_Typ_IDTrk(muon_feature.m_Typ_IDTrk)
38 , m_TileMuOutput(muon_feature.m_TileMuOutput)
39 , m_IDScanOutput(muon_feature.m_IDScanOutput)
40{
41}
42
45{
46 if (this != &muon_feature) {
47 m_PtTR_Trk = muon_feature.m_PtTR_Trk;
48 m_EtaTR_Trk = muon_feature.m_EtaTR_Trk;
49 m_PhiTR_Trk = muon_feature.m_PhiTR_Trk;
50 m_Typ_IDTrk = muon_feature.m_Typ_IDTrk;
51 m_TileMuOutput = std::move(muon_feature.m_TileMuOutput);
52 m_IDScanOutput = std::move(muon_feature.m_IDScanOutput);
53 }
54 return *this;
55}
56
57
61 if (this != &muon_feature) {
62 m_PtTR_Trk = muon_feature.m_PtTR_Trk;
63 m_EtaTR_Trk = muon_feature.m_EtaTR_Trk;
64 m_PhiTR_Trk = muon_feature.m_PhiTR_Trk;
65 m_Typ_IDTrk = muon_feature.m_Typ_IDTrk;
66 m_TileMuOutput = muon_feature.m_TileMuOutput;
67 m_IDScanOutput = muon_feature.m_IDScanOutput;
68 }
69 return *this;
70}
71
73
74std::string str ( const TileTrackMuFeature& d )
75{
76 std::stringstream ss;
77
78 ss << "EtaTR_Trk: " << d.EtaTR_Trk()
79 << "; PhiTR_Trk: " << d.PhiTR_Trk()
80 << "; PtTR_Trk: " << d.PtTR_Trk();
81
82 return ss.str();
83}
84
85const TileMuFeature*
87
88const TrigInDetTrack*
98MsgStream& operator<< ( MsgStream& m, const TileTrackMuFeature& d )
99{
100 return ( m << str( d ) );
101}
102
104{
105 if( std::abs( a.EtaTR_Trk() - b.EtaTR_Trk() ) > DELTA ) return false;
106 if( std::abs( a.PhiTR_Trk() - b.PhiTR_Trk() ) > DELTA ) return false;
107 if( std::abs( a.PtTR_Trk() - b.PtTR_Trk() ) > DELTA ) return false;
108
109 return true;
110}
111
112void diff( const TileTrackMuFeature& a, const TileTrackMuFeature& b, std::map< std::string, double >& variableChange )
113{
114 if( std::abs( a.EtaTR_Trk() - b.EtaTR_Trk() ) > DELTA ) {
115 variableChange[ "EtaTR_Trk" ] = a.EtaTR_Trk() - b.EtaTR_Trk();
116 }
117 if( std::abs( a.PhiTR_Trk() - b.PhiTR_Trk() ) > DELTA ) {
118 variableChange[ "PhiTR_Trk" ] = a.PhiTR_Trk() - b.PhiTR_Trk();
119 }
120 if( std::abs( a.PtTR_Trk() - b.PtTR_Trk() ) > DELTA ) {
121 variableChange[ "PtTR_Trk" ] = a.PtTR_Trk() - b.PtTR_Trk();
122 }
123
124 return;
125}
static const double DELTA
static Double_t a
static Double_t ss
MsgStream & operator<<(MsgStream &m, const TileTrackMuFeature &d)
Helper operator for printing the object.
void diff(const TileTrackMuFeature &a, const TileTrackMuFeature &b, std::map< std::string, double > &variableChange)
Comparison with feedback.
bool operator==(const TileTrackMuFeature &a, const TileTrackMuFeature &b)
Operator comparing two CombinedMuonFeature objects for equality.
P4PtEtaPhiMBase is a base class for classes with 4-momentum behavior, for which pt,...
const ElementLink< TileMuFeatureContainer > & TileMuLink() const
const TrigInDetTrack * IDScanOutput() const
const ElementLink< TrigInDetTrackCollection > & IDScanLink() const
ElementLink< TileMuFeatureContainer > m_TileMuOutput
TileTrackMuFeature & operator=(TileTrackMuFeature &&muon_feature) noexcept
Move assignment.
TileTrackMuFeature()=default
Constructor.
ElementLink< TrigInDetTrackCollection > m_IDScanOutput
double PhiTR_Trk() const
double EtaTR_Trk() const
const TileMuFeature * TileMuOutput() const
double PtTR_Trk() const
Override pure virtual methods.
represents a LVL2 ID track