From 3322022068ab818912d6f5d9e5eb31f51cc639c2 Mon Sep 17 00:00:00 2001
From: patrick.xu <patrick.xu@broconcentric.com>
Date: 星期四, 24 二月 2022 09:12:30 +0800
Subject: [PATCH] 添加配置文件的DataShift2

---
 src/Bro.Common.Device/DeviceBase/MotionCardBase.cs |   31 +++++++++++++++++++++++++++++--
 1 files changed, 29 insertions(+), 2 deletions(-)

diff --git a/src/Bro.Common.Device/DeviceBase/MotionCardBase.cs b/src/Bro.Common.Device/DeviceBase/MotionCardBase.cs
index 103cc21..ef22a40 100644
--- a/src/Bro.Common.Device/DeviceBase/MotionCardBase.cs
+++ b/src/Bro.Common.Device/DeviceBase/MotionCardBase.cs
@@ -22,7 +22,8 @@
         public event Action<DateTime, IDevice, IWarningSet> OnMonitorAlarm;
         public event Action<int, string> OnAxisAlarmRaised;
         public event Action<int, int, int> OnAxisStatusChanged;
-
+        public event Action<int, int> OnAxisPositionChanged;
+        
         public void AxisAlarmRaised(int axisIndex, string msg)
         {
             OnAxisAlarmRaised?.Invoke(axisIndex, msg);
@@ -33,8 +34,22 @@
             OnAxisStatusChanged?.Invoke(axisIndex, preStatus, curStatus);
         }
 
+        public void AxisPositionChanged(int axisIndex, int currentPosition)
+        {
+            OnAxisPositionChanged?.Invoke(axisIndex, currentPosition);
+        }
+
         protected override void Start()
         {
+            AxisStatusList = IConfig.AxisSettings.Where(a => a.IsAxisEnabled).ToList().ConvertAll(a =>
+            {
+                AxisMovingStatus axisSts = new AxisMovingStatus();
+                axisSts.AxisIndex = a.AxisIndex;
+                axisSts.AxisName = a.AxisName;
+
+                return axisSts;
+            });
+
             Task.Run(() =>
             {
                 Monitor();
@@ -131,7 +146,7 @@
         /// <summary>
         /// 鎭㈠绔嬪嵆鏆傚仠
         /// </summary>
-        public abstract void ResetImmediatePause();
+        public abstract void ResetImmediatePause(bool isResumeMoving);
         #endregion
     }
 
@@ -182,6 +197,10 @@
         [TypeConverter(typeof(CollectionCountConvert))]
         [Editor(typeof(ComplexCollectionEditor<IODefinition>), typeof(UITypeEditor))]
         public List<IODefinition> IODefinitionCollection { get; set; } = new List<IODefinition>();
+
+        [Category("IO閰嶇疆")]
+        [Description("true锛氳緭鍑哄彇鍙� false锛氳緭鍑轰笉鍙栧弽")]
+        public bool IsOutputReversed { get; set; } = true;
 
         #region IMonitorConfig
         [Category("鐩戝惉璁剧疆")]
@@ -306,6 +325,14 @@
         [Editor(typeof(MovingOpsCollectionEditor), typeof(UITypeEditor))]
         public List<MovingOption> MovingOps { get; set; } = new List<MovingOption>();
 
+        [Category("3.杩愬姩寤舵椂")]
+        [Description("鎿嶄綔鍓嶅欢鏃讹紝鍗曚綅ms")]
+        public int DelayBefore { get; set; } = 0;
+
+        [Category("3.杩愬姩寤舵椂")]
+        [Description("鎿嶄綔鍚庡欢鏃讹紝鍗曚綅ms")]
+        public int DelayAfter { get; set; } = 0;
+
         public string MotionCardId = "";
 
         //[Category("鏉垮崱杩愬姩閰嶇疆")]

--
Gitblit v1.8.0