MayaFlux 1.0.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 445 of file OperationHelper.hpp.

446 {
447 if constexpr (std::is_same_v<T, std::vector<Kakshya::DataVariant>>) {
448 return compute_data;
449 }
450
451 if constexpr (std::is_same_v<T, std::shared_ptr<Kakshya::SignalSourceContainer>>) {
452 if (compute_data->get_processing_state() == Kakshya::ProcessingState::PROCESSED) {
453 return compute_data->get_processed_data();
454 }
455 return compute_data->get_data();
456 }
457
458 if constexpr (is_eigen_matrix_v<T>) {
459 return convert_eigen_matrix_to_variant(compute_data);
460 }
461 }
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.