ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Tracking
TrkExtrapolation
TrkExInterfaces
TrkExInterfaces
ITimedExtrapolator.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration
3
*/
4
6
// ITimedExtrapolator.h, (c) ATLAS Detector software
8
9
#ifndef TRKEXINTERFACES_ITIMEDEXTRAPOLATOR_H
10
#define TRKEXINTERFACES_ITIMEDEXTRAPOLATOR_H
11
12
// Gaudi
13
#include "GaudiKernel/IAlgTool.h"
14
// Trk
15
#include "
HelperStructs.h
"
16
#include "
TrkDetDescrUtils/GeometrySignature.h
"
17
#include "
TrkEventPrimitives/ParticleHypothesis.h
"
18
#include "
TrkEventPrimitives/PropDirection.h
"
19
#include "
TrkExUtils/MaterialUpdateMode.h
"
20
#include "
TrkParameters/TrackParameters.h
"
21
#include <utility>
22
23
namespace
Trk
{
24
25
static
const
InterfaceID
IID_ITimedExtrapolator
(
"ITimedExtrapolator"
, 1, 0);
26
35
36
class
TrackingVolume
;
37
class
TrackingGeometry
;
38
class
TrackStateOnSurface
;
39
40
class
ITimedExtrapolator
:
virtual
public
IAlgTool
41
{
42
public
:
44
virtual
~ITimedExtrapolator
() {}
45
47
static
const
InterfaceID&
interfaceID
() {
return
IID_ITimedExtrapolator
; }
48
52
53
virtual
std::unique_ptr<const Trk::TrackParameters>
extrapolateWithPathLimit
(
54
const
Trk::TrackParameters
& parm,
55
Trk::PathLimit
& pathLim,
56
Trk::TimeLimit
& time,
57
Trk::PropDirection
dir,
58
Trk::ParticleHypothesis
particle,
59
std::vector<HitInfo>*&
hitVector
,
60
Trk::GeometrySignature
& nextGeoId,
61
const
Trk::TrackingVolume
* boundaryVol =
nullptr
)
const
= 0;
62
67
68
virtual
std::unique_ptr<const Trk::TrackParameters>
transportNeutralsWithPathLimit
(
69
const
Trk::TrackParameters
& parm,
70
Trk::PathLimit
& pathLim,
71
Trk::TimeLimit
& time,
72
Trk::PropDirection
dir,
73
Trk::ParticleHypothesis
particle,
74
std::vector<HitInfo>*&
hitVector
,
75
Trk::GeometrySignature
& nextGeoId,
76
const
Trk::TrackingVolume
* boundaryVol =
nullptr
)
const
= 0;
77
80
virtual
const
TrackingGeometry
*
trackingGeometry
()
const
= 0;
81
85
virtual
void
validationAction
()
const
= 0;
86
};
87
88
}
// end of namespace
89
90
#endif
// TRKEXINTERFACES_ITIMEDEXTRAPOLATOR_H
91
hitVector
std::vector< FPGATrackSimHit > hitVector
Definition
FPGATrackSimCluster.h:22
GeometrySignature.h
HelperStructs.h
MaterialUpdateMode.h
ParticleHypothesis.h
PropDirection.h
TrackParameters.h
Trk::ITimedExtrapolator
Interface class for the extrapolation AlgTool, it inherits from IAlgTool Detailed information about p...
Definition
ITimedExtrapolator.h:41
Trk::ITimedExtrapolator::transportNeutralsWithPathLimit
virtual std::unique_ptr< const Trk::TrackParameters > transportNeutralsWithPathLimit(const Trk::TrackParameters &parm, Trk::PathLimit &pathLim, Trk::TimeLimit &time, Trk::PropDirection dir, Trk::ParticleHypothesis particle, std::vector< HitInfo > *&hitVector, Trk::GeometrySignature &nextGeoId, const Trk::TrackingVolume *boundaryVol=nullptr) const =0
Transport method for neutral and/or unstable particles.
Trk::ITimedExtrapolator::trackingGeometry
virtual const TrackingGeometry * trackingGeometry() const =0
Return the TrackingGeometry used by the Extrapolator (forwards information from Navigator).
Trk::ITimedExtrapolator::~ITimedExtrapolator
virtual ~ITimedExtrapolator()
Virtual destructor.
Definition
ITimedExtrapolator.h:44
Trk::ITimedExtrapolator::validationAction
virtual void validationAction() const =0
Validation Action: Can be implemented optionally, outside access to internal validation steps.
Trk::ITimedExtrapolator::interfaceID
static const InterfaceID & interfaceID()
AlgTool interface methods.
Definition
ITimedExtrapolator.h:47
Trk::ITimedExtrapolator::extrapolateWithPathLimit
virtual std::unique_ptr< const Trk::TrackParameters > extrapolateWithPathLimit(const Trk::TrackParameters &parm, Trk::PathLimit &pathLim, Trk::TimeLimit &time, Trk::PropDirection dir, Trk::ParticleHypothesis particle, std::vector< HitInfo > *&hitVector, Trk::GeometrySignature &nextGeoId, const Trk::TrackingVolume *boundaryVol=nullptr) const =0
Extrapolation method allowing treatment of unstable particles.
Trk::TrackStateOnSurface
represents the track state (measurement, material, fit parameters and quality) at a surface.
Definition
TrackStateOnSurface.h:71
Trk::TrackingGeometry
The TrackingGeometry class is the owner of the constructed TrackingVolumes.
Definition
TrackingGeometry.h:68
Trk::TrackingVolume
Full Volume description used in Tracking, it inherits from Volume to get the geometrical structure,...
Definition
TrackingVolume.h:119
Trk
Ensure that the ATLAS eigen extensions are properly loaded.
Definition
FakeTrackBuilder.h:9
Trk::PropDirection
PropDirection
PropDirection, enum for direction of the propagation.
Definition
PropDirection.h:19
Trk::IID_ITimedExtrapolator
static const InterfaceID IID_ITimedExtrapolator("ITimedExtrapolator", 1, 0)
Trk::ParticleHypothesis
ParticleHypothesis
Enumeration for Particle hypothesis respecting the interaction with material.
Definition
ParticleHypothesis.h:28
Trk::GeometrySignature
GeometrySignature
Definition
GeometrySignature.h:24
Trk::TrackParameters
ParametersBase< TrackParametersDim, Charged > TrackParameters
Definition
Tracking/TrkEvent/TrkParameters/TrkParameters/TrackParameters.h:27
Trk::PathLimit
Definition
HelperStructs.h:34
Trk::TimeLimit
Definition
HelperStructs.h:58
Generated on
for ATLAS Offline Software by
1.17.0