16template <ComputeData InputType = std::vector<Kakshya::DataVariant>,
17 ComputeData OutputType = InputType>
30 assert(executor &&
"GpuAnalyzer: executor must not be null");
38 [[nodiscard]] std::shared_ptr<GpuExecutionContext<InputType, OutputType>>
58 error<std::runtime_error>(
61 std::source_location::current(),
62 "GpuAnalyzer: GPU unavailable and no CPU fallback provided");
66 std::shared_ptr<GpuExecutionContext<InputType, OutputType>>
m_executor;
Modern, digital-first universal analyzer framework for Maya Flux.
void set_gpu_backend(std::shared_ptr< GpuExecutionContext< InputType, OutputType > > backend)
Attach a GPU execution backend.
output_type analyze_implementation(const input_type &) override
Pure virtual analysis implementation - derived classes implement this.
AnalysisType get_analysis_type() const override
Gets the analysis type category for this analyzer.
GpuAnalyzer(std::shared_ptr< GpuExecutionContext< InputType, OutputType > > executor)
Construct with a configured GpuExecutionContext.
std::shared_ptr< GpuExecutionContext< InputType, OutputType > > get_executor() const
Returns the attached GpuExecutionContext for further configuration.
std::shared_ptr< GpuExecutionContext< InputType, OutputType > > m_executor
std::string get_analyzer_name() const override
Get analyzer-specific name (derived classes override this)
Concrete UniversalAnalyzer that dispatches entirely via a GpuExecutionContext.
Type-parameterised shell over GpuDispatchCore.
Template-flexible analyzer base with instance-defined I/O types.
@ BufferProcessing
Buffer processing (Buffers::BufferManager, processing chains)
@ Yantra
DSP algorithms, computational units, matrix operations, Grammar.
AnalysisType
Categories of analysis operations for discovery and organization.
@ CUSTOM
User-defined analysis types.
Input/Output container for computation pipeline data flow with structure preservation.