Loading [MathJax]/extensions/tex2jax.js
ATLAS Offline Software
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
IRIO_OnTrackCreator.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 // IRIO_OnTrackCreator.h
6 // Header file for base class IRIO_OnTrackCreator
8 // (c) ATLAS Detector software
10 // Wolfgang.Liebig@cern.ch, Andreas.Salzburger@cern.ch
12 
13 #ifndef TRKTOOLS_IROTCREATOR_H
14 #define TRKTOOLS_IROTCREATOR_H
15 
16 #include "GaudiKernel/IAlgTool.h"
17 #include "GaudiKernel/ThreadLocalContext.h"
18 #include "TrkParameters/TrackParameters.h" // typedef
19 
20 namespace Trk {
21  class PrepRawData;
22  class RIO_OnTrack;
23 
24  static const InterfaceID IID_IRIO_OnTrackCreator("IRIO_OnTrackCreator",1,0);
25 
33  class IRIO_OnTrackCreator : virtual public IAlgTool {
34 
35  public:
36  /* if the AlgTool direct inheritance had been used, a cxx file
37  would be necessary, otherwise C++ will take default
38  constructor -> expect unresolved symbol
39  */
40 
41  virtual ~IRIO_OnTrackCreator() {}
42  static const InterfaceID& interfaceID()
43  { return IID_IRIO_OnTrackCreator; }
44 
48  virtual RIO_OnTrack* correct(
49  const PrepRawData& hit,
50  const TrackParameters& trk,
51  const EventContext& ctx) const = 0; // pure virtual
52  };
53 } // end of namespace
54 
55 #endif // TRKTOOLS_IROTCREATOR_H
56 
Trk::IRIO_OnTrackCreator::correct
virtual RIO_OnTrack * correct(const PrepRawData &hit, const TrackParameters &trk, const EventContext &ctx) const =0
abstract base method for the creation of RIO_OnTrack it takes a RIO (PrepRawData) and the given Track...
TrackParameters.h
Trk::RIO_OnTrack
Definition: RIO_OnTrack.h:70
Trk::ParametersBase
Definition: ParametersBase.h:55
Trk::IRIO_OnTrackCreator::interfaceID
static const InterfaceID & interfaceID()
The AlgTool InterfaceID.
Definition: IRIO_OnTrackCreator.h:42
Trk::PrepRawData
Definition: PrepRawData.h:62
Trk
Ensure that the ATLAS eigen extensions are properly loaded.
Definition: FakeTrackBuilder.h:9
Trk::MeasurementBaseType::RIO_OnTrack
@ RIO_OnTrack
Definition: MeasurementBase.h:49
Trk::IRIO_OnTrackCreator::~IRIO_OnTrackCreator
virtual ~IRIO_OnTrackCreator()
Definition: IRIO_OnTrackCreator.h:41
Trk::IRIO_OnTrackCreator
Interface class for transforming Trk::PrepRawData to Trk::RIO_OnTrack using a local track hypothesis.
Definition: IRIO_OnTrackCreator.h:33