20 const std::pair<
const InDetCandidate*, std::vector<const TagBase*> >& c2)
const {
21 if (c1.second.empty() || c2.second.empty()) {
return c1.second.empty(); }
23 const TagBase& t1 = *c1.second.front();
24 const TagBase& t2 = *c2.second.front();
28 if (s1 && !s2)
return true;
29 if (s2 && !s1)
return false;
33 if (t1.type() == xAOD::Muon::Combined) {
38 if (!cbFitTag2)
return false;
39 return *cbFitTag1 < *cbFitTag2;
44 if (!stacoTag2)
return false;
45 return *stacoTag1 < *stacoTag2;
50 if (!muGirlTag2)
return false;
51 return *muGirlTag1 < *muGirlTag2;
54 }
else if (t1.type() == xAOD::Muon::SegmentTagged) {
58 if (!segmentTag2)
return false;
59 return *segmentTag1 < *segmentTag2;
64 if (!muGirlTag2)
return false;
65 return *muGirlTag1 < *muGirlTag2;
68 }
else if (t1.type() == xAOD::Muon::CaloTagged) {
72 if (!caloTag2)
return false;
73 return *caloTag1 < *caloTag2;