Opc.Ua.Com.Server.ComDaGroup.UpdateDeadbandFilters C# (CSharp) Method

UpdateDeadbandFilters() public method

Updates the deadband filters.
public UpdateDeadbandFilters ( IList items ) : void
items IList The items.
return void
        public void UpdateDeadbandFilters(IList<ComDaGroupItem> items)
        {
            // update the monitored item filter.
            for (int ii = 0; ii < items.Count; ii++)
            {
                ComDaGroupItem item = items[ii];

                if (item == null)
                {
                    continue;
                }

                if (item.EuType != (int)OpcRcw.Da.OPCEUTYPE.OPC_ANALOG)
                {
                    item.MonitoredItem.Filter = null;
                    continue;
                }

                // do nothing if the filter is not set and is not required.
                if (item.MonitoredItem.Filter == null)
                {
                    if (this.Deadband <= 0 && item.Deadband <= 0)
                    {
                        continue;
                    }
                }

                DataChangeFilter filter = new DataChangeFilter();
                filter.Trigger = DataChangeTrigger.StatusValue;

                if (this.Deadband <= 0 && item.Deadband <= 0)
                {
                    filter.DeadbandType = (uint)DeadbandType.None;
                }
                else
                {
                    filter.DeadbandType = (uint)DeadbandType.Percent;
                    filter.DeadbandValue = this.Deadband;
                }

                if (item.Deadband >= 0)
                {
                    filter.DeadbandValue = item.Deadband;
                }

                item.MonitoredItem.Filter = filter;
            }
        }