using System.Xml; using Aitex.Core.RT.IOCore; namespace Aitex.Core.RT.Device.Unit { public class IoSignalLight : BaseDevice, IDevice { private bool _value; private DOAccessor _do = null; private DIAccessor _diFeedback; public bool Value { get { if (_diFeedback != null) return _diFeedback.Value; if (_do != null) return _do.Value; return false; } set { _value = value; string reason; _do.SetValue(value, out reason); } } public IoSignalLight(string module, XmlElement node) { base.Module = module; base.Name = node.GetAttribute("id"); base.Display = node.GetAttribute("display"); base.DeviceID = node.GetAttribute("schematicId"); _do = ParseDoNode("doSet", node); _diFeedback = ParseDiNode("diFeedback", node); } public bool Initialize() { return true; } public void Terminate() { } public void Monitor() { } public void Reset() { } } }