From d0ded5cd9bf5070a120bad58b5be21fe2ac6a4ff Mon Sep 17 00:00:00 2001
From: C3032 <C3032@BC3032>
Date: 星期六, 20 十二月 2025 16:41:09 +0800
Subject: [PATCH] test

---
 IDViewer_2D/IDViewerDefines1.cs |  452 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 452 insertions(+), 0 deletions(-)

diff --git a/IDViewer_2D/IDViewerDefines1.cs b/IDViewer_2D/IDViewerDefines1.cs
new file mode 100644
index 0000000..05b7762
--- /dev/null
+++ b/IDViewer_2D/IDViewerDefines1.cs
@@ -0,0 +1,452 @@
+锘縰sing System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Runtime.InteropServices;
+
+namespace IDViewer_2D
+{
+    class IDViewerDefines
+    {
+        // 浣跨敤鏋氫妇琛ㄧず鍥炶皟娑堟伅ID
+        public enum CallbackMessageID
+        {
+            DeviceConnectionEstablished = 1,
+            DeviceConnectionClosed = 2
+        }
+
+        public enum ErrorCodes
+        {
+            ID_OK = 0,                      //鎴愬姛
+            ID_ERROR_ALREADY_INIT = 146000010,              //宸茬粡鍒濆鍖�
+            ID_ERROR_NOT_INIT = 146000011,              //鏈垵濮嬪寲
+            ID_ERROR_CREATE_DEVICE_INFO_NOT_EXSIST = 146000012,             //褰撳墠鍒涘缓璁惧涓嶅瓨鍦�
+            ID_ERROR_SET_IP_DEVICE_ALREADY_CREATED = 146000013,             //褰撳墠璁剧疆IP璁惧宸茬粡鍒涘缓
+            ID_ERROR_DEVICE_HAVE_OPENED = 146000014,                //璁惧宸茬粡鎵撳紑
+            ID_ERROR_OPEN_DEVICE_CONNECT_PARAMS_ERROR = 146000015,              //鎵撳紑璁惧杩炴帴鍙傛暟閿欒
+            ID_ERROR_OPEN_DEVICE_CONNECT_IS_CREATE = 146000016,             //鎵撳紑璁惧杩炴帴宸茬粡鍒涘缓
+            ID_ERROR_OPEN_DEVICE_CONNECT_SOCKET_FAILED = 146000017,             //鎵撳紑璁惧杩炴帴寤虹珛澶辫触
+            ID_ERROR_OPEN_DEVICE_CONNECT_FAILED = 146000018,                //鎵撳紑璁惧杩炴帴澶辫触
+            ID_ERROR_DEVICE_NOT_OPEN = 146000019,               //璁惧鏈墦寮�
+            ID_ERROR_DEVICE_IS_RUNNING = 146000020,             //璁惧宸茬粡鍦ㄨ繍琛屾ā寮�
+            ID_ERROR_DEVICE_IS_DEBUGGING = 146000021,               //璁惧宸茬粡鍦ㄨ皟璇曟ā寮�
+            ID_ERROR_DEVICE_QUERY_HARDWARE_INFO_FAILED = 146000022,             //鑾峰彇璁惧纭欢淇℃伅澶辫触
+            ID_ERROR_OPEN_DEVICE_CREATE_DATA_RECEIVED_FAILED = 146000023,               //鎵撳紑璁惧鎺ユ敹鏁版嵁鏈嶅姟鍒涘缓澶辫触
+            ID_ERROR_OPEN_DEVICE_SOLUTION_MANAGER_CONNECTION_FAILED = 146000024,                //鎵撳紑璁惧鏃惰繛鎺ユ柟妗堢鐞嗗伐鍏峰け璐�
+            ID_ERROR_SOLUTION_MANAGER_TIMEOUT = 146000025,              //鏂规绠$悊绫昏秴鏃�
+            ID_ERROR_SOLUTION_MANAGER_CAN_NOT_DELETE_CURRENT_SOLUTION = 146000026,              //涓嶈兘鍒犻櫎褰撳墠鏂规
+            ID_ERROR_SOLUTION_MANAGER_CURRENT_SOLUTION_NOT_EXISTED = 146000027,             //褰撳墠鏂规涓嶅瓨鍦�
+            ID_ERROR_SET_IP_ADDRESS_INVALID = 146000028,                //璁剧疆IP鍦板潃涓嶅悎娉�
+            ID_ERROR_SET_IP_MASK_INVALID = 146000029,               //璁剧疆瀛愮綉鎺╃爜鍦板潃涓嶅悎娉�
+            ID_ERROR_SET_IP_GATEWAY_INVALID = 146000030,                //璁剧疆缃戝叧鍦板潃涓嶅悎娉�
+            ID_ERROR_SET_IP_ADDRESS_GATEWAY_NOT_IN_SAME_SUBNET = 146000031,             //璁剧疆鐨処P鍦板潃鍜岀綉鍏充笉鍦ㄥ悓涓�缃戞
+            ID_ERROR_SET_IP_ADDRESS_ALREADY_EXISTED = 146000032,                //璁剧疆鐨処P宸茬粡瀛樺湪
+            ID_ERROR_SOLUTION_MANAGER_SOLUTION_NAME_INVALID = 46000033				//鏂规鍚嶇О闈炴硶,涓嶈兘鍖呭惈<>:\"/\\|?*
+
+        }
+
+        public enum IDImageType
+        {
+            ID_IMAGE_8U_C = 0,			// 8浣嶆棤绗﹀彿绫诲瀷
+            ID_IMAGE_8S_C,				// 8浣嶆湁绗﹀彿绫诲瀷
+            ID_IMAGE_16U_C,				// 16浣嶆棤绗﹀彿绫诲瀷
+            ID_IMAGE_16S_C,				// 16浣嶆湁绗﹀彿绫诲瀷
+            ID_IMAGE_32S_C,				// 32浣嶆湁绗﹀彿绫诲瀷
+            ID_IMAGE_32F_C,				// 32浣嶆诞鐐圭被鍨�
+            ID_IMAGE_64F_C  			// 64浣嶆诞鐐圭被鍨�
+        }
+
+        //鏉$爜绫诲瀷鏋氫妇
+        public enum IDCodeType
+        {
+            ID_CODETYPE_UNKNOWN_C = 0x0,
+            ID_CODETYPE_CODE39_C = 0x1,
+            ID_CODETYPE_CODE128_C = 0x2,
+            ID_CODETYPE_EAN8_C = 0x4,
+            ID_CODETYPE_EAN13_C = 0x8,
+            ID_CODETYPE_UPC_A_C = 0x10,
+            ID_CODETYPE_UPC_E_C = 0x20,
+            ID_CODETYPE_CODE93_C = 0x40,
+            ID_CODETYPE_ITF_C = 0x80,
+            ID_CODETYPE_GS1_128_C = 0x100,
+            ID_CODETYPE_GS1_DATABAR_EXPANDED_C = 0x200,
+            ID_CODETYPE_GS1_DATABAR_C = 0x400,
+            ID_CODETYPE_GS1_DATABAR_STACKED_C = 0x600,
+            ID_CODETYPE_GS1_DATABAR_EXPANDED_STACKED_C = 0x800,
+            ID_CODETYPE_GS1_DATABAR_LINITED_C = 0x1000,
+            ID_CODETYPE_PHARMACODE_C = 0x2000,
+            ID_CODETYPE_MSI_C = 0x4000,
+            ID_CODETYPE_PLESSEY_C = 0x8000,
+            ID_CODETYPE_CODEBAR_C = 0x10000,
+            ID_CODETYPE_INT2OF5_C = 0x20000,
+            ID_CODETYPE_STD2OF5_C = 0x40000,
+            ID_CODETYPE_MTX2OF5_C = 0x80000,
+            ID_CODETYPE_DATAMATRIX_C = 0x04000000,
+            ID_CODETYPE_QRCODE_C = 0x08000000,
+            ID_CODETYPE_PDF417_C = 0x010000000,
+            ID_CODETYPE_MICROQR_C = 0x020000000,
+            ID_CODETYPE_AZTEC_C = 0x040000000,
+            //ID_CODETYPE_VERICODE_C = 0x080000000
+        }
+
+
+        public struct IDDeviceInfo
+        {
+            [MarshalAs(UnmanagedType.ByValArray, SizeConst = 20)]
+            public char[] networkIP;
+
+            [MarshalAs(UnmanagedType.ByValArray, SizeConst = 256)]
+            public char[] networkMask;
+
+            [MarshalAs(UnmanagedType.ByValArray, SizeConst = 256)]
+            public char[] networkGateway;
+
+            [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 256)]
+            public string networkAdapterFriendName;
+
+            [MarshalAs(UnmanagedType.ByValArray, SizeConst = 256)]
+            public char[] networkMac;
+
+            [MarshalAs(UnmanagedType.ByValArray, SizeConst = 20)]
+            public char[] cameraIP;
+
+            [MarshalAs(UnmanagedType.ByValArray, SizeConst = 256)]
+            public char[] cameraNetMask;
+
+            [MarshalAs(UnmanagedType.ByValArray, SizeConst = 256)]
+            public char[] cameraGateWay;
+
+            [MarshalAs(UnmanagedType.ByValArray, SizeConst = 256)]
+            public char[] cameraMac;
+
+            [MarshalAs(UnmanagedType.ByValArray, SizeConst = 256)]
+            public char[] cameraSN;
+
+            [MarshalAs(UnmanagedType.ByValArray, SizeConst = 256)]
+            public char[] cameraModel;
+
+            [MarshalAs(UnmanagedType.ByValArray, SizeConst = 256)]
+            public char[] cameraManufucturer;
+
+            [MarshalAs(UnmanagedType.ByValArray, SizeConst = 256)]
+            public char[] cameraSoftwareVersion;
+
+            [MarshalAs(UnmanagedType.ByValArray, SizeConst = 256)]
+            public char[] cameraFirmwareVersion;
+
+            [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 256)]
+            public string cameraAlias;
+
+            [MarshalAs(UnmanagedType.ByValArray, SizeConst = 256)]
+            public char[] cameraType;
+        }
+
+        //纭欢淇℃伅閫氱敤鑺傜偣缁撴瀯浣�
+        public struct IDNodeParam
+        {
+            public float maxValue;
+            public float minValue;
+            public float value;
+            public int type;
+        }
+
+        public IDNodeParam createIDNodeParam_C() {
+            IDNodeParam param;
+            param.maxValue = 0;
+            param.minValue = 0;
+            param.value = 0;
+            param.type = 0;
+            return param;
+        }
+
+
+        //纭欢淇℃伅缁撴瀯浣�
+        public struct IDDeviceHarewareParams
+        {
+            public int imageWidth;
+            public int imageHight;
+            public IDNodeParam exposureStep;
+            public IDNodeParam exposure;
+            public IDNodeParam gamma;
+            public IDNodeParam gain;
+            public IDNodeParam illuminanatInerval;
+
+            public IDNodeParam focusingLocation;
+            public IDNodeParam DICount;
+            public IDNodeParam DOCount;
+            public IDNodeParam isOpenSightingDevice;
+        }
+
+
+        public IDDeviceHarewareParams createID_DEVICE_HARDWARE_PARAMS()
+        {
+            IDDeviceHarewareParams HarewareParams;
+            HarewareParams.imageWidth = 0;
+            HarewareParams.imageHight = 0;
+            HarewareParams.exposureStep = createIDNodeParam_C();
+            HarewareParams.exposure = createIDNodeParam_C();
+            HarewareParams.gamma = createIDNodeParam_C();
+            HarewareParams.gain = createIDNodeParam_C();
+            HarewareParams.illuminanatInerval = createIDNodeParam_C();
+
+            HarewareParams.focusingLocation = createIDNodeParam_C();
+            HarewareParams.DICount = createIDNodeParam_C();
+            HarewareParams.DOCount = createIDNodeParam_C();
+            HarewareParams.isOpenSightingDevice = createIDNodeParam_C();
+
+            return HarewareParams;
+
+        }
+
+        //鐐圭被鍨嬬粨鏋勪綋
+        public struct IDPoint
+        {
+            public double x;
+            public double y;
+        }
+
+        //璐ㄩ噺璇勪及杈撳嚭缁撴灉
+        //ISO IEC 15416-2016
+        public struct IDQuality15416
+        {
+            public float overallQuality;
+            public float decode;
+            public float edgeDetermination;
+            public float symbolContrast;
+            public float minReflectance;
+            public float minEdgeContrast;
+            public float modulation;
+            public float quietZone;
+            public float decodability;
+            public float defects;
+        }
+
+        //ISO_IEC15415-2011 QR
+        public struct IDQualityQR15415
+        {
+            public float overallQuality;
+            public float decode;
+            public float symbolContrast;
+            public float fixedPatternDamage;
+            public float modulation;
+            public float reflectanceMargin;
+            public float unusedErrCorrection;
+            public float axialNonuniformity;
+            public float gridNonuniformity;
+            public float formatInformation;
+            public float versionInformation;
+            public float contrastUniformity;
+            public float printGrowth;
+            public float aperture;
+        }
+
+        //DM 15415鐮佽川閲�
+        public struct IDQualityDM15415
+        {
+            public float overallQuality;
+            public float decode;
+            public float symbolContrast;
+            public float fixedPatternDamage;
+            public float modulation;
+            public float reflectanceMargin;
+            public float unusedErrCorrection;
+            public float axialNonuniformity;
+            public float gridNonuniformity;
+            public float contrastUniformity;
+            public float printGrowth;
+            public float aperture;
+        }
+
+
+        //ISO IEC TR 29158-2011(AIM-DPM-1-2006)
+        public struct IDQualityDM29518
+        {
+            public float overallQuality;
+            public float decode;
+            public float cellContrast;
+            public float cellModulation;
+            public float reflectanceMargin;
+            public float fixedPatternDamage;
+            public float axialNonuniformity;
+            public float gridNonuniformity;
+            public float unusedErrCorrection;
+            public float contrastUniformity;
+            public float meanLight;
+            public float printGrowth;
+            public float aperture;
+        }
+
+        //QR 29158缁撴瀯浣�
+        public struct IDQualityQR29518
+        {
+            public float overallQuality;
+            public float decode;
+            public float cellContrast;
+            public float cellModulation;
+            public float fixedPatternDamage;
+            public float reflectanceMargin;
+            public float unusedErrCorrection;
+            public float axialNonuniformity;
+            public float gridNonuniformity;
+            public float formatInformation;
+            public float versionInformation;
+            public float contrastUniformity;
+            public float meanLight;
+            public float printGrowth;
+            public float aperture;
+        }
+
+
+        public struct IDQualityPDF417_15415
+        {
+            public float overallQuality;
+            public float decode;
+            public float symbolContrast;
+            public float fixPattern;
+            public float modulation;
+            public float unusedErrCorrection;
+            public float axialNonuniformity;
+            public float gridNonuniformity;
+            public float startStopPattern;
+            public float codewordYield;
+            public float defects;
+            public float aperture;
+        }
+
+
+
+
+        [StructLayout(LayoutKind.Sequential, Pack = 1, Size = 36)]
+        public struct IDDecodeInfo   
+        {
+            [MarshalAs(UnmanagedType.I1)]
+            public bool decodeStatus;                           //瑙g爜缁撴灉鐘舵�丱K/NG   
+            public float runtime;                               //瑙g爜鑰楁椂            
+            public uint hardParamIndex;
+            public uint successCount;                           //瑙g爜鎴愬姛鏁�
+            public uint failedCount;                            //瑙g爜澶辫触鏁�
+            public uint decodeCount;                            //鎬昏В鐮佹暟
+            public double decodeRate;                           //瑙g爜鐜�
+            public uint IDDecodeROIInfoLength;                  //ROI瑙g爜淇℃伅鏁扮粍鐨勯暱搴�
+        }
+
+
+        //褰撳墠ROI瑙g爜缁撴灉
+        public struct IDDecodeROIInfo
+        {
+
+            public int roiIndex;                                        //ROI缂栧彿
+            public int decodeReusltLength;                             
+        }
+
+
+        //褰撳墠瑙g爜缁撴灉,褰撳墠鐗堟湰姣忎釜瑙g爜缁撴灉涓殑闆嗗悎,鍙湁涓�涓爜鍒舵湁缁撴灉锛岄噷闈㈢殑闀垮害浠h〃鐨勬槸褰撳墠鐮佺被鍨嬬殑瑙g爜涓暟
+        public struct IDDecodeResult {
+            public int conbination;
+            public int dmResultsLength;
+            public int qrResultsLength;
+            public int pdf417ResultsLength;
+            public int barcodeResultsLength;
+        }
+
+
+        [StructLayout(LayoutKind.Sequential, CharSet = CharSet.Ansi,Pack = 1)]
+        public struct IDDMCodeResult
+        {
+            [MarshalAs(UnmanagedType.I1)]
+            public bool state;                   // 褰撳墠缁撴灉瑙g爜鐘舵��
+            [MarshalAs(UnmanagedType.ByValArray, SizeConst = 256 )]
+            public char[] subType;               // 瀛愮被鍨�
+            [MarshalAs(UnmanagedType.ByValArray, SizeConst = 256)]
+            public char[] codeString;            // 瑙g爜缁撴灉
+            [MarshalAs(UnmanagedType.ByValArray, SizeConst = 256)]
+            public char[] polarity;              // 鏋佹��
+            [MarshalAs(UnmanagedType.ByValArray, SizeConst = 256)]
+            public char[] shape;                 // 鏍峰紡
+            [MarshalAs(UnmanagedType.ByValArray, SizeConst = 256)]
+            public char[] mirror;                // 闀滃儚
+            public int contrast;                 // 瀵规瘮搴�
+            public float moduleSize;
+            public float orientation;
+
+        }
+
+
+
+        //QR瑙g爜缁撴灉
+        [StructLayout(LayoutKind.Sequential, CharSet = CharSet.Ansi, Pack = 1)]
+        public struct IDQRCodeResult {
+
+            [MarshalAs(UnmanagedType.I1)]
+            public bool state;										//褰撳墠缁撴灉瑙g爜鐘舵��
+	        //IDCodeType codeType;							//鏉$爜绫诲瀷
+			[MarshalAs(UnmanagedType.ByValArray, SizeConst = 256)]
+	        public char[] codeString;                                //瑙g爜缁撴灉
+            [MarshalAs(UnmanagedType.ByValArray, SizeConst = 256)]
+            public char[] subType;
+            [MarshalAs(UnmanagedType.ByValArray, SizeConst = 256)]
+            public char[] polarity;
+            [MarshalAs(UnmanagedType.ByValArray, SizeConst = 256)]
+            public char[] errorLevel;
+            [MarshalAs(UnmanagedType.ByValArray, SizeConst = 256)]
+            public char[] mirror;									//闀滃儚
+            [MarshalAs(UnmanagedType.ByValArray, SizeConst = 256)]
+            public char[] version;									//鐗堟湰淇℃伅
+	        public int contrast;
+	        public float moduleSize;
+	        public float orientation;								//瑙掑害
+        }
+
+
+
+
+        //PDF417瑙g爜缁撴灉
+
+        [StructLayout(LayoutKind.Sequential, CharSet = CharSet.Ansi, Pack = 1)]
+        public struct IDPDF417CodeResult {
+
+            [MarshalAs(UnmanagedType.I1)]
+            public bool state;										//褰撳墠缁撴灉瑙g爜鐘舵��
+            [MarshalAs(UnmanagedType.ByValArray, SizeConst = 256)]
+	        public char[] codeString;								//瑙g爜缁撴灉	
+            [MarshalAs(UnmanagedType.ByValArray, SizeConst = 256)]
+            public char[] subType;									//瀛愮被鍨�
+            [MarshalAs(UnmanagedType.ByValArray, SizeConst = 256)]
+            public char[] polarity;								//鏋佹��
+            [MarshalAs(UnmanagedType.ByValArray, SizeConst = 256)]
+            public char[] mirror;									//闀滃儚
+	        public int symbolRows;
+	        public int	symbolCols;
+	        public int	errorLevel;
+	        public int contrast;
+	        public float moduleHeight;
+	        public float pixelPerModule;							//moduleWidth
+	        public float  moduleRatio;
+	        public float orientation;								//瑙掑害
+
+	        //IDQualityPDF417_15415 quality15415;
+        }
+
+
+        //barcode瑙g爜缁撴灉
+        [StructLayout(LayoutKind.Sequential, CharSet = CharSet.Ansi, Pack = 1)]
+        public struct IDBarCodeResult {
+
+            [MarshalAs(UnmanagedType.I1)]
+            public bool state;										//褰撳墠缁撴灉瑙g爜鐘舵��
+            [MarshalAs(UnmanagedType.ByValArray, SizeConst = 256)]
+            public char[] codeString;								//瑙g爜缁撴灉
+	        public float orientation;								//瑙掑害
+	        public float pixelPerModule;
+
+        }
+        
+        public unsafe struct StringList
+        {
+            public char** items;
+            public int size;
+            public int capacity;
+        }
+
+    }
+}

--
Gitblit v1.9.3