From eda17eddf88e6108cadbf8dcef5c2195c1a7b708 Mon Sep 17 00:00:00 2001
From: C3204 <zhengyabo@lanpucloud.cn>
Date: 星期三, 01 四月 2026 10:55:05 +0800
Subject: [PATCH] 提交VS生成临时文件

---
 LB_VisionProcesses/BarcodeReaders/BarcodeReaderBase.cs |   59 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 59 insertions(+), 0 deletions(-)

diff --git a/LB_VisionProcesses/BarcodeReaders/BarcodeReaderBase.cs b/LB_VisionProcesses/BarcodeReaders/BarcodeReaderBase.cs
new file mode 100644
index 0000000..83fd230
--- /dev/null
+++ b/LB_VisionProcesses/BarcodeReaders/BarcodeReaderBase.cs
@@ -0,0 +1,59 @@
+using System;
+using System.Collections.Generic;
+
+namespace LB_VisionProcesses.BarcodeReaders
+{
+    /// <summary>
+    /// 璇荤爜鍣ㄦ娊璞″熀绫�
+    /// </summary>
+    public abstract class BarcodeReaderBase : IBarcodeReader
+    {
+        public virtual event EventHandler<BarcodeEventArgs> BarcodeRead;
+
+        public virtual string SN { get; set; } = string.Empty;
+
+        public virtual bool IsConnected { get; set; } = false;
+
+        public virtual bool IsGrabbing { get; set; } = false;
+
+        public abstract BarcodeReaderBrand Brand { get; }
+
+        protected BarcodeReaderBase() { }
+
+        /// <summary>
+        /// 瑙﹀彂璇荤爜鎴愬姛浜嬩欢
+        /// </summary>
+        protected virtual void OnBarcodeRead(BarcodeEventArgs e)
+        {
+            BarcodeRead?.Invoke(this, e);
+        }
+
+        public abstract List<string> GetDeviceList();
+
+        public abstract bool Open(string sn);
+
+        public abstract bool Close();
+
+        public abstract bool StartGrabbing();
+
+        public abstract bool StopGrabbing();
+
+        public abstract bool SoftTrigger();
+
+        public abstract bool SetTriggerMode(bool isSoftware);
+
+        public virtual void Dispose()
+        {
+            try
+            {
+                if (IsConnected)
+                {
+                    Close();
+                }
+                IsConnected = false;
+                IsGrabbing = false;
+            }
+            catch { }
+        }
+    }
+}

--
Gitblit v1.9.3