/// <summary> /// Adds the specified data change monitored item. /// </summary> /// <param name="datachangeItem">The monitored item.</param> public void Add(MonitoredItem datachangeItem) { if (DataChangeMonitoredItems == null) { DataChangeMonitoredItems = new List <MonitoredItem>(); Node.OnStateChanged = OnMonitoredNodeChanged; } DataChangeMonitoredItems.Add(datachangeItem); }
/// <summary> /// Removes the specified data change monitored item. /// </summary> /// <param name="datachangeItem">The monitored item.</param> public void Remove(MonitoredItem datachangeItem) { for (int ii = 0; ii < DataChangeMonitoredItems.Count; ii++) { if (Object.ReferenceEquals(DataChangeMonitoredItems[ii], datachangeItem)) { DataChangeMonitoredItems.RemoveAt(ii); break; } } if (DataChangeMonitoredItems.Count == 0) { DataChangeMonitoredItems = null; Node.OnStateChanged = null; } }