MayaFlux 0.3.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 166 of file OperationHelper.hpp.

167 {
168 if constexpr (std::is_same_v<T, std::vector<Kakshya::DataVariant>>) {
169 return compute_data;
170 }
171
172 if constexpr (std::is_same_v<T, std::shared_ptr<Kakshya::SignalSourceContainer>>) {
173 if (compute_data->get_processing_state() == Kakshya::ProcessingState::PROCESSED) {
174 return compute_data->get_processed_data();
175 }
176 return compute_data->get_data();
177 }
178
179 if constexpr (std::is_base_of_v<Eigen::MatrixBase<T>, T>) {
180 return convert_eigen_matrix_to_variant(compute_data);
181 }
182 }
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.

References convert_eigen_matrix_to_variant(), and MayaFlux::Kakshya::PROCESSED.

+ Here is the call graph for this function: