ATLAS Offline Software
Loading...
Searching...
No Matches
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
23namespace MuonCalib {
24
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
109 bool isAssociated(const MuonCalibExtendedSegment* segment) const;
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
Define macros for attributes used to control the static checker.
#define ATLAS_CTORDTOR_NOT_THREAD_SAFE
A segment plus everything one can dream of knowing about it.
A track plus everything one can dream of knowing about a track.
int pdgCode() const
returns trackparameter d0 at IP
std::vector< std::shared_ptr< MuonCalibExtendedTrack > > m_associatedTracks
list of tracks associated with this track
const StationIntersectedLayerMap & intersectedStationLayer() const
access to the list of intersected station layers
std::string dumpIntersects() const
dump track intersects to string
StationIndexHitsMap m_mdtHitsPerStationIndex
hit information per station layer index
std::string dumpPars() const
dump track parameters to string
const StationIndexSet & intersectedLayersWithoutHits() const
access station layers intersected by track without hits
IdHitMap m_hitIdMap
hit information per station
const MuonCalibTrackSummary & summary() const
access to hit counts
const StationIndexSet & intersectedTgcLayersWithoutHits() const
access tgc chamber layers intersected by track without hits
MuonCalibTrackSummary m_summary
track summary
std::string dumpSummary() const
dump track summary to string
MuonCalibRawHitAssociationMap m_rawHitAssociationMap
raw hit association map
bool isIDConfirmed() const
get associated track for the give author, returns zero if not found
IdHitsMap m_hitsPerChamber
hit information per station
Amg::Vector3D m_pos
position of perigee parameters
const StationIndexHitsMap & tgcStationIndexHitsMap() const
access to hits per station layer index (tgc)
const StationIndexHitsMap & cscStationIndexHitsMap() const
access to hits per station layer index (csc)
const IdHitsMap & hitsPerChamberMap() const
hit information per station
void addSegment(MuonCalibExtendedSegment *seg)
access to list of the tracks that are associated to this track *‍/ const std::vector<std::shared_ptr<...
StationIntersectedLayerMap m_intersectedLayers
map with all station layers intersected by track
StationIndexSet m_intersectedTgcLayerWithoutHits
set with all tgc chamber identifiers of layers intersected by the track without hits
const StationIndexHitsMap & mdtStationIndexHitsMap() const
access to hits per station layer index (mdt)
const StationIndexSet & intersectedRpcLayersWithoutHits() const
access rpc chambers intersected by track without hits
MuonCalibExtendedTrackOverlap calculateHitOverlap(const MuonCalibExtendedTrack &track) const
calculate hit overlap between two tracks
MuonCalibRawHitAssociationMap & rawHitAssociationMap()
MuonCalibExtendedTrack(const MuonCalibTrack_E &track, int pdgCode=0, int barCode=0) ATLAS_CTORDTOR_NOT_THREAD_SAFE
Constructor taking input track.
const std::vector< std::shared_ptr< MuonCalibExtendedSegment > > & associatedSegments() const
access to list of the segment that are associated to this track
std::vector< std::shared_ptr< MuonCalibExtendedSegment > > m_associatedSegments
list of segments associated with this track
const IdHitMap & idHitMap() const
access hit identifier map (hits give the MuonFixedId
const StationIndexHitsMap & rpcStationIndexHitsMap() const
access to hits per station layer index (rpc)
const MuonCalibRawHitAssociationMap & rawHitAssociationMap() const
check whether the given track is associated to this one (pointer based)
Amg::Vector3D m_dir
direction of perigee parameters
StationIndexSet m_intersectedRpcLayerWithoutHits
set with all rpc chamber identifiers of layers intersected by the track without hits
bool isAssociated(const MuonCalibExtendedSegment *segment) const
add associated track
std::string dump() const
dump all information to string
StationIndexSet m_intersectedLayersWithoutHits
set with all station layers intersected by the track without hits
Association map between MuonFixedId and raw hits.
MuonCalibTrack_E()=default
default constructor
singleton-like access to IMessageSvc via open function and helper
Eigen::Matrix< double, 3, 1 > Vector3D
CscCalcPed - algorithm that finds the Cathode Strip Chamber pedestals from an RDO.
std::map< MuonFixedIdManipulator::StationIndex, std::vector< CalibHitE_Ptr > > StationIndexHitsMap
std::map< MuonFixedId, CalibHitE_Ptr > IdHitMap
hit information per identifier
std::map< MuonFixedId, MuonCalibSimpleHoleSearch::Result > StationIntersectedLayerMap
intersected layers in the simplified geometry per station
std::map< MuonFixedId, std::vector< CalibHitE_Ptr > > IdHitsMap
hit information per station
std::set< MuonFixedIdManipulator::StationIndex > StationIndexSet
set with station layer index