namespace RobotNet10.NavigationTune.Shared.Models;
///
/// Navigation phase for telemetry segmentation.
///
public enum TelemetryPhase
{
InitialRotation = 0,
PathFollowing = 1,
FinalApproach = 2,
FinalRotation = 3,
Completed = 4
}
///
/// Telemetry data collected during test execution
///
public class TelemetryData
{
public long TimestampMs { get; set; }
public Pose2D RobotPose { get; set; } // X, Y, Theta
public Twist2D RobotTwist { get; set; } // Linear, Angular velocity (estimated)
public Twist2D CommandTwist { get; set; } // Linear, Angular velocity (commanded)
public Pose2D ReferencePose { get; set; } // Closest point on reference path
public double CrossTrackError { get; set; } // meters
public double HeadingError { get; set; } // radians
public double LookaheadDistance { get; set; } // meters
public double ModelConfidence { get; set; } // 0.0 - 1.0
public double DistanceToGoal { get; set; } // meters
public TelemetryPhase? Phase { get; set; } // Navigation phase (null for legacy data)
}