64 lines
1.8 KiB
C#
Raw Normal View History

2025-11-04 11:15:44 +08:00
using Rovinj.Device;
using Rovinj.Reader.Silion;
using Rovinj.Tunnel;
namespace LolaiService.Devices.Tunnel
{
/// <summary>
/// 隧道机接口
/// </summary>
public interface IRfidTunnel
{
/// <summary>
/// 连接通道机
/// </summary>
bool ConnectTunnel(SilionReaderConfig readerConfig, ConnectionConfig plcConnectionConfig, TunnelConfig tunnelConfig);
/// <summary>
/// 关闭通道机
/// </summary>
/// <returns></returns>
void CloseTunnel();
/// <summary>
/// 标签报告事件
/// </summary>
/// <param name="tunnel"></param>
/// <param name="e"></param>
void Tunnel_TagsReported(ITunnel tunnel, TunnelTagsReportedEventArgs e);
/// <summary>
/// 通道机读写器状态变化事件
/// </summary>
/// <param name="tunnel"></param>
/// <param name="e"></param>
void Tunnel_ReaderStateChanged(ITunnel tunnel, TunnelReaderStateChangedEventArgs e);
/// <summary>
/// 通道机PLC状态变化事件
/// </summary>
/// <param name="tunnel"></param>
/// <param name="e"></param>
void Tunnel_PlcStateChanged(ITunnel tunnel, TunnelPlcStateChangedEventArgs e);
/// <summary>
/// 通道机错误事件
/// </summary>
/// <param name="tunnel"></param>
/// <param name="e"></param>
void Tunnel_ErrorReceived(ITunnel tunnel, TunnelErrorReceivedEventArgs e);
/// <summary>
/// 隧道关门
/// </summary>
/// <returns></returns>
string CloseDoor();
/// <summary>
/// 隧道开门
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
string OpenDoor();
}
}