using RobotNet10.NavigationTune.Shared.Models;
namespace RobotNet10.NavigationTune.Shared.Interfaces;
///
/// Tuning advisor interface - analyzes telemetry and metrics to produce parameter suggestions.
///
public interface ITuningAdvisor
{
///
/// Analyze a completed test run and produce a tuning report with suggestions.
///
TuningReport Analyze(
List telemetryData,
TestMetrics metrics,
NavigationParameterSet currentParameters,
ReferencePath? referencePath = null);
///
/// Apply a single suggestion to a parameter set, returning a new modified copy.
///
NavigationParameterSet ApplySuggestion(
NavigationParameterSet parameters,
TuningSuggestion suggestion);
///
/// Apply multiple suggestions to a parameter set, returning a new modified copy.
///
NavigationParameterSet ApplyAllSuggestions(
NavigationParameterSet parameters,
List suggestions);
}