ATLAS Offline Software
IMuidCaloTrackStateOnSurface.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3 */
4 
6 // IMuidCaloTrackStateOnSurface
7 // tool interface to allocate scattering centres as TrackStateOnSurface
8 // objects representing the Coulomb scattering and energy deposit between
9 // the InDet and MuonSpectrometer entrance.
10 //
12 
13 #ifndef MUIDINTERFACES_IMUIDCALOTRACKSTATEONSURFACE_H
14 #define MUIDINTERFACES_IMUIDCALOTRACKSTATEONSURFACE_H
15 
16 #include <vector>
17 
18 #include "GaudiKernel/IAlgTool.h"
20 
21 namespace Trk {
22  class TrackStateOnSurface;
23 }
24 
25 namespace Rec {
26 
34  class IMuidCaloTrackStateOnSurface : virtual public IAlgTool {
35  public:
37  virtual ~IMuidCaloTrackStateOnSurface() = default;
38 
40  static const InterfaceID& interfaceID() {
41  static const InterfaceID IID_IMuidCaloTrackStateOnSurface("IMuidCaloTrackStateOnSurface", 1, 0);
42  return IID_IMuidCaloTrackStateOnSurface;
43  }
44 
48  virtual std::vector<std::unique_ptr<const Trk::TrackStateOnSurface>> caloTSOS(const EventContext& ctx,
49  const Trk::TrackParameters& parameters) const = 0;
50 
54  virtual std::unique_ptr<Trk::TrackStateOnSurface> innerTSOS(const EventContext& ctx,
55  const Trk::TrackParameters& parameters) const = 0;
56  virtual std::unique_ptr<Trk::TrackStateOnSurface> outerTSOS(const EventContext& ctx,
57  const Trk::TrackParameters& parameters) const = 0;
58 
64  virtual std::unique_ptr<Trk::TrackStateOnSurface> middleTSOS(const EventContext& ctx,
65  const Trk::TrackParameters& middleParameters,
66  const Trk::TrackParameters* innerParameters = nullptr,
67  const Trk::TrackParameters* outerParameters = nullptr) const = 0;
68  };
69 
70 } // namespace Rec
71 
72 #endif // MUIDINTERFACES_IMUIDCALOTRACKSTATEONSURFACE_H
Rec::IMuidCaloTrackStateOnSurface
Definition: IMuidCaloTrackStateOnSurface.h:34
Rec::IMuidCaloTrackStateOnSurface::outerTSOS
virtual std::unique_ptr< Trk::TrackStateOnSurface > outerTSOS(const EventContext &ctx, const Trk::TrackParameters &parameters) const =0
TrackParameters.h
Rec::IMuidCaloTrackStateOnSurface::innerTSOS
virtual std::unique_ptr< Trk::TrackStateOnSurface > innerTSOS(const EventContext &ctx, const Trk::TrackParameters &parameters) const =0
IMuidCaloTrackStateOnSurface interface: to get individually the scattering TSOS'es representing the c...
Rec
Name: MuonSpContainer.h Package : offline/Reconstruction/MuonIdentification/muonEvent.
Definition: FakeTrackBuilder.h:10
Rec::IMuidCaloTrackStateOnSurface::middleTSOS
virtual std::unique_ptr< Trk::TrackStateOnSurface > middleTSOS(const EventContext &ctx, const Trk::TrackParameters &middleParameters, const Trk::TrackParameters *innerParameters=nullptr, const Trk::TrackParameters *outerParameters=nullptr) const =0
IMuidCaloTrackStateOnSurface interface: to get the energy deposit TSOS representing the calorimeter.
Trk::ParametersBase
Definition: ParametersBase.h:55
Rec::IMuidCaloTrackStateOnSurface::interfaceID
static const InterfaceID & interfaceID()
AlgTool and IAlgTool interface methods.
Definition: IMuidCaloTrackStateOnSurface.h:40
Trk
Ensure that the ATLAS eigen extensions are properly loaded.
Definition: FakeTrackBuilder.h:9
Rec::IMuidCaloTrackStateOnSurface::caloTSOS
virtual std::vector< std::unique_ptr< const Trk::TrackStateOnSurface > > caloTSOS(const EventContext &ctx, const Trk::TrackParameters &parameters) const =0
IMuidCaloTrackStateOnSurface interface: to get the 3 scattering and energy deposit TSOS'es representi...
physics_parameters.parameters
parameters
Definition: physics_parameters.py:144
Rec::IMuidCaloTrackStateOnSurface::~IMuidCaloTrackStateOnSurface
virtual ~IMuidCaloTrackStateOnSurface()=default
Virtual destructor.