using CCDCount.DLL;
using LogClass;
using MvCameraControl;
using System;
using System.Diagnostics;
using System.Drawing;
using System.IO;
using System.Threading;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Interop;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using static System.Net.Mime.MediaTypeNames;
namespace CCDCountWpf.WpfPage
{
///
/// MainPage.xaml 的交互逻辑
///
public partial class MainPage : Page
{
#region 变量与实例
#endregion
public MainPage()
{
InitializeComponent();
DataContext = ShowMessageBus.ShowBinding;
RenderOptions.SetBitmapScalingMode(MiniShowImageBox1, BitmapScalingMode.LowQuality);
RenderOptions.SetBitmapScalingMode(MiniShowImageBox2, BitmapScalingMode.LowQuality);
RenderOptions.SetBitmapScalingMode(MiniShowImageBox3, BitmapScalingMode.LowQuality);
RenderOptions.SetBitmapScalingMode(MiniShowImageBox4, BitmapScalingMode.LowQuality);
RenderOptions.SetBitmapScalingMode(ShowBox, BitmapScalingMode.LowQuality);
}
private void DataClear_Click(object sender, RoutedEventArgs e)
{
if(MessageBus.MainThreadS.Count
/// 启动相机识别
///
private void RunCameraIdentify()
{
for (int i = 0; i < MessageBus.MainThreadS.Count; i++)
{
if (MessageBus.MainThreadS[i].CameraConfigIsChange)
{
MessageBus.MainThreadS[i].ReLoadCameraConfig();
}
//启动单相机实例的全部线程
if (!MessageBus.MainThreadS[i].StartMianThread())
{
FaultLog.RecordErrorMessage(MessageBus.MainThreadS[i].cameraConfig.DeviceName + "_" + MessageBus.MainThreadS[i].cameraConfig.CameraSNNum + "启动失败");
//LOG.error(MessageBus.MainThreadS[i].cameraConfig.DeviceName + "_" + MessageBus.MainThreadS[i].cameraConfig.CameraSNNum + "启动失败");
MessageBox.Show(MessageBus.MainThreadS[i].cameraConfig.DeviceName + "_" + MessageBus.MainThreadS[i].cameraConfig.CameraSNNum + "启动失败");
continue;
}
}
MessageBus.NowLoadCammeraSN = MessageBus.MainThreadS[0].cameraConfig.CameraSNNum;
MessageBus.SeetingNowLoadInMaThreadsIndex = 0;
MessageBus.NowLoadCameraIndex = 0;
}
///
/// 停止相机识别
///
private void StopCameraIdentify()
{
for (int i = 0; i < MessageBus.MainThreadS.Count; i++)
{
//启动单相机实例的全部线程
if (!MessageBus.MainThreadS[i].StopMianThread())
{
FaultLog.RecordErrorMessage(MessageBus.MainThreadS[i].cameraConfig.DeviceName + "_" + MessageBus.MainThreadS[i].cameraConfig.CameraSNNum + "关闭失败");
MessageBox.Show(MessageBus.MainThreadS[i].cameraConfig.DeviceName + "_" + MessageBus.MainThreadS[i].cameraConfig.CameraSNNum + "关闭失败");
continue;
}
}
}
private void StartIdentifyBtn_Click(object sender, RoutedEventArgs e)
{
RunCameraIdentify();
StartIdentifyBtn.IsEnabled = false;
StartIdentifyBtn.Opacity = 0.5;
StopIdentifyBtn.IsEnabled = true;
StopIdentifyBtn.Opacity = 1;
}
private void StopIdentifyBtn_Click(object sender, RoutedEventArgs e)
{
StopCameraIdentify();
StartIdentifyBtn.IsEnabled = true;
StartIdentifyBtn.Opacity = 1;
StopIdentifyBtn.IsEnabled = false;
StopIdentifyBtn.Opacity = 0.5;
}
}
}