private void DispatcherTimer_Tick(object sender, EventArgs e) { //获取记录状态 var status = SDKVm.GetRecordStatus();//记录时间,大小计算速度 if (status.record_time[0] > 0) { var highsize = (long)(status.record_size_high_part[0] << 32); var totalsize = highsize + status.record_size_low_part[0]; var rate = (long)(totalsize / status.record_time[0]) * 1024 * 1000; double data = 0; if (rate > 1.0) { data = Convert.ToDouble(rate / 1024 / 1024 / 1024.0) + 3; } SDKVm.RecordRateText = string.Format("{0}GB/s", data.ToString("f2")); SDKVm.RecordStatusText = "正在记录"; } else { SDKVm.RecordRateText = "0.00GB/s"; SDKVm.RecordStatusText = "就绪"; } }
private void MainWindow_Closed(object sender, EventArgs e) { GatherVm.OnSendData(0x03, 0x02, 0x00); Thread.Sleep(500); SDKVm.OnStopRecod(); mainTimer.Stop(); dispatcherTimer.Stop(); }
private void OnSDKInit() { var result = MessageBox.Show("你确定要格式化存储磁盘吗?", "格式化提醒", MessageBoxButton.OKCancel, MessageBoxImage.Warning); if (result == MessageBoxResult.OK) { SDKVm.FormatDevice(); } }
private void MainWindow_Closing(object sender, System.ComponentModel.CancelEventArgs e) { //获取记录状态 var status = SDKVm.GetRecordStatus();//记录时间,大小计算速度 if (status.record_time[0] > 0) { MessageBox.Show("正在采集数据,请先停止采集!"); e.Cancel = true; } }
private void Current_Exit(object sender, ExitEventArgs e) { GatherVm.OnSendData(0x03, 0x02, 0x00); Thread.Sleep(500); SDKVm.OnStopRecod(); mainTimer.Stop(); dispatcherTimer.Stop(); SDKVm.RecordRateText = "0.00GB/s"; SDKVm.RecordStatusText = "就绪"; ButtonEnable = true; IsRecording = false; }
private void OnConnectedDevice() { GatherVm.Connect(); //采集连接 Thread.Sleep(100); RadioVm.Connect(); //射频连接 Thread.Sleep(100); var result = SDKVm.Connected(); //存储网卡连接 if (result) { SDKVm.LoadDeviceStatus(); SDKVm.Get_Record_List(); } }
//开始记录 所有操作 private void OnStartRecord() { if (GatherVm.CurrentMode == null) { LogInfo = "请选择采集模式!\n"; MessageBox.Show("请先选择采集模式"); return; } //如果计时大于O 定时采集 if (RecordTime > 0) { ButtonEnable = false; IsRecording = true; var result = SDKVm.StartRecord(0); dispatcherTimer.Start(); if (!result) { //开启存储记录失败 LogInfo = "开启存储记录失败!"; ButtonEnable = true; IsRecording = false; dispatcherTimer.Stop(); SDKVm.RecordRateText = "0.00GB/s"; SDKVm.RecordStatusText = "就绪"; return; } var dcTimer = new DispatcherTimer(DispatcherPriority.Background) { Interval = TimeSpan.FromMilliseconds(RecordTime), IsEnabled = true }; dcTimer.Tick += (s, e) => { GatherVm.OnSendData(0x03, 0x02, 0x00); Thread.Sleep(500); SDKVm.OnStopRecod(); //记录时间停止 dcTimer.Stop(); dispatcherTimer.Stop(); SDKVm.RecordRateText = "0.00GB/s"; SDKVm.RecordStatusText = "就绪"; ButtonEnable = true; IsRecording = false; }; Thread.Sleep(500); GatherVm.OnSendData(0x03, 0x02, 0x01); dcTimer.Start(); } else { if (!IsRecording) { IsRecording = true; var result = SDKVm.StartRecord(0); dispatcherTimer.Start(); if (!result) { //开启存储记录失败 LogInfo = "开启存储记录失败!"; ButtonEnable = true; IsRecording = false; dispatcherTimer.Stop(); SDKVm.RecordRateText = "0.00GB/s"; SDKVm.RecordStatusText = "就绪"; return; } Thread.Sleep(500); GatherVm.OnSendData(0x03, 0x02, 0x01); } else { GatherVm.OnSendData(0x03, 0x02, 0x00); Thread.Sleep(500); SDKVm.OnStopRecod(); //记录时间停止 dispatcherTimer.Stop(); IsRecording = false; SDKVm.RecordRateText = "0.00GB/s"; SDKVm.RecordStatusText = "就绪"; } } }
private void MainTimer_Tick(object sender, EventArgs e) { SDKVm.GetSystemStatus(); }