领胜LDS 键盘AOI检测项目
src/Bro.Device.GTSCard/GTSCardDriver.cs
@@ -23,7 +23,7 @@
        // 异常事件
        public Action<Exception> OnExceptionRaised;
        public GTSCardInitialConfig IConfig
        public GTSCardInitialConfig IIConfig
        {
            get
            {
@@ -77,7 +77,10 @@
        public override ResponseMessage Run(IOperationConfig config)
        {
            throw new NotImplementedException();
            ResponseMessage responseMessage = new ResponseMessage();
            return responseMessage;
        }
        #endregion
@@ -161,22 +164,22 @@
        /// <returns>运动控制+停止判断</returns>
        public override ResponseMessage MoveToPoint(IOperationConfig opConfig)
        {
            bool resultOK = false;
            var gtsOperationConfig = opConfig as GTSCardOperationConfig;
            List<Task<bool>> taskList = new List<Task<bool>>();
            //TaskFactory factory = new TaskFactory(TaskCreationOptions.LongRunning, TaskContinuationOptions.None);
            // 如果是多个轴的运动 等每个轴运动结束
            foreach (var movingOp in gtsOperationConfig.MovingOps)
            {
                //var task = factory.StartNew<bool>((op) =>
                //{
                //    return SingleAxisMoving(op as MovingOption);
                //}, movingOp);
                var task = SingleAxisMoving(movingOp);
                taskList.Add(task);
            }
            Task.WaitAll(taskList.ToArray());
            resultOK = taskList.All(u => u.GetAwaiter().GetResult());
            //bool resultOK = false;
            //var gtsOperationConfig = opConfig as GTSCardOperationConfig;
            //List<Task<bool>> taskList = new List<Task<bool>>();
            ////TaskFactory factory = new TaskFactory(TaskCreationOptions.LongRunning, TaskContinuationOptions.None);
            //// 如果是多个轴的运动 等每个轴运动结束
            //foreach (var movingOp in gtsOperationConfig.MovingOps)
            //{
            //    //var task = factory.StartNew<bool>((op) =>
            //    //{
            //    //    return SingleAxisMoving(op as MovingOption);
            //    //}, movingOp);
            //    var task = SingleAxisMoving(movingOp);
            //    taskList.Add(task);
            //}
            //Task.WaitAll(taskList.ToArray());
            //resultOK = taskList.All(u => u.GetAwaiter().GetResult());
            //return resultOK;
            throw new NotImplementedException();
@@ -770,7 +773,7 @@
            });
        }
        private void OnMethodInvoked(IAsyncResult ar)
        public override void OnMethodInvoked(IAsyncResult ar)
        {
            MotionCardMonitorSet monitorSet = ar.AsyncState as MotionCardMonitorSet;
            ProcessResponse resValues = monitorSet.Response;