Files
I150/srcs/RobotNet10/Shared/RobotNet10.NavigationTune.Shared/Interfaces/ITuningAdvisor.cs
2026-07-03 16:37:12 +07:00

33 lines
1.1 KiB
C#

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