 |
ATLAS Offline Software
|
Go to the documentation of this file.
4 #ifndef ATHEXXRT_VECTORADDXRTEXAMPLEALG_H
5 #define ATHEXXRT_VECTORADDXRTEXAMPLEALG_H
17 #include "GaudiKernel/ServiceHandle.h"
34 using AthReentrantAlgorithm::AthReentrantAlgorithm;
49 this,
"DeviceMgmtSvc",
"AthXRT::DeviceMgmtSvc",
50 "The XRT device manager service to use"};
56 std::vector<std::shared_ptr<xrt::device>>
m_devices;
71 std::shared_ptr<xrt::device>
m_device =
nullptr;
74 std::unique_ptr<xrt::kernel>
m_kernel =
nullptr;
77 std::unique_ptr<xrt::run>
m_run =
nullptr;
92 #endif // ATHEXXRT_VECTORADDXRTEXAMPLEALG_H
std::vector< std::shared_ptr< xrt::device > > m_devices
virtual StatusCode initialize() override
static constexpr int s_krnl_param_in2
std::unique_ptr< xrt::run > m_run
Kernel run object.
An algorithm that can be simultaneously executed in multiple threads.
Base class to provide common infrastructure for handling multiprocess state transitions for FPGA....
Maintain a set of objects, one per slot.
std::shared_ptr< xrt::device > m_device
Device pointer.
::StatusCode StatusCode
StatusCode definition for legacy code.
virtual StatusCode initialize_worker() override
Initialization per process.
static constexpr int s_krnl_param_in1
static constexpr int s_krnl_param_size
virtual StatusCode execute(const EventContext &ctx) const override
ServiceHandle< AthXRT::IDeviceMgmtSvc > m_DeviceMgmtSvc
The XRT device manager to use.
static constexpr int s_krnl_param_out
std::unique_ptr< xrt::bo > m_bo_in1
Buffer objects.
std::unique_ptr< xrt::kernel > m_kernel
Kernel object.
std::unique_ptr< xrt::bo > m_bo_out
virtual StatusCode initialize_global() override
Glocal XRT initialization.
static constexpr char s_krnl_name[]
Maintain a set of objects, one per slot.
static constexpr int s_element_count
Example algorithm exercising the AthXRT core services.
SG::SlotSpecificObj< SlotData > m_slots
List of slot-specific data.
std::unique_ptr< xrt::bo > m_bo_in2