Analysis Software
Documentation for sPHENIX simulation software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
ActsExamples::GreedyAmbiguityResolutionAlgorithm Exception Referencefinal

#include <acts/blob/sPHENIX/Examples/Algorithms/AmbiguityResolution/include/ActsExamples/AmbiguityResolution/GreedyAmbiguityResolutionAlgorithm.hpp>

+ Inheritance diagram for ActsExamples::GreedyAmbiguityResolutionAlgorithm:
+ Collaboration diagram for ActsExamples::GreedyAmbiguityResolutionAlgorithm:

Classes

struct  Config
 

Public Member Functions

 GreedyAmbiguityResolutionAlgorithm (Config cfg, Acts::Logging::Level lvl)
 
ProcessCode execute (const AlgorithmContext &ctx) const final
 
const Configconfig () const
 Const access to the config.
 
- Public Member Functions inherited from ActsExamples::IAlgorithm
 IAlgorithm (std::string name, Acts::Logging::Level level=Acts::Logging::INFO)
 
std::string name () const override
 The algorithm name.
 
ProcessCode internalExecute (const AlgorithmContext &context) final
 
ProcessCode initialize () override
 Initialize the algorithm.
 
ProcessCode finalize () override
 Finalize the algorithm.
 

Private Attributes

Config m_cfg
 
Acts::GreedyAmbiguityResolution m_core
 
ReadDataHandle
< ConstTrackContainer
m_inputTracks {this, "InputTracks"}
 
WriteDataHandle
< ConstTrackContainer
m_outputTracks {this, "OutputTracks"}
 

Additional Inherited Members

- Protected Member Functions inherited from ActsExamples::IAlgorithm
const Acts::Loggerlogger () const
 

Detailed Description

Evicts tracks that seem to be duplicated.

The implementation works as follows: 1) Calculate shared hits per track. 2) If the maximum shared hits criteria is met, we are done. This is the configurable amount of shared hits we are ok with in our experiment. 3) Else, remove the track with the highest relative shared hits (i.e. shared hits / hits). 4) Back to square 1.

Definition at line 36 of file GreedyAmbiguityResolutionAlgorithm.hpp.

View newest version in sPHENIX GitHub at line 36 of file GreedyAmbiguityResolutionAlgorithm.hpp

Constructor & Destructor Documentation

ActsExamples::GreedyAmbiguityResolutionAlgorithm::GreedyAmbiguityResolutionAlgorithm ( Config  cfg,
Acts::Logging::Level  lvl 
)

Construct the ambiguity resolution algorithm.

Parameters
cfgis the algorithm configuration
lvlis the logging level

Definition at line 51 of file GreedyAmbiguityResolutionAlgorithm.cpp.

View newest version in sPHENIX GitHub at line 51 of file GreedyAmbiguityResolutionAlgorithm.cpp

References ActsExamples::WriteDataHandle< T >::initialize(), ActsExamples::ReadDataHandle< T >::initialize(), ActsExamples::GreedyAmbiguityResolutionAlgorithm::Config::inputTracks, m_cfg, m_inputTracks, m_outputTracks, and ActsExamples::GreedyAmbiguityResolutionAlgorithm::Config::outputTracks.

+ Here is the call graph for this function:

Member Function Documentation

const Config& ActsExamples::GreedyAmbiguityResolutionAlgorithm::config ( ) const
inline

Const access to the config.

Definition at line 66 of file GreedyAmbiguityResolutionAlgorithm.hpp.

View newest version in sPHENIX GitHub at line 66 of file GreedyAmbiguityResolutionAlgorithm.hpp

References m_cfg.

ActsExamples::ProcessCode ActsExamples::GreedyAmbiguityResolutionAlgorithm::execute ( const AlgorithmContext ctx) const
finalvirtual

Run the ambiguity resolution algorithm.

Parameters
cxtis the algorithm context with event information
Returns
a process code indication success or failure

Implements ActsExamples::IAlgorithm.

Definition at line 68 of file GreedyAmbiguityResolutionAlgorithm.cpp.

View newest version in sPHENIX GitHub at line 68 of file GreedyAmbiguityResolutionAlgorithm.cpp

References ACTS_INFO, ACTS_VERBOSE, testing::internal::move(), truth_tracking_gsf_refitting::outputTracks, filter::state, SUCCESS, and tracks().

+ Here is the call graph for this function:

Member Data Documentation

Config ActsExamples::GreedyAmbiguityResolutionAlgorithm::m_cfg
private

Definition at line 69 of file GreedyAmbiguityResolutionAlgorithm.hpp.

View newest version in sPHENIX GitHub at line 69 of file GreedyAmbiguityResolutionAlgorithm.hpp

Referenced by config(), and GreedyAmbiguityResolutionAlgorithm().

Acts::GreedyAmbiguityResolution ActsExamples::GreedyAmbiguityResolutionAlgorithm::m_core
private

Definition at line 70 of file GreedyAmbiguityResolutionAlgorithm.hpp.

View newest version in sPHENIX GitHub at line 70 of file GreedyAmbiguityResolutionAlgorithm.hpp

ReadDataHandle<ConstTrackContainer> ActsExamples::GreedyAmbiguityResolutionAlgorithm::m_inputTracks {this, "InputTracks"}
private

Definition at line 72 of file GreedyAmbiguityResolutionAlgorithm.hpp.

View newest version in sPHENIX GitHub at line 72 of file GreedyAmbiguityResolutionAlgorithm.hpp

Referenced by GreedyAmbiguityResolutionAlgorithm().

WriteDataHandle<ConstTrackContainer> ActsExamples::GreedyAmbiguityResolutionAlgorithm::m_outputTracks {this, "OutputTracks"}
private

Definition at line 73 of file GreedyAmbiguityResolutionAlgorithm.hpp.

View newest version in sPHENIX GitHub at line 73 of file GreedyAmbiguityResolutionAlgorithm.hpp

Referenced by GreedyAmbiguityResolutionAlgorithm().


The documentation for this exception was generated from the following files: