ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
MuonSpectrometer
MuonReconstruction
MuonRecTools
MuonRecToolInterfaces
MuonRecToolInterfaces
IMuonSegmentFittingTool.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#ifndef MUON_IMUONSEGMENTFITTINGTOOL_H
6
#define MUON_IMUONSEGMENTFITTINGTOOL_H
7
8
#include <vector>
9
10
#include "
EventPrimitives/EventPrimitives.h
"
11
#include "GaudiKernel/IAlgTool.h"
12
#include "
GeoPrimitives/GeoPrimitives.h
"
13
14
namespace
Trk
{
15
class
PlaneSurface
;
16
class
LocalDirection
;
17
class
MeasurementBase
;
18
class
Track
;
19
}
// namespace Trk
20
21
namespace
Muon
{
22
class
MuonSegment
;
23
}
24
25
static
const
InterfaceID
IID_IMuonSegmentFittingTool
(
"Muon::IMuonSegmentFittingTool"
, 1, 0);
26
27
namespace
Muon
{
28
30
class
IMuonSegmentFittingTool
:
virtual
public
IAlgTool {
31
public
:
33
static
const
InterfaceID&
interfaceID
();
34
36
virtual
Trk::Track
*
fit
(
const
Amg::Vector3D
& gpos,
const
Amg::Vector3D
& gdir,
const
Trk::PlaneSurface
& surf,
37
const
std::vector<const Trk::MeasurementBase*>& rioVec)
const
= 0;
38
40
virtual
Trk::Track
*
fit
(
const
MuonSegment
& segment)
const
= 0;
41
43
virtual
void
updateSegmentParameters
(
const
Trk::Track
& track,
const
Trk::PlaneSurface
& surf,
Amg::Vector2D
& segLocPos,
44
Trk::LocalDirection
& segLocDir,
Amg::MatrixX
& locerr)
const
= 0;
45
};
46
47
inline
const
InterfaceID&
IMuonSegmentFittingTool::interfaceID
() {
return
IID_IMuonSegmentFittingTool
; }
48
49
}
// namespace Muon
50
51
#endif
EventPrimitives.h
GeoPrimitives.h
IID_IMuonSegmentFittingTool
static const InterfaceID IID_IMuonSegmentFittingTool("Muon::IMuonSegmentFittingTool", 1, 0)
Muon::IMuonSegmentFittingTool
The IMuonSegmentMaker is a pure virtual interface for tools to find tracks starting from MuonSegmentC...
Definition
IMuonSegmentFittingTool.h:30
Muon::IMuonSegmentFittingTool::fit
virtual Trk::Track * fit(const MuonSegment &segment) const =0
fit segment parameters + hits producing a track.
Muon::IMuonSegmentFittingTool::interfaceID
static const InterfaceID & interfaceID()
access to tool interface
Definition
IMuonSegmentFittingTool.h:47
Muon::IMuonSegmentFittingTool::updateSegmentParameters
virtual void updateSegmentParameters(const Trk::Track &track, const Trk::PlaneSurface &surf, Amg::Vector2D &segLocPos, Trk::LocalDirection &segLocDir, Amg::MatrixX &locerr) const =0
update the parameters of the segment using the track information
Muon::IMuonSegmentFittingTool::fit
virtual Trk::Track * fit(const Amg::Vector3D &gpos, const Amg::Vector3D &gdir, const Trk::PlaneSurface &surf, const std::vector< const Trk::MeasurementBase * > &rioVec) const =0
fit segment parameters + hits producing a track.
Muon::MuonSegment
This is the common class for 3D segments used in the muon spectrometer.
Definition
MuonSpectrometer/MuonReconstruction/MuonRecEvent/MuonSegment/MuonSegment/MuonSegment.h:45
Trk::LocalDirection
represents the three-dimensional global direction with respect to a planar surface frame.
Definition
LocalDirection.h:81
Trk::MeasurementBase
This class is the pure abstract base class for all fittable tracking measurements.
Definition
MeasurementBase.h:58
Trk::PlaneSurface
Class for a planaer rectangular or trapezoidal surface in the ATLAS detector.
Definition
PlaneSurface.h:64
Trk::Track
The ATLAS Track class.
Definition
Tracking/TrkEvent/TrkTrack/TrkTrack/Track.h:73
Amg::MatrixX
Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic > MatrixX
Dynamic Matrix - dynamic allocation.
Definition
EventPrimitives.h:27
Amg::Vector2D
Eigen::Matrix< double, 2, 1 > Vector2D
Definition
GeoPrimitives.h:48
Amg::Vector3D
Eigen::Matrix< double, 3, 1 > Vector3D
Definition
GeoPrimitives.h:47
Muon
NRpcCablingAlg reads raw condition data and writes derived condition data to the condition store.
Definition
TrackSystemController.h:46
Trk
Ensure that the ATLAS eigen extensions are properly loaded.
Definition
FakeTrackBuilder.h:9
Generated on
for ATLAS Offline Software by
1.17.0