ATLAS Offline Software
IInDetTestPixelLayerTool.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef IInDetTestPixelLayerTool_H
6 #define IInDetTestPixelLayerTool_H
7 #include "GaudiKernel/AlgTool.h"
8 #include "GaudiKernel/ThreadLocalContext.h" //for Gaudi::Hive::currentContext()
10 #include <string>
11 #include <vector>
12 
13 namespace Trk {
14 class Track;
15 class TrackParticleBase;
16 }
17 namespace InDet {
18 class TrackStateOnPixelLayerInfo;
19 }
20 
21 class EventContext;
22 
23 namespace InDet {
24 
25 static const InterfaceID
26  IID_IInDetTestPixelLayerTool("InDet::IInDetTestPixelLayerTool", 1, 0);
27 
28 class IInDetTestPixelLayerTool : virtual public IAlgTool
29 {
30 
31 public:
32  static const InterfaceID& interfaceID()
33  {
34  return IID_IInDetTestPixelLayerTool;
35  };
36 
37  virtual bool expectHitInPixelLayer(const EventContext& ctx,
39  int pixel_layer) const = 0;
40  virtual bool expectHitInPixelLayer(const EventContext& ctx,
41  const Trk::Track*,
42  int pixel_layer,
43  bool checkBarrelOnly = false) const = 0;
44  virtual bool expectHitInPixelLayer(const EventContext& ctx,
45  const Trk::TrackParameters* trackpar,
46  int pixel_layer,
47  bool checkBarrelOnly = false) const = 0;
48 
49  bool expectHitInInnermostPixelLayer(const EventContext& ctx,
50  const Trk::Track* track) const
51  {
52  return expectHitInPixelLayer(ctx, track, 0, true);
53  }
55  {
57  Gaudi::Hive::currentContext(), track);
58  }
60  {
61  return expectHitInPixelLayer(
62  Gaudi::Hive::currentContext(), trackpar, 0, true);
63  }
64 
65  bool expectHitInNextToInnermostPixelLayer(const EventContext& ctx,
66  const Trk::Track* track) const
67  {
68  return expectHitInPixelLayer(ctx, track, 1, true);
69  }
71  {
73  Gaudi::Hive::currentContext(), track);
74  }
76  {
77  return expectHitInPixelLayer(
78  Gaudi::Hive::currentContext(), trackpar, 1, true);
79  }
80 
81 
82  virtual bool expectHit(const Trk::TrackParameters* trackpar) const = 0;
83 
86  std::vector<TrackStateOnPixelLayerInfo>& infoList) const = 0;
88  const Trk::Track*,
89  std::vector<TrackStateOnPixelLayerInfo>& infoList) const = 0;
91  const Trk::TrackParameters* trackpar,
92  std::vector<TrackStateOnPixelLayerInfo>& infoList,
93  int pixel_layer = -1,
94  bool checkBarrelOnly = false) const = 0;
95 
97  std::vector<TrackStateOnPixelLayerInfo>& infoList) const
98  {
99  return getTrackStateOnPixelLayerInfo(trackpar, infoList, 0, true);
100  }
101 
102  virtual double getFracGood(const Trk::TrackParticleBase* trackpar,
103  int pixel_layer) const = 0;
104  virtual double getFracGood(const Trk::TrackParameters* trackpar,
105  int pixel_layer) const = 0;
106 };
107 
108 } // end namespace
109 
110 #endif
InDet::IInDetTestPixelLayerTool::expectHitInInnermostPixelLayer
bool expectHitInInnermostPixelLayer(const EventContext &ctx, const Trk::Track *track) const
Definition: IInDetTestPixelLayerTool.h:49
InDet::IInDetTestPixelLayerTool::getTrackStateOnPixelLayerInfo
virtual bool getTrackStateOnPixelLayerInfo(const Trk::TrackParameters *trackpar, std::vector< TrackStateOnPixelLayerInfo > &infoList, int pixel_layer=-1, bool checkBarrelOnly=false) const =0
InDet::IInDetTestPixelLayerTool::getTrackStateOnPixelLayerInfo
virtual bool getTrackStateOnPixelLayerInfo(const Trk::Track *, std::vector< TrackStateOnPixelLayerInfo > &infoList) const =0
TrackParameters.h
Trk::Track
The ATLAS Track class.
Definition: Tracking/TrkEvent/TrkTrack/TrkTrack/Track.h:73
InDet::IInDetTestPixelLayerTool::expectHit
virtual bool expectHit(const Trk::TrackParameters *trackpar) const =0
InDet
DUMMY Primary Vertex Finder.
Definition: VP1ErrorUtils.h:36
InDet::IInDetTestPixelLayerTool::expectHitInNextToInnermostPixelLayer
bool expectHitInNextToInnermostPixelLayer(const EventContext &ctx, const Trk::Track *track) const
Definition: IInDetTestPixelLayerTool.h:65
InDet::IInDetTestPixelLayerTool::getFracGood
virtual double getFracGood(const Trk::TrackParameters *trackpar, int pixel_layer) const =0
Trk::TrackParticleBase
Definition: TrackParticleBase.h:41
InDet::IInDetTestPixelLayerTool::expectHitInPixelLayer
virtual bool expectHitInPixelLayer(const EventContext &ctx, const Trk::TrackParticleBase *, int pixel_layer) const =0
InDet::IInDetTestPixelLayerTool::getTrackStateOnPixelLayerInfo
virtual bool getTrackStateOnPixelLayerInfo(const Trk::TrackParticleBase *, std::vector< TrackStateOnPixelLayerInfo > &infoList) const =0
Trk::ParametersBase
Definition: ParametersBase.h:55
InDet::IInDetTestPixelLayerTool::expectHitInNextToInnermostPixelLayer
bool expectHitInNextToInnermostPixelLayer(const Trk::TrackParameters *trackpar) const
Definition: IInDetTestPixelLayerTool.h:75
InDet::IInDetTestPixelLayerTool::getTrackStateOnInnermostPixelLayerInfo
bool getTrackStateOnInnermostPixelLayerInfo(const Trk::TrackParameters *trackpar, std::vector< TrackStateOnPixelLayerInfo > &infoList) const
Definition: IInDetTestPixelLayerTool.h:96
Trk
Ensure that the ATLAS eigen extensions are properly loaded.
Definition: FakeTrackBuilder.h:9
InDet::IInDetTestPixelLayerTool::expectHitInNextToInnermostPixelLayer
bool expectHitInNextToInnermostPixelLayer(const Trk::Track *track) const
Definition: IInDetTestPixelLayerTool.h:70
InDet::IInDetTestPixelLayerTool
Definition: IInDetTestPixelLayerTool.h:29
InDet::IInDetTestPixelLayerTool::expectHitInPixelLayer
virtual bool expectHitInPixelLayer(const EventContext &ctx, const Trk::TrackParameters *trackpar, int pixel_layer, bool checkBarrelOnly=false) const =0
InDet::IInDetTestPixelLayerTool::expectHitInInnermostPixelLayer
bool expectHitInInnermostPixelLayer(const Trk::Track *track) const
Definition: IInDetTestPixelLayerTool.h:54
Track
Definition: TriggerChamberClusterOnTrackCreator.h:21
InDet::IInDetTestPixelLayerTool::getFracGood
virtual double getFracGood(const Trk::TrackParticleBase *trackpar, int pixel_layer) const =0
xAOD::track
@ track
Definition: TrackingPrimitives.h:512
InDet::IInDetTestPixelLayerTool::expectHitInInnermostPixelLayer
bool expectHitInInnermostPixelLayer(const Trk::TrackParameters *trackpar) const
Definition: IInDetTestPixelLayerTool.h:59
InDet::IInDetTestPixelLayerTool::interfaceID
static const InterfaceID & interfaceID()
Definition: IInDetTestPixelLayerTool.h:32
InDet::IInDetTestPixelLayerTool::expectHitInPixelLayer
virtual bool expectHitInPixelLayer(const EventContext &ctx, const Trk::Track *, int pixel_layer, bool checkBarrelOnly=false) const =0