ATLAS Offline Software
Trk2DDistanceFinder.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef TRKVERTEXSEEDFINDERUTILS_Trk2DDistanceFinder_H
6 #define TRKVERTEXSEEDFINDERUTILS_Trk2DDistanceFinder_H
7 
8 #include "GaudiKernel/ToolHandle.h"
10 #include "TrkVertexSeedFinderUtils/SeedFinderParamDefs.h" // For TwoPoints
12 #include <atomic>
13 
14 namespace Trk
15 {
16 
17  class MeasuredPerigee;
18  class Trk2dDistanceSeeder;
19 
38  class Trk2DDistanceFinder final: public extends<AthAlgTool, ITrkDistanceFinder>
39  {
40  public:
41  //default constructor due to Athena interface
42  Trk2DDistanceFinder(const std::string& t, const std::string& n, const IInterface* p);
43 
44  //destructor
46 
47  virtual StatusCode initialize() override;
48  virtual StatusCode finalize() override;
49 
52  virtual std::optional<TwoPoints>
53  CalculateMinimumDistance(const Trk::Perigee &, const Trk::Perigee &) const override final;
54 
56  virtual std::optional<TwoPoints>
57  CalculateMinimumDistance(const Trk::Track &, const Trk::Track &) const override final;
58 
59 
60  private:
61  ToolHandle<Trk2dDistanceSeeder> m_2ddistanceseeder;
62  mutable std::atomic<int> m_numberOfMinimizationFailures;
63  };
64 }
65 #endif
ITrkDistanceFinder.h
Trk::Track
The ATLAS Track class.
Definition: Tracking/TrkEvent/TrkTrack/TrkTrack/Track.h:73
Trk::ParametersT
Dummy class used to allow special convertors to be called for surfaces owned by a detector element.
Definition: EMErrorDetail.h:25
read_hist_ntuple.t
t
Definition: read_hist_ntuple.py:5
Trk::Trk2DDistanceFinder::~Trk2DDistanceFinder
virtual ~Trk2DDistanceFinder()
Trk::Trk2DDistanceFinder::m_numberOfMinimizationFailures
std::atomic< int > m_numberOfMinimizationFailures
Definition: Trk2DDistanceFinder.h:62
python.utils.AtlRunQueryDQUtils.p
p
Definition: AtlRunQueryDQUtils.py:210
beamspotman.n
n
Definition: beamspotman.py:731
Trk::Trk2DDistanceFinder::initialize
virtual StatusCode initialize() override
Definition: Trk2DDistanceFinder.cxx:40
Trk::Trk2DDistanceFinder::CalculateMinimumDistance
virtual std::optional< TwoPoints > CalculateMinimumDistance(const Trk::Perigee &, const Trk::Perigee &) const override final
method to do the calculation starting from two MeasuredPerigees
Definition: Trk2DDistanceFinder.cxx:62
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
AthAlgTool.h
Trk::Trk2DDistanceFinder
Definition: Trk2DDistanceFinder.h:39
Trk
Ensure that the ATLAS eigen extensions are properly loaded.
Definition: FakeTrackBuilder.h:9
SeedFinderParamDefs.h
Trk::Trk2DDistanceFinder::finalize
virtual StatusCode finalize() override
Definition: Trk2DDistanceFinder.cxx:52
Trk::Trk2DDistanceFinder::Trk2DDistanceFinder
Trk2DDistanceFinder(const std::string &t, const std::string &n, const IInterface *p)
Definition: Trk2DDistanceFinder.cxx:30
Trk::MeasuredPerigee
Perigee MeasuredPerigee
Definition: MeasuredPerigeeCnv_p1.h:23
Trk::Trk2DDistanceFinder::m_2ddistanceseeder
ToolHandle< Trk2dDistanceSeeder > m_2ddistanceseeder
Definition: Trk2DDistanceFinder.h:61