ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
InnerDetector
InDetValidation
InDetTrackPerfMon
src
StableDeltaRMatchingTool.cxx
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3
*/
4
11
13
#include "
StableDeltaRMatchingTool.h
"
14
#include "
TrackAnalysisCollections.h
"
15
#include "
TrackMatchingLookup.h
"
16
17
namespace
IDTPM
{
18
22
23
StatusCode
StableDeltaRMatchingTool_trk::match
(
TrackAnalysisCollections
& trkAnaColls,
24
const
std::string& chainRoIName,
25
const
std::string& roiStr)
const
{
26
bool
doMatch = trkAnaColls.
updateChainRois
(chainRoIName, roiStr);
27
28
if
( not doMatch ) {
29
ATH_MSG_WARNING
(
"Matching for "
<< chainRoIName <<
" was already done. Skipping"
);
30
return
StatusCode::SUCCESS;
31
}
32
33
ATH_CHECK
(
match
(trkAnaColls.
testTrackVec
(
TrackAnalysisCollections::InRoI
),
34
trkAnaColls.
refTrackVec
(
TrackAnalysisCollections::InRoI
),
35
trkAnaColls.
matches
()));
36
37
ATH_MSG_DEBUG
(trkAnaColls.
printMatchInfo
());
38
return
StatusCode::SUCCESS;
39
}
40
44
45
StatusCode
StableDeltaRMatchingTool_trkTruth::match
(
TrackAnalysisCollections
& trkAnaColls,
46
const
std::string& chainRoIName,
47
const
std::string& roiStr )
const
{
48
bool
doMatch = trkAnaColls.
updateChainRois
( chainRoIName, roiStr );
49
50
if
( not doMatch ) {
51
ATH_MSG_WARNING
(
"Matching for "
<< chainRoIName <<
" was already done. Skipping"
);
52
return
StatusCode::SUCCESS;
53
}
54
55
ATH_CHECK
(
match
(trkAnaColls.
testTrackVec
(
TrackAnalysisCollections::InRoI
),
56
trkAnaColls.
refTruthVec
(
TrackAnalysisCollections::InRoI
),
57
trkAnaColls.
matches
() ) );
58
59
ATH_MSG_DEBUG
( trkAnaColls.
printMatchInfo
() );
60
return
StatusCode::SUCCESS;
61
}
62
66
67
StatusCode
StableDeltaRMatchingTool_truthTrk::match
(
TrackAnalysisCollections
& trkAnaColls,
68
const
std::string& chainRoIName,
69
const
std::string& roiStr )
const
{
70
bool
doMatch = trkAnaColls.
updateChainRois
( chainRoIName, roiStr );
71
72
if
( not doMatch ) {
73
ATH_MSG_WARNING
(
"Matching for "
<< chainRoIName <<
" was already done. Skipping"
);
74
return
StatusCode::SUCCESS;
75
}
76
77
ATH_CHECK
(
match
(trkAnaColls.
testTruthVec
(
TrackAnalysisCollections::InRoI
),
78
trkAnaColls.
refTrackVec
(
TrackAnalysisCollections::InRoI
),
79
trkAnaColls.
matches
() ) );
80
81
ATH_MSG_DEBUG
( trkAnaColls.
printMatchInfo
() );
82
return
StatusCode::SUCCESS;
83
}
84
85
}
// end of namespace IDTPM
86
ATH_CHECK
#define ATH_CHECK
Evaluate an expression and check for errors.
Definition
AthCheckMacros.h:40
ATH_MSG_WARNING
#define ATH_MSG_WARNING(x)
Definition
AthMsgStreamMacros.h:32
ATH_MSG_DEBUG
#define ATH_MSG_DEBUG(x)
Definition
AthMsgStreamMacros.h:29
StableDeltaRMatchingTool.h
Derived tool to perform Delta R matching of tracks based on the stable marriage algorithm.
TrackAnalysisCollections.h
Class to hold for each event collections needed in the TrkAnalsis.
TrackMatchingLookup.h
Look-up table (templated) class to store (internally to IDTPM) all the matches between test and refer...
IDTPM::StableDeltaRMatchingTool_trkTruth::match
virtual StatusCode match(TrackAnalysisCollections &trkAnaColls, const std::string &chainRoIName, const std::string &roiStr) const override
General matching method, via TrackAnalysisCollections.
Definition
StableDeltaRMatchingTool.cxx:45
IDTPM::StableDeltaRMatchingTool_trk::match
virtual StatusCode match(TrackAnalysisCollections &trkAnaColls, const std::string &chainRoIName, const std::string &roiStr) const override
General matching method, via TrackAnalysisCollections.
Definition
StableDeltaRMatchingTool.cxx:23
IDTPM::StableDeltaRMatchingTool_truthTrk::match
virtual StatusCode match(TrackAnalysisCollections &trkAnaColls, const std::string &chainRoIName, const std::string &roiStr) const override
General matching method, via TrackAnalysisCollections.
Definition
StableDeltaRMatchingTool.cxx:67
IDTPM::TrackAnalysisCollections
Definition
TrackAnalysisCollections.h:46
IDTPM::TrackAnalysisCollections::testTruthVec
const std::vector< const xAOD::TruthParticle * > & testTruthVec(Stage stage=FULL)
get TEST track vectors
Definition
TrackAnalysisCollections.cxx:776
IDTPM::TrackAnalysisCollections::printMatchInfo
std::string printMatchInfo()
print track matching information
Definition
TrackAnalysisCollections.cxx:1137
IDTPM::TrackAnalysisCollections::updateChainRois
bool updateChainRois(const std::string &chainRoi, const std::string &roiStr)
update chainRois map
Definition
TrackAnalysisCollections.cxx:1155
IDTPM::TrackAnalysisCollections::matches
ITrackMatchingLookup & matches()
get track matching information
Definition
TrackAnalysisCollections.h:277
IDTPM::TrackAnalysisCollections::InRoI
@ InRoI
Definition
TrackAnalysisCollections.h:54
IDTPM::TrackAnalysisCollections::testTrackVec
const std::vector< const xAOD::TrackParticle * > & testTrackVec(Stage stage=FULL)
TEST = Track.
Definition
TrackAnalysisCollections.cxx:789
IDTPM::TrackAnalysisCollections::refTruthVec
const std::vector< const xAOD::TruthParticle * > & refTruthVec(Stage stage=FULL)
get REFERENCE track vectors
Definition
TrackAnalysisCollections.cxx:806
IDTPM::TrackAnalysisCollections::refTrackVec
const std::vector< const xAOD::TrackParticle * > & refTrackVec(Stage stage=FULL)
TEST = Track.
Definition
TrackAnalysisCollections.cxx:819
IDTPM
Athena include(s).
Definition
IPlotsDefinitionSvc.h:25
Generated on
for ATLAS Offline Software by
1.17.0