From 559890c482f5973f06aafdfec9550fee5ba3c7f2 Mon Sep 17 00:00:00 2001
From: wenxiangchao <wenxiangchao@ihengxin.com.cn>
Date: 星期一, 09 十一月 2026 17:02:15 +0800
Subject: [PATCH] feat: CAN 模拟器 TCP 化 + 多设备并发调试 + 后台生命周期管理
---
Aging.Infrastructure/Drivers/ICanTransport.cs | 34 ++++++++++++++++++++++++++++++++++
1 files changed, 34 insertions(+), 0 deletions(-)
diff --git a/Aging.Infrastructure/Drivers/ICanTransport.cs b/Aging.Infrastructure/Drivers/ICanTransport.cs
new file mode 100644
index 0000000..ecc83d0
--- /dev/null
+++ b/Aging.Infrastructure/Drivers/ICanTransport.cs
@@ -0,0 +1,34 @@
+using System;
+using System.Threading;
+using System.Threading.Tasks;
+
+namespace Aging.Infrastructure.Drivers
+{
+ /// <summary>
+ /// CAN 椹卞姩浼犺緭鍚庣鎶借薄锛氬睆钄� Local(TCP 鐩磋繛妯℃嫙鍣�) 涓� Broker(鍛藉悕绠¢亾濮旀墭瀹夸富) 宸紓銆�
+ /// 涓婂眰 <see cref="CanDeviceDriver"/> 鍙笌鏈帴鍙d氦浜掞紝鍛戒护涓茶涔夊師鏍烽�忎紶銆�
+ /// </summary>
+ internal interface ICanTransport : IDisposable
+ {
+ /// <summary>鍚庣鏄惁澶勪簬鍙敤杩炴帴鎬�</summary>
+ bool IsConnected { get; }
+
+ /// <summary>寤虹珛閫氶亾锛圱CP 杩炴帴 + HELLO 鎸傝浇 / Broker CONNECT 娉ㄥ唽鐗╃悊浼氳瘽锛�</summary>
+ Task ConnectAsync(string busName, int nodeIndex, CancellationToken ct);
+
+ /// <summary>鏂紑褰撳墠鑺傜偣鎸傝浇锛圱CP DISCONNECT / Broker DISCONNECT锛�</summary>
+ Task DisconnectAsync();
+
+ /// <summary>
+ /// 鍙戦�佷竴琛屽懡浠ゅ苟绛夊緟鍝嶅簲琛屻�俵ine 涓哄畬鏁村懡浠や覆锛圫END:鈥� 鎴� QUERY:鈥︼級銆�
+ /// 杩斿洖鍝嶅簲鏂囨湰锛堝惈 OK:/ERR: 鍓嶇紑锛岀敱涓婂眰瑙f瀽锛夛紱瓒呮椂/鏂嚎鎶涘紓甯搞��
+ /// </summary>
+ Task<string> TransceiveAsync(string line, CancellationToken ct);
+
+ /// <summary>鏈嶅姟绔帹閫佺殑 EV:RECV 琛屽埌杈撅紙NodeChannel 涓� TCP 鐩存帹锛汢rokerRpc 涓洪殢鍝嶅簲鎹庡甫锛�</summary>
+ event Action<string> FramePushed;
+
+ /// <summary>閫氶亾鏂浜嬩欢锛堣Е鍙戜笂灞傞噸杩�/鐘舵�佹洿鏂帮級</summary>
+ event Action TransportBroken;
+ }
+}
--
Gitblit v1.9.1