61 lines
1.4 KiB
C#
61 lines
1.4 KiB
C#
|
using System.Xml;
|
||
|
using Aitex.Core.Common.DeviceData;
|
||
|
using Aitex.Core.RT.DataCenter;
|
||
|
using Aitex.Core.RT.Device;
|
||
|
|
||
|
namespace MECF.Framework.Common.Device.Bases
|
||
|
{
|
||
|
public abstract class PressureGaugeBase : BaseDevice, IDevice
|
||
|
{
|
||
|
public string Unit { get; set; }
|
||
|
|
||
|
public virtual float SetPoint { get; set; }
|
||
|
|
||
|
public virtual float FeedBack { get; set; }
|
||
|
|
||
|
public virtual string FormatString { get; set; }
|
||
|
|
||
|
public virtual AITPressureMeterData DeviceData => new AITPressureMeterData
|
||
|
{
|
||
|
Module = base.Module,
|
||
|
DeviceName = base.Name,
|
||
|
DeviceSchematicId = base.DeviceID,
|
||
|
DisplayName = base.Display,
|
||
|
FeedBack = FeedBack,
|
||
|
FormatString = FormatString
|
||
|
};
|
||
|
|
||
|
public PressureGaugeBase()
|
||
|
{
|
||
|
}
|
||
|
|
||
|
public PressureGaugeBase(string module, XmlElement node, string ioModule = "")
|
||
|
{
|
||
|
Unit = node.GetAttribute("unit");
|
||
|
base.Module = (string.IsNullOrEmpty(node.GetAttribute("module")) ? module : node.GetAttribute("module"));
|
||
|
base.Name = node.GetAttribute("id");
|
||
|
base.Display = node.GetAttribute("display");
|
||
|
base.DeviceID = node.GetAttribute("schematicId");
|
||
|
}
|
||
|
|
||
|
public virtual bool Initialize()
|
||
|
{
|
||
|
DATA.Subscribe(base.Module + "." + base.Name + ".DeviceData", () => DeviceData);
|
||
|
DATA.Subscribe(base.Module + "." + base.Name + ".FeedBack", () => FeedBack);
|
||
|
return true;
|
||
|
}
|
||
|
|
||
|
public virtual void Monitor()
|
||
|
{
|
||
|
}
|
||
|
|
||
|
public virtual void Reset()
|
||
|
{
|
||
|
}
|
||
|
|
||
|
public virtual void Terminate()
|
||
|
{
|
||
|
}
|
||
|
}
|
||
|
}
|