ATLAS Offline Software
MuonCalibExtendedTrack.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef MUONCALIBEXTENDEDTRACK_H
6 #define MUONCALIBEXTENDEDTRACK_H
7 
8 #include <algorithm>
9 #include <string>
10 #include <vector>
11 
14 #include "GaudiKernel/MsgStream.h"
22 
23 namespace MuonCalib {
24 
25  class MuonCalibExtendedSegment;
26 
33  public:
37 
39  // float d0ip() const;
40 
42  // float z0ip() const;
43 
45  // float pip() const;
46 
48  int pdgCode() const;
49 
51  int barCode() const;
52 
54  const MuonCalibTrackSummary& summary() const { return m_summary; }
55 
58 
61 
64 
67 
69  std::string dump() const;
70 
72  std::string dumpPars() const;
73 
75  std::string dumpSummary() const;
76 
78  std::string dumpIntersects() const;
79 
82 
85 
88 
91 
93  const IdHitMap& idHitMap() const { return m_hitIdMap; }
94 
96  const IdHitsMap& hitsPerChamberMap() const { return m_hitsPerChamber; }
97 
99  const std::vector<std::shared_ptr<MuonCalibExtendedSegment>>& associatedSegments() const;
101  // const std::vector<std::shared_ptr<MuonCalibExtendedTrack>>& associatedTracks() const { return m_associatedTracks; }
102 
106  // void addAssociatedTrack(MuonCalibExtendedTrack* track) { m_associatedTracks.emplace_back(track); }
107 
110 
112  // bool isAssociated(const MuonCalibExtendedTrack* track) const;
113 
117 
120 
122  // std::shared_ptr<MuonCalibExtendedTrack> getAssociatedTrack(int author) const;
123 
125  bool isIDConfirmed() const;
126 
127  private:
128  int m_pdgCode{0};
129  int m_barCode{0};
131  Amg::Vector3D m_pos{0., 0., 0.};
132 
134  Amg::Vector3D m_dir{0., 0., 0.};
135 
138 
144 
147 
150 
153 
156 
159 
162 
164  std::vector<std::shared_ptr<MuonCalibExtendedSegment>> m_associatedSegments;
165 
167  std::vector<std::shared_ptr<MuonCalibExtendedTrack>> m_associatedTracks;
168 
171  };
172 } // namespace MuonCalib
173 #endif
MuonCalib::MuonCalibRawHitAssociationMap
Definition: MuonCalibRawHitAssociationMap.h:19
MuonCalib::MuonCalibExtendedTrack::MuonCalibExtendedTrack
MuonCalibExtendedTrack(const MuonCalibTrack_E &track, int pdgCode=0, int barCode=0) ATLAS_CTORDTOR_NOT_THREAD_SAFE
Constructor taking input track.
Definition: MuonCalibExtendedTrack.cxx:24
MuonCalib::MuonCalibExtendedTrack::m_rpcHitsPerStationIndex
StationIndexHitsMap m_rpcHitsPerStationIndex
Definition: MuonCalibExtendedTrack.h:141
MuonCalib::MuonCalibExtendedTrack::intersectedTgcLayersWithoutHits
const StationIndexSet & intersectedTgcLayersWithoutHits() const
access tgc chamber layers intersected by track without hits
Definition: MuonCalibExtendedTrack.h:90
MuonCalib::MuonCalibExtendedTrack::m_associatedSegments
std::vector< std::shared_ptr< MuonCalibExtendedSegment > > m_associatedSegments
list of segments associated with this track
Definition: MuonCalibExtendedTrack.h:164
MuonCalib::MuonCalibExtendedTrack::m_intersectedTgcLayerWithoutHits
StationIndexSet m_intersectedTgcLayerWithoutHits
set with all tgc chamber identifiers of layers intersected by the track without hits
Definition: MuonCalibExtendedTrack.h:161
MuonCalib::MuonCalibExtendedTrack::intersectedStationLayer
const StationIntersectedLayerMap & intersectedStationLayer() const
access to the list of intersected station layers
MuonCalib::MuonCalibExtendedTrack::rpcStationIndexHitsMap
const StationIndexHitsMap & rpcStationIndexHitsMap() const
access to hits per station layer index (rpc)
Definition: MuonCalibExtendedTrack.h:60
getMessageSvc.h
singleton-like access to IMessageSvc via open function and helper
MuonCalib::MuonCalibTrackSummary
Definition: MuonCalibTrackSummary.h:17
MuonCalib::MuonCalibExtendedTrack::m_barCode
int m_barCode
Definition: MuonCalibExtendedTrack.h:129
MuonCalib::MuonCalibExtendedTrack::m_dir
Amg::Vector3D m_dir
direction of perigee parameters
Definition: MuonCalibExtendedTrack.h:134
MuonCalib::MuonCalibExtendedTrack::associatedSegments
const std::vector< std::shared_ptr< MuonCalibExtendedSegment > > & associatedSegments() const
access to list of the segment that are associated to this track
Definition: MuonCalibExtendedTrack.cxx:18
MuonCalib::MuonCalibExtendedTrack::m_pos
Amg::Vector3D m_pos
position of perigee parameters
Definition: MuonCalibExtendedTrack.h:131
MuonCalib::IdHitsMap
std::map< MuonFixedId, std::vector< CalibHitE_Ptr > > IdHitsMap
hit information per station
Definition: MuonCalibLayerMapping.h:24
MuonCalib::StationIntersectedLayerMap
std::map< MuonFixedId, MuonCalibSimpleHoleSearch::Result > StationIntersectedLayerMap
intersected layers in the simplified geometry per station
Definition: MuonCalibLayerMapping.h:30
MuonCalib::MuonCalibExtendedTrack::calculateHitOverlap
MuonCalibExtendedTrackOverlap calculateHitOverlap(const MuonCalibExtendedTrack &track) const
calculate hit overlap between two tracks
Definition: MuonCalibExtendedTrack.cxx:292
MuonCalib::MuonCalibExtendedTrack::hitsPerChamberMap
const IdHitsMap & hitsPerChamberMap() const
hit information per station
Definition: MuonCalibExtendedTrack.h:96
MuonCalib::MuonCalibExtendedTrack::tgcStationIndexHitsMap
const StationIndexHitsMap & tgcStationIndexHitsMap() const
access to hits per station layer index (tgc)
Definition: MuonCalibExtendedTrack.h:63
MuonCalibExtendedTrackOverlap.h
MuonCalibLayerMapping.h
MuonCalib::MuonCalibExtendedTrack::isIDConfirmed
bool isIDConfirmed() const
get associated track for the give author, returns zero if not found
Definition: MuonCalibExtendedTrack.cxx:449
MuonCalibTrack_E.h
MuonCalib::StationIndexHitsMap
std::map< MuonFixedIdManipulator::StationIndex, std::vector< CalibHitE_Ptr > > StationIndexHitsMap
Definition: MuonCalibLayerMapping.h:21
MuonCalib::MuonCalibExtendedTrack::m_mdtHitsPerStationIndex
StationIndexHitsMap m_mdtHitsPerStationIndex
hit information per station layer index
Definition: MuonCalibExtendedTrack.h:140
GeoPrimitives.h
MuonCalib::MuonCalibTrack_E
Definition: MuonCalibTrack_E.h:24
MuonCalib::MuonCalibExtendedTrack::m_hitIdMap
IdHitMap m_hitIdMap
hit information per station
Definition: MuonCalibExtendedTrack.h:149
MuonCalib::MuonCalibExtendedTrack::intersectedRpcLayersWithoutHits
const StationIndexSet & intersectedRpcLayersWithoutHits() const
access rpc chambers intersected by track without hits
Definition: MuonCalibExtendedTrack.h:87
MuonCalib::MuonCalibExtendedTrackOverlap
Definition: MuonCalibExtendedTrackOverlap.h:10
MuonCalib::MuonCalibExtendedTrack::dumpPars
std::string dumpPars() const
dump track parameters to string
Definition: MuonCalibExtendedTrack.cxx:224
MuonCalib::MuonCalibExtendedTrack::m_tgcHitsPerStationIndex
StationIndexHitsMap m_tgcHitsPerStationIndex
Definition: MuonCalibExtendedTrack.h:142
MuonCalib
CscCalcPed - algorithm that finds the Cathode Strip Chamber pedestals from an RDO.
Definition: CscCalcPed.cxx:22
MuonCalib::MuonCalibExtendedTrack::cscStationIndexHitsMap
const StationIndexHitsMap & cscStationIndexHitsMap() const
access to hits per station layer index (csc)
Definition: MuonCalibExtendedTrack.h:66
MuonCalib::MuonCalibExtendedTrack::barCode
int barCode() const
returns barCode
Definition: MuonCalibExtendedTrack.cxx:446
MuonCalib::MuonCalibExtendedTrack::intersectedLayersWithoutHits
const StationIndexSet & intersectedLayersWithoutHits() const
access station layers intersected by track without hits
Definition: MuonCalibExtendedTrack.h:84
MuonCalib::MuonCalibExtendedTrack::m_intersectedLayers
StationIntersectedLayerMap m_intersectedLayers
map with all station layers intersected by track
Definition: MuonCalibExtendedTrack.h:152
MuonCalibTrackSummary.h
MuonCalib::MuonCalibExtendedTrack::dump
std::string dump() const
dump all information to string
Definition: MuonCalibExtendedTrack.cxx:218
MuonCalib::MuonCalibExtendedTrack::~MuonCalibExtendedTrack
virtual ~MuonCalibExtendedTrack()
MuonCalibHit_E.h
MuonCalib::MuonCalibExtendedTrack::m_intersectedLayersWithoutHits
StationIndexSet m_intersectedLayersWithoutHits
set with all station layers intersected by the track without hits
Definition: MuonCalibExtendedTrack.h:155
MuonCalib::MuonCalibExtendedTrack::dumpSummary
std::string dumpSummary() const
dump track summary to string
Definition: MuonCalibExtendedTrack.cxx:234
MuonCalib::MuonCalibExtendedTrack::rawHitAssociationMap
MuonCalibRawHitAssociationMap & rawHitAssociationMap()
Definition: MuonCalibExtendedTrack.h:116
MuonCalib::MuonCalibExtendedTrack::m_summary
MuonCalibTrackSummary m_summary
track summary
Definition: MuonCalibExtendedTrack.h:137
MuonCalib::MuonCalibExtendedTrack::m_cscHitsPerStationIndex
StationIndexHitsMap m_cscHitsPerStationIndex
Definition: MuonCalibExtendedTrack.h:143
Amg::Vector3D
Eigen::Matrix< double, 3, 1 > Vector3D
Definition: GeoPrimitives.h:47
MuonCalibRawHitAssociationMap.h
MuonCalib::MuonCalibExtendedTrack::m_pdgCode
int m_pdgCode
Definition: MuonCalibExtendedTrack.h:128
MuonCalib::MuonCalibExtendedTrack::pdgCode
int pdgCode() const
returns trackparameter d0 at IP
Definition: MuonCalibExtendedTrack.cxx:444
MuonCalib::MuonCalibExtendedTrack::m_intersectedRpcLayerWithoutHits
StationIndexSet m_intersectedRpcLayerWithoutHits
set with all rpc chamber identifiers of layers intersected by the track without hits
Definition: MuonCalibExtendedTrack.h:158
MuonCalib::MuonCalibExtendedTrack::isAssociated
bool isAssociated(const MuonCalibExtendedSegment *segment) const
add associated track
MuonCalib::MuonCalibExtendedTrack::dumpIntersects
std::string dumpIntersects() const
dump track intersects to string
Definition: MuonCalibExtendedTrack.cxx:240
MuonCalib::MuonCalibExtendedTrack::addSegment
void addSegment(MuonCalibExtendedSegment *seg)
‍** access to list of the tracks that are associated to this track *‍/
Definition: MuonCalibExtendedTrack.cxx:22
MuonCalib::MuonCalibExtendedTrack::m_associatedTracks
std::vector< std::shared_ptr< MuonCalibExtendedTrack > > m_associatedTracks
list of tracks associated with this track
Definition: MuonCalibExtendedTrack.h:167
MuonCalib::StationIndexSet
std::set< MuonFixedIdManipulator::StationIndex > StationIndexSet
set with station layer index
Definition: MuonCalibLayerMapping.h:33
MuonCalib::MuonCalibExtendedTrack::mdtStationIndexHitsMap
const StationIndexHitsMap & mdtStationIndexHitsMap() const
access to hits per station layer index (mdt)
Definition: MuonCalibExtendedTrack.h:57
ATLAS_CTORDTOR_NOT_THREAD_SAFE
#define ATLAS_CTORDTOR_NOT_THREAD_SAFE
Definition: checker_macros.h:213
xAOD::track
@ track
Definition: TrackingPrimitives.h:512
MuonCalib::MuonCalibExtendedTrack::idHitMap
const IdHitMap & idHitMap() const
access hit identifier map (hits give the MuonFixedId
Definition: MuonCalibExtendedTrack.h:93
MuonCalib::MuonCalibExtendedTrack::m_hitsPerChamber
IdHitsMap m_hitsPerChamber
hit information per station
Definition: MuonCalibExtendedTrack.h:146
MuonCalib::MuonCalibExtendedTrack
Definition: MuonCalibExtendedTrack.h:32
checker_macros.h
Define macros for attributes used to control the static checker.
MuonCalib::MuonCalibExtendedTrack::m_rawHitAssociationMap
MuonCalibRawHitAssociationMap m_rawHitAssociationMap
raw hit association map
Definition: MuonCalibExtendedTrack.h:170
MuonCalib::IdHitMap
std::map< MuonFixedId, CalibHitE_Ptr > IdHitMap
hit information per identifier
Definition: MuonCalibLayerMapping.h:27
MuonCalib::MuonCalibExtendedTrack::summary
const MuonCalibTrackSummary & summary() const
access to hit counts
Definition: MuonCalibExtendedTrack.h:54
MuonCalib::MuonCalibExtendedSegment
Definition: MuonCalibExtendedSegment.h:27
MuonCalib::MuonCalibExtendedTrack::rawHitAssociationMap
const MuonCalibRawHitAssociationMap & rawHitAssociationMap() const
check whether the given track is associated to this one (pointer based)
Definition: MuonCalibExtendedTrack.h:115
NSWL1::PadTriggerAdapter::segment
Muon::NSW_PadTriggerSegment segment(const NSWL1::PadTrigger &data)
Definition: PadTriggerAdapter.cxx:5