diff --git a/PWGDQ/Tasks/qaMatching.cxx b/PWGDQ/Tasks/qaMatching.cxx index b5c0bb2ef65..c82e2304ccd 100644 --- a/PWGDQ/Tasks/qaMatching.cxx +++ b/PWGDQ/Tasks/qaMatching.cxx @@ -139,6 +139,7 @@ struct QaMatching { static constexpr int ExtrapolationMethodMftFirstPoint = 2; static constexpr int ExtrapolationMethodVertex = 3; static constexpr int ExtrapolationMethodMftDca = 4; + static constexpr int DecayRankingDirect = 2; struct MatchingCandidate { int64_t collisionId{-1}; @@ -1675,7 +1676,7 @@ struct QaMatching { template MuonMatchType getMatchType(const TMUON& muonTrack, - TMUONS const& muonTracks, + TMUONS const& /*muonTracks*/, TMFTS const& mftTracks, const std::vector>& matchablePairs, int ranking) @@ -1685,18 +1686,18 @@ struct QaMatching { auto const& mchTrack = muonTrack.template matchMCHTrack_as(); - bool isPaired = isMatchableMch(mchTrack.globalIndex(), matchablePairs); - bool isMuon = IsMuon(muonTrack, muonTracks, mftTracks); + bool isPairable = isMatchableMch(mchTrack.globalIndex(), matchablePairs); + bool isTrueMatch = isTrueGlobalMatching(muonTrack, matchablePairs); int decayRanking = getDecayRanking(mchTrack, mftTracks); MuonMatchType result{kMatchTypeUndefined}; - if (isPaired) { - if (isMuon) { + if (isPairable) { + if (isTrueMatch) { result = (ranking == 1) ? kMatchTypeTrueLeading : kMatchTypeTrueNonLeading; } else { result = (ranking == 1) ? kMatchTypeWrongLeading : kMatchTypeWrongNonLeading; } - } else if (decayRanking == 1) { + } else if (decayRanking == DecayRankingDirect) { result = (ranking == 1) ? kMatchTypeDecayLeading : kMatchTypeDecayNonLeading; } else { result = (ranking == 1) ? kMatchTypeFakeLeading : kMatchTypeFakeNonLeading;