using Aitex.Core.RT.DataCenter; using Aitex.Core.RT.Device; using Aitex.Core.RT.Device.Unit; using Aitex.Core.RT.IOCore; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Xml; namespace FurnaceRT.Devices { public class IoTrigger3 : BaseDevice, IDevice { private DIAccessor _diFeedback1 = null; private DIAccessor _diFeedback2 = null; private DIAccessor _diFeedback3 = null; private DIAccessor _diFeedback4 = null; private DIAccessor _diFeedback5 = null; private DIAccessor _diFeedback6 = null; private DIAccessor _diFeedback7 = null; private DIAccessor _diFeedback8 = null; private DOAccessor _doTrigger = null; public IoTrigger3(string module, XmlElement node, string ioModule = "") { base.Module = module; base.Name = node.GetAttribute("id"); base.Display = node.GetAttribute("display"); base.DeviceID = node.GetAttribute("schematicId"); _diFeedback1 = ParseDiNode("diFeedback1", node, "GasLine1"); _diFeedback2 = ParseDiNode("diFeedback2", node, "GasLine2"); _diFeedback3 = ParseDiNode("diFeedback3", node, "GasLine3"); _diFeedback4 = ParseDiNode("diFeedback4", node, "GasLine4"); _diFeedback5 = ParseDiNode("diFeedback5", node, "GasLine5"); _diFeedback6 = ParseDiNode("diFeedback6", node, "GasLine6"); _diFeedback7 = ParseDiNode("diFeedback7", node, "GasLine7"); _diFeedback8 = ParseDiNode("diFeedback8", node, "GasLine8"); _doTrigger = ParseDoNode("doTrigger", node, ioModule); } public bool Initialize() { return true; } public void Terminate() { } public void Monitor() { if (_doTrigger != null) { _doTrigger.Value = (_diFeedback1 != null ? _diFeedback1.Value : false) || (_diFeedback2 != null ? _diFeedback2.Value : false) || (_diFeedback3 != null ? _diFeedback3.Value : false) || (_diFeedback4 != null ? _diFeedback4.Value : false) ||( _diFeedback5 != null ? _diFeedback5.Value : false) || (_diFeedback6 != null ? _diFeedback6.Value : false) || (_diFeedback7 != null ? _diFeedback7.Value : false) || (_diFeedback8 != null ? _diFeedback8.Value : false); } } public void Reset() { } } }