using BPASmartClient.Model;
using System;
using System.Collections.Concurrent;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace BPASmartClient.Peripheral
{
///
/// 外设接口
///
public interface IPeripheral
{
///
/// 是否已连接
///
bool IsConnected { get; set; }
///
/// 是否工作正常
///
bool IsWork { get; set; }
///
/// 设备ID
///
int DeviceId { get; set; }
///
/// 获取指定状态值
///
/// 状态名称
/// 状态值
object? GetStatus(string statusName);
///
/// 获取所有状态
///
/// 状态值
ConcurrentDictionary GetAllStatus();
///
/// 设备变量数据
///
ObservableCollection variables { get; set; }
///
/// 通讯参数
///
CommunicationPar communicationPar { get; set; }
///
/// 设备数据,key:地址,value:数据
///
ConcurrentDictionary status { get; set; }
ConcurrentDictionary tempVar { get; set; }
ConcurrentDictionary GetVariable();
void WriteData(string address, object value);
//void AddVarInfo(string add, int len);
//void ReadData(string address);
///
/// 初始化
///
void Init();
///
/// 驱动开启
///
void Start();
///
/// 驱动停止
///
void Stop();
}
}