ATLAS Offline Software
Loading...
Searching...
No Matches
MuonCombined Namespace Reference

The MuonTagToSegMap is an auxillary construct that links the MuonSegments associated with a combined TagMap to a second segment collection that can be dumped to the output root file. More...

Classes

class  MuonCaloTagTool
class  MuonCandidateTool
class  MuonCombinedDebuggerTool
class  MuonCombinedFitTagTool
class  MuonCombinedStacoTagTool
class  MuonCombinedTool
class  MuonCreatorTool
class  MuonDressingTool
class  MuonSegmentTagTool
class  SortInDetCandidates
class  TrackSegmentAssociationTool
class  CaloTag
 TagBase implementation for a calo tag. More...
class  CombinedFitTag
 TagBase implementation for a combined fit. More...
class  InDetCandidate
class  InDetCandidateToTagMap
class  MuGirlLowBetaTag
 TagBase implementation for a combined fit. More...
class  MuGirlTag
 TagBase implementation for a combined fit. More...
class  MuonCandidate
struct  MuonSegmentInfo
class  MuonSegmentTagSurfaces
class  MuonTagToSegMap
class  SegmentTag
 TagBase implementation for a segment tagger. More...
class  StacoTag
 TagBase implementation for a combined fit. More...
class  TagBase
 base-class for combined reconstruction output Provides access to MuonType and Author More...
struct  SortTagBasePtr
class  MuonTrackTagTestTool
class  IMuonCandidateTool
 interface for tools building MuonCandidateCollection from a TrackParticleCollection of spectrometer tracks More...
class  IMuonCombinedInDetExtensionTool
 interface for tools buildingmuons from ID candidates More...
class  IMuonCombinedTagTool
 interface for tools building combined muons from a MuonCandidate and a set of ID tracks More...
class  IMuonCombinedTool
 interface for tools building combined muons from ID and Muon candidates More...
class  IMuonCreatorTool
 interface for tools building combined muons from ID and Muon candidates More...
class  IMuonSegmentTagTool
 interface for tools building muons from ID and MuonSegments More...
class  IMuonTrackTagTool
class  IMuonTrackToSegmentAssociationTool
 Interface to associate the Muon segments to the muon track. More...
class  MuonInsideOutRecoTool
class  MuonStauRecoTool
 ID seeded Stau reconstruction. More...

Functions

bool operator< (const CombinedFitTag &t1, const CombinedFitTag &t2)
bool operator< (const MuGirlLowBetaTag &t1, const MuGirlLowBetaTag &t2)
bool operator< (const MuGirlTag &t1, const MuGirlTag &t2)
bool operator< (const StacoTag &t1, const StacoTag &t2)
int authorRank (const xAOD::Muon::Author a)
int typeRank (const xAOD::Muon::MuonType a)
bool operator< (const TagBase &t1, const TagBase &t2)
std::string printIntersectionToString (const Muon::MuonSystemExtension::Intersection &intersection)

Detailed Description

The MuonTagToSegMap is an auxillary construct that links the MuonSegments associated with a combined TagMap to a second segment collection that can be dumped to the output root file.

The mapping becomes neccessary as different muon algorithms might create their own MuonSegments that are saved in different containers. For the final output a single merged container is required.

Function Documentation

◆ authorRank()

int MuonCombined::authorRank ( const xAOD::Muon::Author a)
inline

Definition at line 24 of file TagBase.h.

24 {
25 using enum xAOD::Muon::Author;
26 if (a == MuidCo) return 0;
27 if (a == MuGirl) return 1;
28 if (a == MuTagIMO) return 2;
29 if (a == MuTag) return 3;
30 if (a == CaloTag) return 4;
31 if (a == MuidSA) return 5;
32 if (a == STACO) return 6;
33 return Muon::MuonStationIndex::toInt(NumberOfMuonAuthors);
34 }
static Double_t a
TagBase implementation for a calo tag.
Definition CaloTag.h:17
constexpr int toInt(const EnumType enumVal)

◆ operator<() [1/5]

bool MuonCombined::operator< ( const CombinedFitTag & t1,
const CombinedFitTag & t2 )
inline

Definition at line 114 of file CombinedFitTag.h.

114{ return t1.trackScore() < t2.trackScore(); }

◆ operator<() [2/5]

bool MuonCombined::operator< ( const MuGirlLowBetaTag & t1,
const MuGirlLowBetaTag & t2 )
inline

Definition at line 91 of file MuGirlLowBetaTag.h.

91 {
92 const Trk::FitQuality* t1FQ = t1.combinedTrack() ? t1.combinedTrack()->fitQuality() : nullptr;
93 const Trk::FitQuality* t2FQ = t2.combinedTrack() ? t2.combinedTrack()->fitQuality() : nullptr;
94 if (t1FQ && t2FQ) { return t1FQ->chiSquared() < t2FQ->chiSquared(); }
95 return t1.segments().size() < t2.segments().size();
96 }
Class to represent and store fit qualities from track reconstruction in terms of and number of degre...
Definition FitQuality.h:97
double chiSquared() const
returns the of the overall track fit
Definition FitQuality.h:56

◆ operator<() [3/5]

bool MuonCombined::operator< ( const MuGirlTag & t1,
const MuGirlTag & t2 )

Definition at line 30 of file MuGirlTag.cxx.

30 {
31 const Trk::FitQuality* t1FQ = t1.combinedTrack() ? t1.combinedTrack()->fitQuality() : nullptr;
32 const Trk::FitQuality* t2FQ = t2.combinedTrack() ? t2.combinedTrack()->fitQuality() : nullptr;
33 if (t1FQ && t2FQ) { return t1FQ->chiSquared() < t2FQ->chiSquared(); }
34 return t1.associatedSegments().size() < t2.associatedSegments().size();
35 }

◆ operator<() [4/5]

bool MuonCombined::operator< ( const StacoTag & t1,
const StacoTag & t2 )

Definition at line 31 of file StacoTag.cxx.

31{ return t1.matchChi2() < t2.matchChi2(); }

◆ operator<() [5/5]

bool MuonCombined::operator< ( const TagBase & t1,
const TagBase & t2 )
inline

Definition at line 90 of file TagBase.h.

90 {
91 int r1 = typeRank(t1.type());
92 int r2 = typeRank(t2.type());
93 if (r1 != r2 && t1.author() != xAOD::Muon::Author::STACO &&
94 t2.author() != xAOD::Muon::Author::STACO) return r1 < r2;
95 return authorRank(t1.author()) < authorRank(t2.author());
96 }
int authorRank(const xAOD::Muon::Author a)
Definition TagBase.h:24
int typeRank(const xAOD::Muon::MuonType a)
Definition TagBase.h:36

◆ printIntersectionToString()

std::string MuonCombined::printIntersectionToString ( const Muon::MuonSystemExtension::Intersection & intersection)

Definition at line 37 of file MuonStauRecoTool.cxx.

37 {
38 std::ostringstream sout;
39 sout << " sector " << intersection.layerSurface.sector << " "
40 << Muon::MuonStationIndex::regionName(intersection.layerSurface.regionIndex) << " "
41 << Muon::MuonStationIndex::layerName(intersection.layerSurface.layerIndex);
42 return sout.str();
43 }
std::vector< std::string > intersection(std::vector< std::string > &v1, std::vector< std::string > &v2)
const std::string & layerName(LayerIndex index)
convert LayerIndex into a string
const std::string & regionName(DetectorRegionIndex index)
convert DetectorRegionIndex into a string

◆ typeRank()

int MuonCombined::typeRank ( const xAOD::Muon::MuonType a)
inline

Definition at line 36 of file TagBase.h.

36 {
37 using enum xAOD::Muon::MuonType;
38 if (a == Combined) return 0;
39 if (a == SiliconAssociatedForwardMuon) return 1;
40 if (a == SegmentTagged) return 2;
41 if (a == MuonStandAlone) return 3;
42 if (a == CaloTagged) return 4;
43 return 5;
44 }