using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using X1.DynamicClientCore.Models; namespace X1.DynamicClientCore.Features { /// /// 仪器协议客户端接口 /// 提供仪器设备的网络控制功能,包括网络启动、停止等协议相关操作 /// /// /// 作为仪器客户端的协议接口,定义了仪器设备网络控制相关的功能 /// 主要用于网络连接的管理和控制操作 /// public interface IInstrumentProtocolClient { /// /// 启动网络连接 /// /// 蜂窝网络启动请求 /// 请求选项,包含超时、请求头等配置 /// 取消令牌,用于取消异步操作 /// 异步任务,表示网络启动操作的完成状态 /// 当request为null时抛出 /// 当request中的设备编号为空时抛出 Task StartNetworkAsync( StartCellularNetworkRequest request, RequestOptions? options = null, CancellationToken cancellationToken = default); /// /// 停止网络连接 /// /// 仪器编号,用于标识特定的仪器设备 /// 蜂窝网络停止请求 /// 请求选项,包含超时、请求头等配置 /// 取消令牌,用于取消异步操作 /// 异步任务,表示网络停止操作的完成状态 /// 当instrumentNumber为null或空时抛出 /// 当instrumentNumber格式无效时抛出 Task StopNetworkAsync( string instrumentNumber, StopCellularNetworkRequest request, RequestOptions? options = null, CancellationToken cancellationToken = default); } }