using Cognex.VisionPro;
using Cognex.VisionPro.ImageFile;
using Cognex.VisionPro.QuickBuild;
using Cognex.VisionPro.ToolBlock;
using LampInspectionMachine.Cameralibs;
using LampInspectionMachine.Interfaces;
using LampInspectionMachine.Log4xml;
using LampInspectionMachine.Model;
using MvCamCtrl.NET;
using Prism.Events;
using Prism.Ioc;
using Prism.Regions;
using System;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Drawing;
using System.Linq;
using System.Runtime.InteropServices;
using System.Text;
using System.Threading;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace LampInspectionMachine.Core
{
public class VisionProManager
{
private ICamera _camera;
private CogToolBlock _cogToolBlock;
private CameraInfo _cameraInfo;
private Management _management;
public ICamera Camera { get => _camera; set => _camera = value; }
public CogToolBlock CogToolBlock { get => _cogToolBlock; set => _cogToolBlock = value; }
public CameraInfo CameraInfo { get => _cameraInfo; set => _cameraInfo = value; }
public Management Management { get => _management; set => _management = value ; }
///
///调试图像显示
///
///
public void CamCallBack(ICogImage image, TimeSpan totaltime, string errormessage)
{
try
{
if (Management!=null)Management.Image = image;
}
finally
{
}
}
///
/// 运行视觉处理
///
public void ImageCallback(ICogImage image)
{
if ( CogToolBlock != null )
{
CogToolBlock.Inputs[ 0 ].Value = image;
CogToolBlock.Run();
}
// Image = ( ICogImage ) cogToolBlock.Outputs[ 6 ].Value;
}
}
}