public void Refresh(string deviceId) { DeviceId = deviceId; DeviceItems.Clear(); try { Connect(); LoadDeviceData(ComDeviceObject); } finally { Disconnect(); } }
/// <summary> /// 添加设备 /// </summary> private void AddDevice() { DeviceInfoDlg dlg = new DeviceInfoDlg(); DeviceVM dv = new DeviceVM() { DeviceList = this.DeviceList, Left = mousePosition.X, Top = mousePosition.Y }; dlg.DataContext = dv; if ((bool)dlg.ShowDialog()) { DeviceItems.Add(dv); } }
/// <summary> /// 设备目录查询 /// </summary> /// <param name="cameraId">摄像机地址编码</param> public void DeviceListQuery(string cameraId) { SipInitialize(); SIPRequest req = QueryItems(); DeviceItems item = new DeviceItems() { ItemList = new DeviceItems.Query() { Address = cameraId, Privilege = 90, Variable = VariableType.ItemList, FromIndex = 1, ToIndex = 200 } }; string xmlBody = DeviceItems.Instance.Save <DeviceItems>(item); req.Body = xmlBody; _m_sipTransport.SendRequest(_remoteEndPoint, req); }
public void GetSentData(EventData data) { Dispatcher.BeginInvoke(new Action <EventData>(UpdateDevicesLoading), System.Windows.Threading.DispatcherPriority.Normal, new object[] { data }); Dispatcher.BeginInvoke(new Action <EventData>(UpdateDeviceAdded), System.Windows.Threading.DispatcherPriority.DataBind, new object[] { data }); Dispatcher.BeginInvoke(new Action <EventData>(UpdateDeviceUpdated), System.Windows.Threading.DispatcherPriority.DataBind, new object[] { data }); Dispatcher.BeginInvoke(new Action <EventData>(UpdateDeviceRemoved), System.Windows.Threading.DispatcherPriority.DataBind, new object[] { data }); if (data != null && data.Id == "STATUS_STATUS" && data.Data01 != null && data.Data02 != null && data.Data02.GetType() == typeof(TrakHound.API.Data.StatusInfo)) { Dispatcher.BeginInvoke(new Action(() => { string uniqueId = data.Data01.ToString(); var info = (TrakHound.API.Data.StatusInfo)data.Data02; int index = DeviceItems.ToList().FindIndex(x => x.Device.UniqueId == uniqueId); if (index >= 0) { var column = DeviceItems[index]; column.UpdateData(info); } }), System.Windows.Threading.DispatcherPriority.DataBind, new object[] { }); } if (data != null && data.Id == "STATUS_CONTROLLER" && data.Data01 != null && data.Data02 != null && data.Data02.GetType() == typeof(TrakHound.API.Data.ControllerInfo)) { Dispatcher.BeginInvoke(new Action(() => { string uniqueId = data.Data01.ToString(); var info = (TrakHound.API.Data.ControllerInfo)data.Data02; int index = DeviceItems.ToList().FindIndex(x => x.Device.UniqueId == uniqueId); if (index >= 0) { var column = DeviceItems[index]; column.UpdateData(info); } }), System.Windows.Threading.DispatcherPriority.DataBind, new object[] { }); } }
private void GetItemsByThread(string objectId, IPortableDeviceContent content, int fNumber) { DateTime startTime = DateTime.Now; //Console.WriteLine("Task begin:" + fNumber + "ObjectID:" + objectId); Item i = new Item(objectId, content); if (i.ContentType.Type == WindowsPortableDeviceEnumerators.ContentType.FunctionalObject || i.ContentType.Type == WindowsPortableDeviceEnumerators.ContentType.Folder || i.ContentType.Type == WindowsPortableDeviceEnumerators.ContentType.Audio || i.ContentType.Type == WindowsPortableDeviceEnumerators.ContentType.Video || i.ContentType.Type == WindowsPortableDeviceEnumerators.ContentType.Image) { DeviceItems.Add(i); } RemoveCurrentTask(); UtilityHelper.LoadedItemCount++; Console.WriteLine("Folder:" + fNumber + " " + i.Name.Value + " -- " + (DateTime.Now - startTime).TotalMilliseconds + " -- Task Count: " + UtilityHelper.threadList.Count); }