ATLAS Offline Software
IExtrapolationEngine.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
3 */
4 
6 // IExtrapolationEngine.h, (c) ATLAS Detector software
8 
9 #ifndef TRKEXINTERFACES_IEXTRAPOLATIONENGINE_H
10 #define TRKEXINTERFACES_IEXTRAPOLATIONENGINE_H
11 
12 // Gaudi
13 #include "GaudiKernel/IAlgTool.h"
14 // Trk
19 #include "CxxUtils/checker_macros.h"
20 namespace Trk {
21 
22  static const InterfaceID IID_IExtrapolationEngine("IExtrapolationEngine", 1, 0);
23 
26 
36  class IExtrapolationEngine : virtual public IAlgTool {
37  public:
38 
41 
43  static const InterfaceID& interfaceID() { return IID_IExtrapolationEngine; }
44 
47  const Surface* sf = 0,
48  const BoundaryCheck& bcheck = true) const = 0;
49 
50 
53  const Surface* sf = 0,
54  const BoundaryCheck& bcheck = true) const = 0;
55 
56 
58  virtual GeometryType geometryType() const = 0;
59 
60  protected:
61 
63  std::string m_sopPrefix;
64  std::string m_sopPostfix;
65 
66  };
67 
68 
69 } // end of namespace
70 
71 #endif // TRKEXINTERFACES_IEXTRAPOLATIONENGINE_H
72 
TrackParameters.h
GeometrySignature.h
Trk::IExtrapolationEngine::interfaceID
static const InterfaceID & interfaceID()
AlgTool interface methods.
Definition: IExtrapolationEngine.h:43
Trk::IExtrapolationEngine::geometryType
virtual GeometryType geometryType() const =0
define for which GeometrySignature this extrapolator is valid
NeutralParameters.h
Trk::ExCellCharged
ExtrapolationCell< TrackParameters > ExCellCharged
Definition: IExtrapolationEngine.h:24
Trk::IExtrapolationEngine::m_sopPostfix
std::string m_sopPostfix
prefix for screen output
Definition: IExtrapolationEngine.h:64
Trk::IExtrapolationEngine::m_sopPrefix
std::string m_sopPrefix
< SCREEN output formatting (SOP) - unify amongst extrapolation engines
Definition: IExtrapolationEngine.h:63
Trk::ExtrapolationCode
Definition: ExtrapolationCell.h:105
Trk
Ensure that the ATLAS eigen extensions are properly loaded.
Definition: FakeTrackBuilder.h:9
Trk::IExtrapolationEngine::~IExtrapolationEngine
virtual ~IExtrapolationEngine()
Virtual destructor.
Definition: IExtrapolationEngine.h:40
Trk::ExCellNeutral
ExtrapolationCell< NeutralParameters > ExCellNeutral
Definition: IExtrapolationEngine.h:25
Trk::IExtrapolationEngine::extrapolate
virtual ExtrapolationCode extrapolate(ExCellCharged &ecCharged, const Surface *sf=0, const BoundaryCheck &bcheck=true) const =0
charged extrapolation
Trk::ExtrapolationCell
Definition: ExtrapolationCell.h:231
Trk::IExtrapolationEngine
Definition: IExtrapolationEngine.h:36
Trk::IExtrapolationEngine::extrapolate
virtual ExtrapolationCode extrapolate(ExCellNeutral &ecNeutral, const Surface *sf=0, const BoundaryCheck &bcheck=true) const =0
neutral extrapolation
mapkey::sf
@ sf
Definition: TElectronEfficiencyCorrectionTool.cxx:38
Trk::BoundaryCheck
Definition: BoundaryCheck.h:51
ExtrapolationCell.h
Trk::GeometryType
GeometryType
Definition: GeometrySignature.h:37
Trk::Surface
Definition: Tracking/TrkDetDescr/TrkSurfaces/TrkSurfaces/Surface.h:75
checker_macros.h
Define macros for attributes used to control the static checker.