5#ifndef ACTSTRKFINDING_AMBIGUITYRESOLUTIONALG_H
6#define ACTSTRKFINDING_AMBIGUITYRESOLUTIONALG_H 1
12#include "GaudiKernel/ToolHandle.h"
13#include "Gaudi/Property.h"
17#include "Acts/Utilities/Logger.hpp"
18#include "Acts/AmbiguityResolution/GreedyAmbiguityResolution.hpp"
42 ISvcLocator *pSvcLocator);
45 virtual StatusCode
finalize()
override;
46 virtual StatusCode
execute(
const EventContext &ctx)
const override;
49 ToolHandle< GenericMonitoringTool >
m_monTool {
this,
"MonTool",
"",
"Monitoring tool"};
52 {
this,
"TracksLocation",
"",
"Input track collection"};
54 {
this,
"ResolvedTracksLocation",
"",
"Ambiguity resolved output track collection"};
57 {
this,
"MaximumSharedHits", 3u,
"Maximum number of shared hits per track."};
59 {
this,
"MaximumIterations", 10000u,
"Maximum number of iterations to resolve ambiguities among all tracks."};
61 {
this,
"NMeasurementsMin", 7u,
"Minimum number of measurements per track."};
62 Gaudi::Property<bool>
m_countSharedHits{
this,
"countSharedHits",
true,
"add shared hit flags to tracks"};
64 std::unique_ptr<Acts::GreedyAmbiguityResolution>
m_ambi {
nullptr};
Property holding a SG store/key/clid from which a ReadHandle is made.
Property holding a SG store/key/clid from which a WriteHandle is made.
ToolHandle< GenericMonitoringTool > m_monTool
Gaudi::Property< unsigned int > m_maximumSharedHits
std::array< std::atomic< unsigned int >, kNStat > m_stat ATLAS_THREAD_SAFE
virtual StatusCode finalize() override
std::unique_ptr< Acts::GreedyAmbiguityResolution > m_ambi
SG::ReadHandleKey< ActsTrk::TrackContainer > m_tracksKey
SG::WriteHandleKey< ActsTrk::TrackContainer > m_resolvedTracksKey
Gaudi::Property< bool > m_countSharedHits
virtual StatusCode initialize() override
Gaudi::Property< unsigned int > m_maximumIterations
AmbiguityResolutionAlg(const std::string &name, ISvcLocator *pSvcLocator)
Gaudi::Property< unsigned int > m_nMeasurementsMin
virtual StatusCode execute(const EventContext &ctx) const override
An algorithm that can be simultaneously executed in multiple threads.
Property holding a SG store/key/clid from which a ReadHandle is made.
Property holding a SG store/key/clid from which a WriteHandle is made.
The AlignStoreProviderAlg loads the rigid alignment corrections and pipes them through the readout ge...