void SynchronizeParameters(ProbeDialog dlg) { List <DiscoveryType> oldTypes = new List <DiscoveryType>(_types); List <string> oldScopes = new List <string>(_scopes); foreach (ListViewItem item in dlg.TypesList.Items) { string type = item.SubItems[0].Text; string ns = item.SubItems[1].Text; DiscoveryType t = oldTypes.Where(T => T.Type == type && T.Namespace == ns).FirstOrDefault(); if (t == null) { DiscoveryType newType = new DiscoveryType() { Type = type, Namespace = ns }; _types.Add(newType); } else { oldTypes.Remove(t); } } foreach (DiscoveryType t in oldTypes) { _types.Remove(t); } foreach (ListViewItem item in dlg.ScopesList.Items) { string scope = item.SubItems[0].Text; if (_scopes.Contains(scope)) { oldScopes.Remove(scope); } else { _scopes.Add(scope); } } foreach (string scope in oldScopes) { _scopes.Remove(scope); } }
void InitializeTypes() { DiscoveryType type12 = new DiscoveryType() { Type = ONVIF_DISCOVER_TYPES, Namespace = ONVIF_NETWORK_WSDL_URL }; _types.Add(type12); DiscoveryType type20 = new DiscoveryType() { Type = ONVIF_20_DEVICE_TYPE, Namespace = ONVIF_20_DEVICE_NS }; _types.Add(type20); }