//static int alarmid = 3001;
        public override bool LoadFromConfig(XmlNode node)
        {
            string TagName = string.Empty;

            try
            {
                XmlElement level1_item = (XmlElement)node;

                if (!level1_item.HasAttribute("AlarmID"))   //检测是否有报警ALARM ID David 20170611
                {
                    throw new Exception("未找到报警ID");
                }
                _alarmID = level1_item.GetAttribute("AlarmID");  //唯一代表报警
                TagName  = level1_item.GetAttribute("TagName");
                // alarm type - David 20170803

                if (level1_item.HasAttribute("TrigType"))
                {
                    string strAlarmType = level1_item.GetAttribute("TrigType");
                    if (strAlarmType.ToLower() == "equal")
                    {
                        _alarmType = TrigType.Equal;
                    }
                    else if (strAlarmType.ToLower() == "high")
                    {
                        _alarmType = TrigType.High;
                    }
                    else if (strAlarmType.ToLower() == "low")
                    {
                        _alarmType = TrigType.Low;
                    }
                    else
                    {
                        _alarmType = TrigType.None;
                    }
                }
                else
                { //默认为相等
                    _alarmType = TrigType.Equal;
                }
                // load MonitorTags and Alarms

                _alarmTag = _owner.GetTag(TagName);

                string strAlarmTagTrigValue = level1_item.GetAttribute("TrigTagValue");
                _alarmTagTrigValue = _alarmTag.TranslateValueFromString(strAlarmTagTrigValue);
                //if ()

                _alarmGroup   = level1_item.GetAttribute("AlarmGroup");
                _alarmMessage = level1_item.GetAttribute("AlarmMessage");


                return(true);
            }
            catch (Exception ex)
            {
                LOG.Error(string.Format("装载报警{0}失败:{1}", TagName, ex.Message));
                return(false);
            }
        }
示例#2
0
文件: Trig.cs 项目: IxxyXR/Polyhydra
		public Trig (TrigType trigType)
		{
			this.trigType = trigType;
		}