From 9d1660270272180cd71147d6ddd53d1382643d2e Mon Sep 17 00:00:00 2001
From: wenxiangchao <wenxiangchao@ihengxin.com.cn>
Date: 星期一, 02 十一月 2026 18:00:14 +0800
Subject: [PATCH] merge: 并入远程 Initial commit 作为历史根节点
---
Aging.Infrastructure/Contracts/IDeviceManager.cs | 65 ++++++++++++++++++++++++++++++++
1 files changed, 65 insertions(+), 0 deletions(-)
diff --git a/Aging.Infrastructure/Contracts/IDeviceManager.cs b/Aging.Infrastructure/Contracts/IDeviceManager.cs
new file mode 100644
index 0000000..680a9c3
--- /dev/null
+++ b/Aging.Infrastructure/Contracts/IDeviceManager.cs
@@ -0,0 +1,65 @@
+using System.Threading;
+using System.Threading.Tasks;
+
+namespace Aging.Infrastructure.Contracts
+{
+ /// <summary>
+ /// 璁惧绠$悊鎺ュ彛銆�
+ /// 鎻愪緵璁惧椹卞姩鐨勬敞鍐屻�佽繛鎺ョ鐞嗗拰鐘舵�佹煡璇㈠姛鑳姐��
+ /// </summary>
+ public interface IDeviceManager
+ {
+ /// <summary>
+ /// 鏍规嵁璁惧ID鑾峰彇璁惧椹卞姩瀹炰緥
+ /// </summary>
+ /// <param name="deviceId">璁惧鏍囪瘑绗�</param>
+ /// <returns>璁惧椹卞姩瀹炰緥锛屼笉瀛樺湪鏃惰繑鍥� null</returns>
+ IDeviceDriver? GetDriver(string deviceId);
+
+ /// <summary>
+ /// 鑾峰彇璁惧褰撳墠鐘舵��
+ /// </summary>
+ /// <param name="deviceId">璁惧鏍囪瘑绗�</param>
+ /// <returns>璁惧椹卞姩鐘舵��</returns>
+ DeviceDriverStatus GetStatus(string deviceId);
+
+ /// <summary>
+ /// 娉ㄥ唽璁惧椹卞姩
+ /// </summary>
+ /// <param name="deviceId">璁惧鏍囪瘑绗�</param>
+ /// <param name="driver">璁惧椹卞姩瀹炰緥</param>
+ void RegisterDriver(string deviceId, IDeviceDriver driver);
+
+ /// <summary>
+ /// 娉ㄩ攢璁惧椹卞姩
+ /// </summary>
+ /// <param name="deviceId">璁惧鏍囪瘑绗�</param>
+ void UnregisterDriver(string deviceId);
+
+ /// <summary>
+ /// 寮傛杩炴帴璁惧
+ /// </summary>
+ /// <param name="deviceId">璁惧鏍囪瘑绗�</param>
+ /// <param name="ct">鍙栨秷浠ょ墝</param>
+ Task ConnectAsync(string deviceId, CancellationToken ct);
+
+ /// <summary>
+ /// 寮傛鏂紑璁惧杩炴帴
+ /// </summary>
+ /// <param name="deviceId">璁惧鏍囪瘑绗�</param>
+ Task DisconnectAsync(string deviceId);
+
+ /// <summary>
+ /// 鑾峰彇鎵�鏈夊凡娉ㄥ唽璁惧鐨処D鍒楄〃
+ /// </summary>
+ /// <returns>璁惧ID鍙鍒楄〃</returns>
+ IReadOnlyList<string> GetRegisteredDevices();
+
+ /// <summary>
+ /// 妫�鏌ヨ澶囨槸鍚﹀凡娉ㄥ唽
+ /// </summary>
+ /// <param name="deviceId">璁惧鏍囪瘑绗�</param>
+ /// <returns>璁惧鏄惁宸叉敞鍐�</returns>
+ bool IsDeviceRegistered(string deviceId);
+ }
+}
--
Gitblit v1.9.1