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

◆ convert_result()

template<ComputeData InputType = std::vector<Kakshya::DataVariant>, ComputeData OutputType = InputType>
output_type MayaFlux::Yantra::ComputeOperation< InputType, OutputType >::convert_result ( std::vector< std::vector< double > > &  result_data,
DataStructureInfo metadata 
)
inlineprotected

Convert processed double data back to OutputType using metadata and optional callback.

Definition at line 265 of file ComputeOperation.hpp.

266 {
267 std::any any_data = metadata;
268
270 auto reconstructed = m_last_execution_context.reconstruction_callback(result_data, any_data);
271 auto result = safe_any_cast<output_type>(reconstructed);
272 if (result) {
273 return *result.value;
274 }
275
276 MF_WARN(
279 "Reconstruction callback type mismatch: {}",
280 result.error);
281 return OperationHelper::reconstruct_from_double<output_type>(result_data, metadata);
282 }
283
284 return OperationHelper::reconstruct_from_double<output_type>(result_data, metadata);
285 }
#define MF_WARN(comp, ctx,...)
@ Runtime
General runtime operations (default fallback)
@ Yantra
DSP algorithms, computational units, matrix operations, Grammar.
ReconstructionCallback reconstruction_callback
Optional callback used for custom reconstruction of results.

References MayaFlux::Yantra::ComputeOperation< InputType, OutputType >::m_last_execution_context, MF_WARN, MayaFlux::Yantra::ExecutionContext::reconstruction_callback, MayaFlux::Journal::Runtime, and MayaFlux::Journal::Yantra.

Referenced by MayaFlux::Yantra::StandardSorter< InputType, OutputType >::convert_and_sort(), MayaFlux::Yantra::ConvolutionTransformer< InputType, OutputType >::create_output(), MayaFlux::Yantra::MathematicalTransformer< InputType, OutputType >::create_output(), MayaFlux::Yantra::SpectralTransformer< InputType, OutputType >::create_output(), MayaFlux::Yantra::TemporalTransformer< InputType, OutputType >::create_output(), MayaFlux::Yantra::EnergyAnalyzer< InputType, OutputType >::create_pipeline_output(), MayaFlux::Yantra::StatisticalAnalyzer< InputType, OutputType >::create_pipeline_output(), MayaFlux::Yantra::StandardSorter< InputType, OutputType >::merge_chunks_to_result(), and MayaFlux::Yantra::StandardSorter< InputType, OutputType >::sort_copy().

+ Here is the caller graph for this function: