Beispiel #1
0
        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 = "就绪";
            }
        }
Beispiel #2
0
 private void MainWindow_Closed(object sender, EventArgs e)
 {
     GatherVm.OnSendData(0x03, 0x02, 0x00);
     Thread.Sleep(500);
     SDKVm.OnStopRecod();
     mainTimer.Stop();
     dispatcherTimer.Stop();
 }
Beispiel #3
0
        private void OnSDKInit()
        {
            var result = MessageBox.Show("你确定要格式化存储磁盘吗?", "格式化提醒", MessageBoxButton.OKCancel, MessageBoxImage.Warning);

            if (result == MessageBoxResult.OK)
            {
                SDKVm.FormatDevice();
            }
        }
Beispiel #4
0
        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;
            }
        }
Beispiel #5
0
 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;
 }
Beispiel #6
0
        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();
            }
        }
Beispiel #7
0
 //开始记录 所有操作
 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 = "就绪";
         }
     }
 }
Beispiel #8
0
 private void MainTimer_Tick(object sender, EventArgs e)
 {
     SDKVm.GetSystemStatus();
 }