using Aitex.Core.RT.Device;
using Aitex.Core.RT.Log;
using Aitex.Core.RT.OperationCenter;
using MECF.Framework.Common.Device.BarcodeReader;
using MECF.Framework.Common.Device.ResistivityProbe;
using MECF.Framework.Common.Equipment;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace CyberX8_RT.Devices.BarcodeReader
{
public class BarcodeReaderController : BaseDevice, IDevice
{
#region 常量
#endregion
#region 内部变量
#endregion
#region 属性
///
///条形码值
///
public string BarcodeValue { get { return ReadBarcodeValue(); } }
#endregion
///
/// 构造函数
///
///
public BarcodeReaderController(string moduleName) : base(moduleName, moduleName, moduleName, moduleName)
{
InitialData();
}
///
/// 初始化
///
///
public bool Initialize()
{
InitializeOperation();
InitializeDevice();
return true;
}
///
/// 获取数值
///
///
private string ReadBarcodeValue()
{
return BarcodeReaderConfigManager.Instance.GetBarcodeValueByName(Module.ToString());
}
///
/// 初始化数据
///
private void InitialData()
{
}
///
/// 初始化操作
///
public bool InitializeDevice()
{
BarcodeReaderConfigManager.Instance.InitialDevice(Module.ToString());
return true;
}
///
/// 初始化操作
///
private void InitializeOperation()
{
OP.Subscribe($"{Module}.ReadBarcode", ReadBarcodeOperation);
OP.Subscribe($"{Module}.InitializeBarcode", InitializeBarcodeOperation);
}
public void Monitor()
{
}
public void Reset()
{
}
public void Terminate()
{
}
public bool ReadBarcodeOperation(string cmd, object[] args)
{
BarcodeReaderConfigManager.Instance.ReadbarcodeOnce(Module.ToString());
return true;
}
///
/// 读取条码
///
///
public string ReadBarcode()
{
return BarcodeReaderConfigManager.Instance.ReadbarcodeOnce(Module.ToString());
}
public bool InitializeBarcodeOperation(string cmd, object[] args)
{
bool result = BarcodeReaderConfigManager.Instance.GetDeviceConnect(Module.ToString());
return result;
}
}
}