49 lines
1.5 KiB
C#
49 lines
1.5 KiB
C#
namespace RobotNet10.RobotApp.SLAM.Cartographer;
|
|
|
|
/// <summary>
|
|
/// Root configuration for Cartographer integration
|
|
/// </summary>
|
|
public class CartographerConfiguration
|
|
{
|
|
/// <summary>
|
|
/// Enable or disable Cartographer service
|
|
/// </summary>
|
|
public bool Enable { get; set; } = true;
|
|
|
|
/// <summary>
|
|
/// Use odometry data if available
|
|
/// </summary>
|
|
public bool UseOdometry { get; set; } = true;
|
|
|
|
/// <summary>
|
|
/// Sensor configuration
|
|
/// </summary>
|
|
public SensorConfiguration Sensors { get; set; } = new();
|
|
|
|
/// <summary>
|
|
/// Trajectory builder configuration
|
|
/// </summary>
|
|
public TrajectoryBuilderConfiguration TrajectoryBuilder { get; set; } = new();
|
|
|
|
/// <summary>
|
|
/// Map builder configuration
|
|
/// </summary>
|
|
public MapBuilderConfiguration MapBuilder { get; set; } = new();
|
|
|
|
/// <summary>
|
|
/// Map storage configuration
|
|
/// </summary>
|
|
public MapStorageConfiguration MapStorage { get; set; } = new();
|
|
|
|
/// <summary>
|
|
/// MCL (Monte Carlo Localization) configuration. When Enabled, SetInitialPoseAsync uses MCL to refine pose before starting Cartographer trajectory (xloc flow).
|
|
/// </summary>
|
|
public MclConfiguration Mcl { get; set; } = new();
|
|
|
|
/// <summary>
|
|
/// Occupancy grid generation configuration.
|
|
/// Controls probability thresholds, output mode, wall thinning, and ambiguous cell handling.
|
|
/// </summary>
|
|
public OccupancyGridConfiguration OccupancyGrid { get; set; } = new();
|
|
}
|