Handle analysis-specific parameters.
342 {
343 if (name == "method") {
344 try {
345 auto method_str = safe_any_cast_or_throw<std::string>(value);
347 return;
348 } catch (const std::runtime_error&) {
349 throw std::invalid_argument("Invalid method parameter - expected string or EnergyMethod enum");
350 }
351 if (auto* method_enum = std::any_cast<EnergyMethod>(&value)) {
353 return;
354 }
355 } else if (name == "window_size") {
356 if (auto* size = std::any_cast<uint32_t>(&value)) {
359 return;
360 }
361 } else if (name == "hop_size") {
362 if (auto* size = std::any_cast<uint32_t>(&value)) {
365 return;
366 }
367 } else if (name == "classification_enabled") {
368 if (auto* enabled = std::any_cast<bool>(&value)) {
370 return;
371 }
372 }
373
375 }
static EnergyMethod string_to_method(const std::string &str)
Convert string to energy method enum.
void validate_window_parameters() const
bool m_classification_enabled
virtual void set_analysis_parameter(const std::string &name, std::any value)
Analysis-specific parameter handling (override for custom parameters)