MayaFlux 0.5.0
Digital-First Multimedia Processing Framework
Loading...
Searching...
No Matches

◆ to_data_variant() [1/2]

template<typename T >
requires MultiVariant<T>
static std::vector< Kakshya::DataVariant > MayaFlux::Yantra::OperationHelper::to_data_variant ( const T &  compute_data)
inlinestatic

Convert ComputeData to DataVariant format.

Template Parameters
TComputeData type
Parameters
compute_dataInput data
Returns
Vector of DataVariant (one per channel/variant)

Definition at line 269 of file OperationHelper.hpp.

270 {
271 if constexpr (std::is_same_v<T, std::vector<Kakshya::DataVariant>>) {
272 return compute_data;
273 }
274
275 if constexpr (std::is_same_v<T, std::shared_ptr<Kakshya::SignalSourceContainer>>) {
276 if (compute_data->get_processing_state() == Kakshya::ProcessingState::PROCESSED) {
277 return compute_data->get_processed_data();
278 }
279 return compute_data->get_data();
280 }
281
282 if constexpr (is_eigen_matrix_v<T>) {
283 return convert_eigen_matrix_to_variant(compute_data);
284 }
285 }
static std::vector< Kakshya::DataVariant > convert_eigen_matrix_to_variant(const EigenMatrix &matrix)
Extract data from Eigen vector to double span.
@ PROCESSED
Container has completed processing and results are available.