ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Tracking
Acts
ActsGPUPatternRecognition
src
DeviceTrkParamEstimationAlg.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2026 CERN for the benefit of the ATLAS collaboration
3
*/
4
#ifndef ACTSGPUPATTERNRECOGNITION_DEVICETRKPARAMESTIMATIONALG_H
5
#define ACTSGPUPATTERNRECOGNITION_DEVICETRKPARAMESTIMATIONALG_H
6
7
#include "
AthenaBaseComps/AthReentrantAlgorithm.h
"
8
#include "GaudiKernel/ToolHandle.h"
9
#include "
StoreGate/ReadHandleKey.h
"
10
#include "
StoreGate/WriteHandleKey.h
"
11
12
#include "
IDeviceTrkParamAlgProviderTool.h
"
13
#include "
AthDeviceInterfaces/ICopyTool.h
"
14
#include "
ActsGPUEvent/TracccMagField.h
"
15
#include "
ActsGPUEvent/TracccTrkParamCollection.h
"
16
#include "
ActsGPUEvent/TracccSeedCollection.h
"
17
#include "
ActsGPUEvent/TracccSpacepointCollection.h
"
18
#include "
ActsGPUEvent/TracccMeasurementCollection.h
"
19
20
template
<
typename
scalar_t>
21
using
unit
= detray::unit<scalar_t>;
22
23
namespace
ActsTrk
{
39
class
DeviceTrkParamEstimationAlg
:
public
AthReentrantAlgorithm
{
40
public
:
41
using
AthReentrantAlgorithm::AthReentrantAlgorithm;
42
44
virtual
StatusCode
initialize
()
override
;
46
virtual
StatusCode
execute
(
const
EventContext& ctx)
const override
;
47
48
private
:
49
50
virtual
StatusCode
configureTrkParamEstimation
();
51
53
ToolHandle<IDeviceTrkParamAlgProviderTool>
m_trkParamAlgProviderTool
{
54
this
,
"TrkParamAlgProviderTool"
,
""
,
55
"Tool providing the appropriate backend device track parameter estimation algorithm"
};
56
58
SG::ReadHandleKey<traccc::edm::spacepoint_collection::const_view>
m_inputSpacePointsKey
{
59
this
,
"InputTracccSpacepoints"
,
""
,
60
"Input traccc space points collection buffer"
};
61
63
SG::ReadHandleKey<traccc::edm::measurement_collection::const_view>
m_inputMeasKey
{
64
this
,
"InputTracccMeasurements"
,
""
,
65
"Input traccc measurements collection buffer"
};
66
68
SG::ReadHandleKey<traccc::edm::seed_collection::const_view>
m_inputSeedsKey
{
69
this
,
"InputTracccSeeds"
,
""
,
70
"Input traccc seeds collection buffer"
};
71
73
Gaudi::Property<std::string>
m_inputMagFieldKey
{
74
this
,
"InputTracccMagField"
,
""
,
75
"Input traccc inhom. mag. field"
};
76
79
SG::WriteHandleKey<traccc::bound_track_parameters_collection_types::buffer>
m_outputTrkParamKey
{
80
this
,
"OutputTracccTrackParameters"
,
""
,
81
"Output traccc track parameter collection buffer"
};
82
83
84
traccc::track_params_estimation_config
m_trkparam_config
;
85
const
traccc::magnetic_field*
m_deviceMagField
{
nullptr
};
86
87
};
88
89
}
// namespace ActsTrk
90
91
#endif
// ACTSGPUPATTERNRECOGNITION_DEVICETRKPARAMESTIMATIONALG_H
AthReentrantAlgorithm.h
unit
detray::unit< scalar_t > unit
Definition
DeviceTrackFindingAlg.cxx:17
ICopyTool.h
IDeviceTrkParamAlgProviderTool.h
ReadHandleKey.h
Property holding a SG store/key/clid from which a ReadHandle is made.
WriteHandleKey.h
Property holding a SG store/key/clid from which a WriteHandle is made.
TracccMagField.h
TracccMeasurementCollection.h
TracccSeedCollection.h
TracccSpacepointCollection.h
TracccTrkParamCollection.h
ActsTrk::DeviceTrkParamEstimationAlg
Algorithm executing traccc track parameter estimation on the GPU.
Definition
DeviceTrkParamEstimationAlg.h:39
ActsTrk::DeviceTrkParamEstimationAlg::m_inputMagFieldKey
Gaudi::Property< std::string > m_inputMagFieldKey
Definition
DeviceTrkParamEstimationAlg.h:73
ActsTrk::DeviceTrkParamEstimationAlg::m_inputSeedsKey
SG::ReadHandleKey< traccc::edm::seed_collection::const_view > m_inputSeedsKey
Definition
DeviceTrkParamEstimationAlg.h:68
ActsTrk::DeviceTrkParamEstimationAlg::m_trkParamAlgProviderTool
ToolHandle< IDeviceTrkParamAlgProviderTool > m_trkParamAlgProviderTool
Definition
DeviceTrkParamEstimationAlg.h:53
ActsTrk::DeviceTrkParamEstimationAlg::execute
virtual StatusCode execute(const EventContext &ctx) const override
Function executing the algorithm.
Definition
DeviceTrkParamEstimationAlg.cxx:43
ActsTrk::DeviceTrkParamEstimationAlg::initialize
virtual StatusCode initialize() override
Function initializing the algorithm.
Definition
DeviceTrkParamEstimationAlg.cxx:16
ActsTrk::DeviceTrkParamEstimationAlg::m_inputSpacePointsKey
SG::ReadHandleKey< traccc::edm::spacepoint_collection::const_view > m_inputSpacePointsKey
Definition
DeviceTrkParamEstimationAlg.h:58
ActsTrk::DeviceTrkParamEstimationAlg::m_inputMeasKey
SG::ReadHandleKey< traccc::edm::measurement_collection::const_view > m_inputMeasKey
Definition
DeviceTrkParamEstimationAlg.h:63
ActsTrk::DeviceTrkParamEstimationAlg::m_outputTrkParamKey
SG::WriteHandleKey< traccc::bound_track_parameters_collection_types::buffer > m_outputTrkParamKey
Definition
DeviceTrkParamEstimationAlg.h:79
ActsTrk::DeviceTrkParamEstimationAlg::m_trkparam_config
traccc::track_params_estimation_config m_trkparam_config
Definition
DeviceTrkParamEstimationAlg.h:84
ActsTrk::DeviceTrkParamEstimationAlg::m_deviceMagField
const traccc::magnetic_field * m_deviceMagField
Definition
DeviceTrkParamEstimationAlg.h:85
ActsTrk::DeviceTrkParamEstimationAlg::configureTrkParamEstimation
virtual StatusCode configureTrkParamEstimation()
Definition
DeviceTrkParamEstimationAlg.cxx:34
AthReentrantAlgorithm
An algorithm that can be simultaneously executed in multiple threads.
Definition
AthReentrantAlgorithm.h:74
SG::ReadHandleKey
Property holding a SG store/key/clid from which a ReadHandle is made.
Definition
StoreGate/StoreGate/ReadHandleKey.h:40
SG::WriteHandleKey
Property holding a SG store/key/clid from which a WriteHandle is made.
Definition
StoreGate/StoreGate/WriteHandleKey.h:40
ActsTrk
The AlignStoreProviderAlg loads the rigid alignment corrections and pipes them through the readout ge...
Definition
MdtCalibInput.h:31
Generated on
for ATLAS Offline Software by
1.17.0