12#ifndef RTCTK_EXAMPLEDATATASK_COMPUTATION_HPP
13#define RTCTK_EXAMPLEDATATASK_COMPUTATION_HPP
29using TopicType = rtctk::exampleTopic::ScaoLoopTopic;
34class Computation :
public dataTask::ComputationBase<TopicType> {
53 const std::string& shm_name,
56 std::chrono::milliseconds sample_timeout,
57 std::optional<numapp::NumaPolicies> thread_policies,
66 void CopyData(
size_t sample_idx,
const TopicType& sample)
noexcept override;
68 void Compute()
override;
70 void Publish()
override;
A buffer class representing 2D matrix data.
Definition matrixBuffer.hpp:27
Container class that holds services of any type.
Definition serviceContainer.hpp:38
TopicType TopicType
Definition computationBase.hpp:184
Definition computation.hpp:35
rtctk::componentFramework::MatrixBuffer< T > MatrixBuffer
Definition computation.hpp:40
rtctk::componentFramework::ServiceContainer ServiceContainer
Definition computation.hpp:37
void SetSlopesToModesMatrix(MatrixBuffer< float > &&s2m_matrix)
Computation()
Definition computation.hpp:38
Base class for Data Task computations.
Declaration of the MatrixBuffer template class used in APIs.
Definition businessLogic.cpp:26
std::vector< decltype(decltype(TopicType::wfs)::slopes)> BufferType
Definition computation.hpp:33
rtctk::exampleTopic::ScaoLoopTopic TopicType
Definition computation.hpp:30
A container that can hold any type of service.
Definition computation.hpp:47
virtual ~ResultIf()=default
virtual void OnResultAvailable(const Result &result)=0
Definition computation.hpp:42
std::vector< float > avg_modes
Definition computation.hpp:44
std::vector< float > avg_slopes
Definition computation.hpp:43
WfsLoopBaseTopic< N_SUBAPS > wfs
Definition topics.hpp:37
Common topic definitions used in various examples.