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

◆ set_analysis_parameter()

template<ComputeData InputType = std::vector<Kakshya::DataVariant>, ComputeData OutputType = Eigen::VectorXd>
void MayaFlux::Yantra::EnergyAnalyzer< InputType, OutputType >::set_analysis_parameter ( const std::string &  name,
std::any  value 
)
inlineoverrideprotectedvirtual

Handle analysis-specific parameters.

Reimplemented from MayaFlux::Yantra::UniversalAnalyzer< InputType, OutputType >.

Definition at line 348 of file EnergyAnalyzer.hpp.

349 {
350 if (name == "method") {
351 if (auto str_result = safe_any_cast<std::string>(value)) {
352 m_method = string_to_method(*str_result.value);
353 return;
354 }
355
356 if (auto enum_result = safe_any_cast<EnergyMethod>(value)) {
357 m_method = *enum_result.value;
358 return;
359 }
360
362 std::source_location::current(),
363 "Invalid method parameter - expected string or EnergyMethod enum");
364 } else if (name == "window_size") {
365 if (auto result = safe_any_cast<uint32_t>(value)) {
366 m_window_size = *result.value;
368 return;
369 }
370 } else if (name == "hop_size") {
371 if (auto result = safe_any_cast<uint32_t>(value)) {
372 m_hop_size = *result.value;
374 return;
375 }
376 } else if (name == "classification_enabled") {
377 if (auto result = safe_any_cast<bool>(value)) {
378 m_classification_enabled = *result.value;
379 return;
380 }
381 }
382
383 base_type::set_analysis_parameter(name, std::move(value));
384 }
static EnergyMethod string_to_method(const std::string &str)
Convert string to energy method enum.
virtual void set_analysis_parameter(const std::string &name, std::any value)
Analysis-specific parameter handling (override for custom parameters)
@ ComputeMatrix
Compute operations (Yantra - algorithms, matrices, DSP)
@ Yantra
DSP algorithms, computational units, matrix operations, Grammar.