using RobotNet10.Shared.Numbers; namespace RobotNet10.RobotApp.Detection; #region Service Configuration /// /// Configuration for MarkerLandmarkDetector service /// Loaded from RobotConfig JSON (e.g., ModelConfigs/test.json) /// public class MarkerDetectorConfiguration { /// /// Device transforms: deviceId -> Pose3D in base_link frame /// public DeviceTransform[] LidarDevices { get; set; } = []; public DeviceTransform[] QrDevices { get; set; } = []; } /// /// Transform configuration for a device (camera/LiDAR) relative to base_link /// public struct DeviceTransform { public string DeviceId { get; set; } /// /// Position (X, Y, Z in meters) in base_link frame /// public Vector3 Position { get; set; } /// /// Orientation (quaternion) in base_link frame /// public Quaternion Orientation { get; set; } /// /// Intensity threshold for reflective marker detection (LiDAR devices only) /// public double IntensityThreshold { get; set; } } #endregion