public static Handler DriveTiming( double v, double w, double time, out double progress) => Win32 ? SafeNativeMethodsWin32.DriveTiming(v, w, time, out progress) : SafeNativeMethodsUnix.DriveTiming(v, w, time, out progress);
public static Handler DriveSpatial( double v, double w, double spatium, double angle, out double progress) => Win32 ? SafeNativeMethodsWin32.DriveSpatial(v, w, spatium, angle, out progress) : SafeNativeMethodsUnix.DriveSpatial(v, w, spatium, angle, out progress);
/// <summary> /// 从错误管理器清除所有错误信息 /// </summary> public static void ClearErrorInfo() { if (Win32) { SafeNativeMethodsWin32.ClearErrorInfo(); } else { SafeNativeMethodsUnix.ClearErrorInfo(); } }
public static void SetPaused(bool paused) { if (Win32) { SafeNativeMethodsWin32.SetPaused(paused); } else { SafeNativeMethodsUnix.SetPaused(paused); } }
public static void CancelAction() { if (Win32) { SafeNativeMethodsWin32.CancelAction(); } else { SafeNativeMethodsUnix.CancelAction(); } }
/// <summary> /// 从错误管理器移除错误信息 /// </summary> /// <param name="handler">操作序号</param> public static void RemoveErrorInfo(Handler handler) { if (Win32) { SafeNativeMethodsWin32.RemoveErrorInfo(handler); } else { SafeNativeMethodsUnix.RemoveErrorInfo(handler); } }
public static Handler GetOdometry( out double stamp, out double s, out double sa, out double x, out double y, out double theta) => Win32 ? SafeNativeMethodsWin32.GetOdometry( out stamp, out s, out sa, out x, out y, out theta) : SafeNativeMethodsUnix.GetOdometry( out stamp, out s, out sa, out x, out y, out theta);
public static bool IsPaused() => Win32 ? SafeNativeMethodsWin32.IsPaused() : SafeNativeMethodsUnix.IsPaused();
public static Handler AdjustRudder(double offset, out double progress) => Win32 ? SafeNativeMethodsWin32.AdjustRudder(offset, out progress) : SafeNativeMethodsUnix.AdjustRudder(offset, out progress);
/// <summary> /// 重置参数值到默认值 /// </summary> /// <param name="id">参数类型 id</param> /// <returns>操作序号</returns> public static Handler ResetParameter(Handler id) => Win32 ? SafeNativeMethodsWin32.ResetParameter(id) : SafeNativeMethodsUnix.ResetParameter(id);
/// <summary> /// 设置参数 /// </summary> /// <param name="id">参数类型 id</param> /// <param name="value">参数值</param> /// <returns>操作序号</returns> public static Handler SetParameter(Handler id, double value) => Win32 ? SafeNativeMethodsWin32.SetParameter(id, value) : SafeNativeMethodsUnix.SetParameter(id, value);
/// <summary> /// 获取后轮方向角 /// </summary> /// <param name="value">后轮方向角(弧度)</param> /// <returns>操作序号</returns> public static Handler GetRudder(out double value) => Win32 ? SafeNativeMethodsWin32.GetRudder(out value) : SafeNativeMethodsUnix.GetRudder(out value);
public static Handler DriveWheels(double left, double right) => Win32 ? SafeNativeMethodsWin32.DriveWheels(left, right) : SafeNativeMethodsUnix.DriveWheels(left, right);
public static Handler DrivePhysical(double speed, double rudder) => Win32 ? SafeNativeMethodsWin32.DrivePhysical(speed, rudder) : SafeNativeMethodsUnix.DrivePhysical(speed, rudder);
public static byte CheckState() => Win32 ? SafeNativeMethodsWin32.CheckState() : SafeNativeMethodsUnix.CheckState();
public static Handler SetEnabled(bool value) => Win32 ? SafeNativeMethodsWin32.SetEnabled(value) : SafeNativeMethodsUnix.SetEnabled(value);
public static Handler ResetOdometry() => Win32 ? SafeNativeMethodsWin32.ResetOdometry() : SafeNativeMethodsUnix.ResetOdometry();
/// <summary> /// 获取当前打开的串口名字 /// </summary> /// <returns>串口名字(C 风格字符串)</returns> public static IntPtr GetConnectedPort() => Win32 ? SafeNativeMethodsWin32.GetConnectedPort() : SafeNativeMethodsUnix.GetConnectedPort();
/// <summary> /// 从错误管理器获取错误信息 /// </summary> /// <param name="handler">操作序号</param> /// <returns>错误信息(C 风格字符串)</returns> public static IntPtr GetErrorInfo(Handler handler) => Win32 ? SafeNativeMethodsWin32.GetErrorInfo(handler) : SafeNativeMethodsUnix.GetErrorInfo(handler);
/// <summary> /// 关闭 /// </summary> /// <returns>操作序号</returns> public static Handler Shutdown() => Win32 ? SafeNativeMethodsWin32.Shutdown() : SafeNativeMethodsUnix.Shutdown();
public static Handler DriveVelocity(double v, double w) => Win32 ? SafeNativeMethodsWin32.DriveVelocity(v, w) : SafeNativeMethodsUnix.DriveVelocity(v, w);
/// <summary> /// 获取电池电量百分比 /// </summary> /// <param name="value">电量百分比值</param> /// <returns>操作序号</returns> public static Handler GetBatteryPercent(out double value) => Win32 ? SafeNativeMethodsWin32.GetBatteryPercent(out value) : SafeNativeMethodsUnix.GetBatteryPercent(out value);
/// <summary> /// 初始化 /// </summary> /// <param name="port">目标串口</param> /// <param name="progress">进度</param> /// <returns>操作序号</returns> public static Handler Initialize(string port, out double progress) => Win32 ? SafeNativeMethodsWin32.Initialize(port, out progress) : SafeNativeMethodsUnix.Initialize(port, out progress);
public static double CalculateSpatium(double spatium, double angle, double width) => Win32 ? SafeNativeMethodsWin32.CalculateSpatium(spatium, angle, width) : SafeNativeMethodsUnix.CalculateSpatium(spatium, angle, width);
/// <summary> /// 获取参数默认值 /// </summary> /// <param name="id">参数类型 id</param> /// <returns>参数默认值</returns> public static double GetDefaultParameter(Handler id) => Win32 ? SafeNativeMethodsWin32.GetDefaultParameter(id) : SafeNativeMethodsUnix.GetDefaultParameter(id);
/// <summary> /// 获取参数当前值 /// </summary> /// <param name="id">参数类型 id</param> /// <param name="value">参数当前值</param> /// <returns>操作序号</returns> public static Handler GetParameter(Handler id, out double value) => Win32 ? SafeNativeMethodsWin32.GetParameter(id, out value) : SafeNativeMethodsUnix.GetParameter(id, out value);