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

#include <acts/blob/sPHENIX/Examples/Algorithms/Alignment/include/ActsExamples/Alignment/AlignmentAlgorithm.hpp>

+ Inheritance diagram for ActsExamples::AlignmentAlgorithm:
+ Collaboration diagram for ActsExamples::AlignmentAlgorithm:

Classes

class  AlignmentFunction
 
struct  Config
 

Public Types

using AlignmentResult = Acts::Result< ActsAlignment::AlignmentResult >
 
using AlignmentParameters = std::unordered_map< Acts::DetectorElementBase *, Acts::Transform3 >
 
using TrackFitterOptions = Acts::KalmanFitterOptions< Acts::VectorMultiTrajectory >
 

Public Member Functions

 AlignmentAlgorithm (Config cfg, Acts::Logging::Level lvl)
 
ActsExamples::ProcessCode execute (const ActsExamples::AlgorithmContext &ctx) const override
 
- 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.
 

Static Public Member Functions

static std::shared_ptr
< AlignmentFunction
makeAlignmentFunction (std::shared_ptr< const Acts::TrackingGeometry > trackingGeometry, std::shared_ptr< const Acts::MagneticFieldProvider > magneticField)
 

Private Attributes

Config m_cfg
 
ReadDataHandle
< MeasurementContainer
m_inputMeasurements
 
ReadDataHandle
< IndexSourceLinkContainer
m_inputSourceLinks
 
ReadDataHandle
< TrackParametersContainer
m_inputInitialTrackParameters
 
ReadDataHandle
< ProtoTrackContainer
m_inputProtoTracks
 
WriteDataHandle
< AlignmentParameters
m_outputAlignmentParameters
 

Additional Inherited Members

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

Detailed Description

Definition at line 27 of file AlignmentAlgorithm.hpp.

View newest version in sPHENIX GitHub at line 27 of file AlignmentAlgorithm.hpp

Member Typedef Documentation

Definition at line 31 of file AlignmentAlgorithm.hpp.

View newest version in sPHENIX GitHub at line 31 of file AlignmentAlgorithm.hpp

Definition at line 29 of file AlignmentAlgorithm.hpp.

View newest version in sPHENIX GitHub at line 29 of file AlignmentAlgorithm.hpp

Alignment function that takes sets of input measurements, initial trackstate and alignment options and returns some alignment-specific result.

Definition at line 36 of file AlignmentAlgorithm.hpp.

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

Constructor & Destructor Documentation

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

Constructor of the alignment algorithm

Parameters
cfgis the config struct to configure the algorithm
levelis the logging level

Definition at line 19 of file AlignmentAlgorithm.cpp.

View newest version in sPHENIX GitHub at line 19 of file AlignmentAlgorithm.cpp

References ActsExamples::WriteDataHandle< T >::initialize(), ActsExamples::ReadDataHandle< T >::initialize(), ActsExamples::AlignmentAlgorithm::Config::inputInitialTrackParameters, ActsExamples::AlignmentAlgorithm::Config::inputMeasurements, ActsExamples::AlignmentAlgorithm::Config::inputProtoTracks, ActsExamples::AlignmentAlgorithm::Config::inputSourceLinks, m_cfg, m_inputInitialTrackParameters, m_inputMeasurements, m_inputProtoTracks, m_inputSourceLinks, m_outputAlignmentParameters, and ActsExamples::AlignmentAlgorithm::Config::outputAlignmentParameters.

+ Here is the call graph for this function:

Member Function Documentation

ActsExamples::ProcessCode ActsExamples::AlignmentAlgorithm::execute ( const ActsExamples::AlgorithmContext ctx) const
overridevirtual

Framework execute method of the alignment algorithm

Parameters
ctxis the algorithm context that holds event-wise information
Returns
a process code to steer the algorithm flow

Implements ActsExamples::IAlgorithm.

Definition at line 48 of file AlignmentAlgorithm.cpp.

View newest version in sPHENIX GitHub at line 48 of file AlignmentAlgorithm.cpp

References ACTS_DEBUG, ACTS_FATAL, ACTS_VERBOSE, ACTS_WARNING, ActsExamples::AlgorithmContext::calibContext, ActsExamples::MeasurementCalibratorAdapter::calibrate(), conf::extensions, ActsExamples::AlgorithmContext::geoContext, m_cfg(), ActsExamples::AlgorithmContext::magFieldContext, testing::internal::move(), pSurface, and SUCCESS.

+ Here is the call graph for this function:

std::shared_ptr< ActsExamples::AlignmentAlgorithm::AlignmentFunction > ActsExamples::AlignmentAlgorithm::makeAlignmentFunction ( std::shared_ptr< const Acts::TrackingGeometry trackingGeometry,
std::shared_ptr< const Acts::MagneticFieldProvider magneticField 
)
static

Create the alignment function implementation.

The magnetic field is intentionally given by-value since the variant contains shared_ptr anyway.

Definition at line 49 of file AlignmentAlgorithmFunction.cpp.

View newest version in sPHENIX GitHub at line 49 of file AlignmentAlgorithmFunction.cpp

References alignment(), cfg, testing::internal::move(), Acts::Test::navigator, and propagation_timing::stepper.

+ Here is the call graph for this function:

Member Data Documentation

Config ActsExamples::AlignmentAlgorithm::m_cfg
private

Definition at line 101 of file AlignmentAlgorithm.hpp.

View newest version in sPHENIX GitHub at line 101 of file AlignmentAlgorithm.hpp

Referenced by AlignmentAlgorithm().

ReadDataHandle<TrackParametersContainer> ActsExamples::AlignmentAlgorithm::m_inputInitialTrackParameters
private
Initial value:
{
this, "InputInitialTrackParameters"}

Definition at line 107 of file AlignmentAlgorithm.hpp.

View newest version in sPHENIX GitHub at line 107 of file AlignmentAlgorithm.hpp

Referenced by AlignmentAlgorithm().

ReadDataHandle<MeasurementContainer> ActsExamples::AlignmentAlgorithm::m_inputMeasurements
private
Initial value:
{this,
"InputMeasurements"}

Definition at line 103 of file AlignmentAlgorithm.hpp.

View newest version in sPHENIX GitHub at line 103 of file AlignmentAlgorithm.hpp

Referenced by AlignmentAlgorithm().

ReadDataHandle<ProtoTrackContainer> ActsExamples::AlignmentAlgorithm::m_inputProtoTracks
private
Initial value:
{this,
"InputProtoTracks"}

Definition at line 109 of file AlignmentAlgorithm.hpp.

View newest version in sPHENIX GitHub at line 109 of file AlignmentAlgorithm.hpp

Referenced by AlignmentAlgorithm().

ReadDataHandle<IndexSourceLinkContainer> ActsExamples::AlignmentAlgorithm::m_inputSourceLinks
private
Initial value:
{
this, "InputSourceLinks"}

Definition at line 105 of file AlignmentAlgorithm.hpp.

View newest version in sPHENIX GitHub at line 105 of file AlignmentAlgorithm.hpp

Referenced by AlignmentAlgorithm().

WriteDataHandle<AlignmentParameters> ActsExamples::AlignmentAlgorithm::m_outputAlignmentParameters
private
Initial value:
{
this, "OutputAlignmentParameters"}

Definition at line 111 of file AlignmentAlgorithm.hpp.

View newest version in sPHENIX GitHub at line 111 of file AlignmentAlgorithm.hpp

Referenced by AlignmentAlgorithm().


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