ATLAS Offline Software
IPixelToTPIDTool.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 // IPixelToTPIDTool.h, (c) ATLAS Detector software
8 #ifndef TRK_IPIXELTOTPIDTOOL_H
9 #define TRK_IPIXELTOTPIDTOOL_H
10 
11 #include "GaudiKernel/EventContext.h"
12 #include "GaudiKernel/ThreadLocalContext.h"
13 #include "GaudiKernel/IAlgTool.h"
14 #include <vector>
15 
16 namespace Trk {
17  class Track;
18 
19  static const InterfaceID IID_IPixelToTPIDTool("Trk::IPixelToTPIDTool", 1, 0);
20 
26  class IPixelToTPIDTool : virtual public IAlgTool {
27  public:
28  static const InterfaceID& interfaceID( ) ;
29 
34  virtual float dEdx(const EventContext& ctx,
35  const Trk::Track& track,
36  int& nUsedHits,
37  int& nUsedIBLOverflowHits) const = 0;
38 
39  float dEdx(const Trk::Track& track,
40  int& nUsedHits,
41  int& nUsedIBLOverflowHits) const;
42 
43  virtual std::vector<float> getLikelihoods(const EventContext& ctx,
44  double dedx,
45  double p,
46  int nGoodPixels) const = 0;
47 
48  std::vector<float> getLikelihoods(double dedx,
49  double p,
50  int nGoodPixels) const;
51 
52  virtual float getMass(const EventContext& ctx,
53  double dedx,
54  double p,
55  int nGoodPixels) const = 0;
56 
57  float getMass(double dedx, double p, int nGoodPixels) const;
58  };
59 
60  inline const InterfaceID& Trk::IPixelToTPIDTool::interfaceID()
61  {
62  return IID_IPixelToTPIDTool;
63  }
64 
65 } // end of namespace
67 
68 #endif
Trk::IPixelToTPIDTool::interfaceID
static const InterfaceID & interfaceID()
Definition: IPixelToTPIDTool.h:60
Trk::Track
The ATLAS Track class.
Definition: Tracking/TrkEvent/TrkTrack/TrkTrack/Track.h:73
Trk::IPixelToTPIDTool::getMass
float getMass(double dedx, double p, int nGoodPixels) const
Trk::IPixelToTPIDTool::getMass
virtual float getMass(const EventContext &ctx, double dedx, double p, int nGoodPixels) const =0
Trk::IPixelToTPIDTool
abstract interface for identification of particles based on
Definition: IPixelToTPIDTool.h:26
IPixelToTPIDTool.icc
python.utils.AtlRunQueryDQUtils.p
p
Definition: AtlRunQueryDQUtils.py:210
Trk::IPixelToTPIDTool::getLikelihoods
std::vector< float > getLikelihoods(double dedx, double p, int nGoodPixels) const
Trk
Ensure that the ATLAS eigen extensions are properly loaded.
Definition: FakeTrackBuilder.h:9
Trk::IPixelToTPIDTool::dEdx
float dEdx(const Trk::Track &track, int &nUsedHits, int &nUsedIBLOverflowHits) const
Trk::IPixelToTPIDTool::getLikelihoods
virtual std::vector< float > getLikelihoods(const EventContext &ctx, double dedx, double p, int nGoodPixels) const =0
Trk::IPixelToTPIDTool::dEdx
virtual float dEdx(const EventContext &ctx, const Trk::Track &track, int &nUsedHits, int &nUsedIBLOverflowHits) const =0
particle identification function returning a probability.
Track
Definition: TriggerChamberClusterOnTrackCreator.h:21
xAOD::track
@ track
Definition: TrackingPrimitives.h:512