ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Tracking
TrkExtrapolation
TrkExInterfaces
TrkExInterfaces
INavigationEngine.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3
*/
4
6
// INavigationEngine.h, (c) ATLAS Detector software
8
9
#ifndef TRKEXINTERFACES_INAVIGATIONENGINE_H
10
#define TRKEXINTERFACES_INAVIGATIONENGINE_H
11
12
// Gaudi
13
#include "GaudiKernel/IAlgTool.h"
14
// Trk
15
#include "
TrkExUtils/ExtrapolationCell.h
"
16
#include "
TrkParameters/TrackParameters.h
"
17
#include "
TrkNeutralParameters/NeutralParameters.h
"
18
#include "
CxxUtils/checker_macros.h
"
19
namespace
Trk
{
20
21
class
TrackingGeometry
;
22
23
static
const
InterfaceID
IID_INavigationEngine
(
"INavigationEngine"
, 1, 0);
24
25
typedef
ExtrapolationCell<TrackParameters>
ExCellCharged
;
26
typedef
ExtrapolationCell<NeutralParameters>
ExCellNeutral
;
27
36
37
class
INavigationEngine
:
virtual
public
IAlgTool {
38
39
public
:
40
42
virtual
~INavigationEngine
(){}
43
45
static
const
InterfaceID&
interfaceID
() {
return
IID_INavigationEngine
; }
46
48
virtual
ExtrapolationCode
resolveBoundary
(
ExCellCharged
& ecCell,
PropDirection
dir=
alongMomentum
)
const
= 0;
49
51
virtual
ExtrapolationCode
resolveBoundary
(
ExCellNeutral
& enCell,
PropDirection
dir=
alongMomentum
)
const
= 0;
52
54
virtual
ExtrapolationCode
resolvePosition
(
ExCellCharged
& ecCell,
PropDirection
dir=
alongMomentum
,
bool
noLoop=
false
)
const
= 0;
55
57
virtual
ExtrapolationCode
resolvePosition
(
ExCellNeutral
& enCell,
PropDirection
dir=
alongMomentum
,
bool
noLoop=
false
)
const
= 0;
58
60
virtual
const
TrackingGeometry
&
trackingGeometry
()
const
= 0;
61
62
protected
:
64
std::string
m_sopPrefix
;
65
std::string
m_sopPostfix
;
66
67
};
68
69
70
}
// end of namespace
71
72
#endif
// TRKEXINTERFACES_INAVIGATIONENGINE_H
73
ExtrapolationCell.h
NeutralParameters.h
TrackParameters.h
checker_macros.h
Define macros for attributes used to control the static checker.
Trk::ExtrapolationCell
templated class as an input-output object of the extrapolation, only public members,...
Definition
ExtrapolationCell.h:231
Trk::ExtrapolationCode
Definition
ExtrapolationCell.h:105
Trk::INavigationEngine
Extrapolation engine interface for Charged and Neutral parameters, it serves as the Master extrapolat...
Definition
INavigationEngine.h:37
Trk::INavigationEngine::resolvePosition
virtual ExtrapolationCode resolvePosition(ExCellCharged &ecCell, PropDirection dir=alongMomentum, bool noLoop=false) const =0
resolve the position - for charged particles
Trk::INavigationEngine::m_sopPrefix
std::string m_sopPrefix
< SCREEN output formatting (SOP) - unify amongst extrapolation engines
Definition
INavigationEngine.h:64
Trk::INavigationEngine::resolveBoundary
virtual ExtrapolationCode resolveBoundary(ExCellNeutral &enCell, PropDirection dir=alongMomentum) const =0
resolve the boundary situation - for neutral particles
Trk::INavigationEngine::resolvePosition
virtual ExtrapolationCode resolvePosition(ExCellNeutral &enCell, PropDirection dir=alongMomentum, bool noLoop=false) const =0
resolve the position - for neutral particles
Trk::INavigationEngine::interfaceID
static const InterfaceID & interfaceID()
AlgTool interface methods.
Definition
INavigationEngine.h:45
Trk::INavigationEngine::resolveBoundary
virtual ExtrapolationCode resolveBoundary(ExCellCharged &ecCell, PropDirection dir=alongMomentum) const =0
resolve the boundary situation - for charged particles
Trk::INavigationEngine::~INavigationEngine
virtual ~INavigationEngine()
Virtual destructor.
Definition
INavigationEngine.h:42
Trk::INavigationEngine::m_sopPostfix
std::string m_sopPostfix
prefix for screen output
Definition
INavigationEngine.h:65
Trk::INavigationEngine::trackingGeometry
virtual const TrackingGeometry & trackingGeometry() const =0
acces to tracking geometry
Trk::TrackingGeometry
The TrackingGeometry class is the owner of the constructed TrackingVolumes.
Definition
TrackingGeometry.h:68
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::alongMomentum
@ alongMomentum
Definition
PropDirection.h:20
Trk::IID_INavigationEngine
static const InterfaceID IID_INavigationEngine("INavigationEngine", 1, 0)
Trk::ExCellCharged
ExtrapolationCell< TrackParameters > ExCellCharged
Definition
IExtrapolationEngine.h:24
Trk::ExCellNeutral
ExtrapolationCell< NeutralParameters > ExCellNeutral
Definition
IExtrapolationEngine.h:25
Generated on
for ATLAS Offline Software by
1.17.0