From 0ecd4a0ec8c4c5585cbd8975d7786c5618814381 Mon Sep 17 00:00:00 2001
From: Junjie <DELL@qq.com>
Date: 星期三, 03 十二月 2025 08:28:59 +0800
Subject: [PATCH] #

---
 MvImport/CameraParams_header.py | 1700 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 1,700 insertions(+), 0 deletions(-)

diff --git a/MvImport/CameraParams_header.py b/MvImport/CameraParams_header.py
new file mode 100644
index 0000000..1caf207
--- /dev/null
+++ b/MvImport/CameraParams_header.py
@@ -0,0 +1,1700 @@
+#!/usr/bin/env python
+# -*- coding: utf-8 -*-
+
+import platform
+
+from ctypes import *
+from CameraParams_const import *
+from PixelType_header import *
+
+from CameraParams_const import *
+from PixelType_header import *
+
+STRING = c_char_p
+
+## @~chinese 璁惧鎺掑簭鏂瑰紡                     @~english The Method of Sorting
+SortMethod_SerialNumber = 0                      ## @~chinese 鎸夊簭鍒楀彿鎺掑簭                     @~english Sorting by SerialNumber
+SortMethod_UserID = 1                            ## @~chinese 鎸夌敤鎴疯嚜瀹氫箟鍚嶅瓧鎺掑簭             @~english Sorting by UserID
+SortMethod_CurrentIP_ASC = 2                     ## @~chinese 鎸夊綋鍓岻P鍦板潃鎺掑簭锛堝崌搴忥級         @~english Sorting by current IP锛圓scending锛�
+SortMethod_CurrentIP_DESC = 3                    ## @~chinese 鎸夊綋鍓岻P鍦板潃鎺掑簭锛堥檷搴忥級         @~english Sorting by current IP锛圖escending锛�
+
+
+## @~chinese 鍙栨祦绛栫暐                     @~english The strategy of Grabbing
+MV_GrabStrategy_OneByOne = 0                     ## @~chinese 浠庢棫鍒版柊涓�甯т竴甯х殑鑾峰彇鍥惧儚        @~english Frame by frame from old to new
+MV_GrabStrategy_LatestImagesOnly = 1             ## @~chinese 鑾峰彇鍒楄〃涓渶鏂扮殑涓�甯у浘鍍忥紙鍚屾椂娓呴櫎鍒楄〃涓殑鍏朵綑鍥惧儚锛�         @~english Gets the most recent image in the list (while clearing the rest of the images in the list)
+MV_GrabStrategy_LatestImages = 2                 ## @~chinese 鑾峰彇鍒楄〃涓渶鏂扮殑鍥惧儚               @~english Gets the latest image in the list
+MV_GrabStrategy_UpcomingImage = 3                ## @~chinese 绛夊緟涓嬩竴甯у浘鍍�                     @~english Wait for the next image
+
+
+## @~chinese 淇濆瓨鐨�3D鏁版嵁鏍煎紡          @~english The saved format for 3D data
+MV_PointCloudFile_Undefined = 0                  ## @~chinese 鏈畾涔夌殑鐐逛簯鏍煎紡                  @~english Undefined point cloud format
+MV_PointCloudFile_PLY = 1                        ## @~chinese PLY鐐逛簯鏍煎紡                       @~english The point cloud format named PLY
+MV_PointCloudFile_CSV = 2                        ## @~chinese CSV鐐逛簯鏍煎紡                       @~english The point cloud format named CSV
+MV_PointCloudFile_OBJ = 3                        ## @~chinese OBJ鐐逛簯鏍煎紡                       @~english The point cloud format named OBJ
+
+## @~chinese 淇濆瓨鍥剧墖鏍煎紡              @~english Save image type
+MV_Image_Undefined = 0                           ## @~chinese 鏈畾涔夌殑鍥惧儚绫诲瀷                  @~english Image undefined
+MV_Image_Bmp = 1                                 ## @~chinese Bmp鏍煎紡                           @~english Bmp image file
+MV_Image_Jpeg = 2                                ## @~chinese Jpeg鏍煎紡                          @~english Jpeg image file
+MV_Image_Png = 3                                 ## @~chinese Png鏍煎紡                           @~english Png image file
+MV_Image_Tif = 4                                 ## @~chinese Tif鏍煎紡                           @~english Tif image file
+
+
+## @~chinese  鏃嬭浆瑙掑害                  @~english Rotation angle
+MV_IMAGE_ROTATE_90 = 1                           ## @~chinese 鏃嬭浆90搴�          @~english Rotate 90 degrees
+MV_IMAGE_ROTATE_180 = 2                          ## @~chinese 鏃嬭浆180搴�         @~english Rotate 180 degrees
+MV_IMAGE_ROTATE_270 = 3                          ## @~chinese 鏃嬭浆270搴�         @~english Rotate 270 degrees
+
+## @~chinese  缈昏浆绫诲瀷                  @~english Flip type
+MV_FLIP_VERTICAL = 1                             ## @~chinese 鍨傜洿缈昏浆          @~english flip vertical
+MV_FLIP_HORIZONTAL = 2                           ## @~chinese 姘村钩缈昏浆          @~english flip horizontal
+
+## @~chinese  Gamma绫诲瀷                 @~english Gamma type
+MV_CC_GAMMA_TYPE_NONE = 0                        ## @~chinese 涓嶅惎鐢�                       @~english Disable
+MV_CC_GAMMA_TYPE_VALUE = 1                       ## @~chinese Gamma鍊�                      @~english Gamma value
+MV_CC_GAMMA_TYPE_USER_CURVE = 2                  ## @~chinese Gamma鏇茬嚎                    @~english Gamma curve
+MV_CC_GAMMA_TYPE_LRGB2SRGB = 3                   ## @~chinese linear RGB to sRGB           @~english linear RGB to sRGB
+MV_CC_GAMMA_TYPE_SRGB2LRGB = 4                   ## @~chinese sRGB to linear RGB(浠呰壊褰╂彃鍊兼椂鏀寔锛岃壊褰╂牎姝f椂鏃犳晥) @~english sRGB to linear RGB
+
+## @~chinese   褰曞儚鏍煎紡瀹氫箟              @~english Record Format Type
+MV_FormatType_Undefined = 0                      ## @~chinese 鏈畾涔夌殑鏍煎紡绫诲瀷                  @~english Undefined format type
+MV_FormatType_AVI = 1                            ## @~chinese AVI瑙嗛鏍煎紡                       @~english AVI format type
+
+
+## @~chinese  閲囬泦妯″紡                  @~english Acquisition mode
+MV_ACQ_MODE_SINGLE = 0                           ## @~chinese 鍗曞抚妯″紡                          @~english Single Mode
+MV_ACQ_MODE_MUTLI = 1                            ## @~chinese 澶氬抚妯″紡                          @~english Multi Mode
+MV_ACQ_MODE_CONTINUOUS = 2                       ## @~chinese 鎸佺画閲囬泦妯″紡                      @~english Continuous Mode
+
+## @~chinese  澧炵泭妯″紡                  @~english Gain Mode
+MV_GAIN_MODE_OFF = 0                             ## @~chinese 鍏抽棴澧炵泭妯″紡                     @~english Gain mode off
+MV_GAIN_MODE_ONCE = 1                            ## @~chinese 鍗曟                             @~english Gain Mode Once
+MV_GAIN_MODE_CONTINUOUS = 2                      ## @~chinese 杩炵画                             @~english Gain Mode Continuous 
+
+
+## @~chinese  鏇濆厜妯″紡                  @~english Exposure Mode
+MV_EXPOSURE_MODE_TIMED = 0                       ## @~chinese 鏇濆厜瓒呮椂妯″紡                      @~english exposure mode timed
+MV_EXPOSURE_MODE_TRIGGER_WIDTH = 1               ## @~chinese 鏇濆厜妯″紡瑙﹀彂瀹�                    @~english Trigger width
+
+
+
+## @~chinese 鑷姩鏇濆厜妯″紡              @~english Auto Exposure Mode
+MV_EXPOSURE_AUTO_MODE_OFF = 0                    ## @~chinese 鍏抽棴鑷姩鏇濆厜妯″紡                 @~english Exposure auto mode off
+MV_EXPOSURE_AUTO_MODE_ONCE = 1                   ## @~chinese 鍗曟鑷姩鏇濆厜妯″紡                 @~english Exposure auto mode once
+MV_EXPOSURE_AUTO_MODE_CONTINUOUS = 2             ## @~chinese 鑷姩杩炵画鏇濆厜妯″紡                 @~english Exposure auto mode continuous
+
+## @~chinese   瑙﹀彂妯″紡                  @~english Trigger Mode
+MV_TRIGGER_MODE_OFF = 0                          ## @~chinese 鍏抽棴                             @~english Off
+MV_TRIGGER_MODE_ON = 1                           ## @~chinese 鎵撳紑                             @~english On
+
+
+
+## @~chinese  Gamma閫夋嫨鍣�               @~english Gamma Selector
+MV_GAMMA_SELECTOR_USER = 1                       ## @~chinese gamma閫夋嫨椤筓ser                 @~english This enumeration selects the type of gamma to apply
+MV_GAMMA_SELECTOR_SRGB = 2                       ## @~chinese gamma閫夋嫨椤筍RGB                 @~english This enumeration selects the type of gamma to apply
+
+
+## @~chinese 鐧藉钩琛�                    @~english White Balance
+MV_BALANCEWHITE_AUTO_OFF = 0                     ## @~chinese 鐧藉钩琛¤嚜鍔ㄥ叧闂�                   @~english Balance white auto off
+MV_BALANCEWHITE_AUTO_CONTINUOUS = 1              ## @~chinese 鐧藉钩琛¤嚜鍔ㄨ繛缁�                   @~english Balance white auto continuous
+MV_BALANCEWHITE_AUTO_ONCE = 2                    ## @~chinese 鍗曟鑷姩鐧藉钩琛�                   @~english Balance white auto once
+
+
+## @~chinese  瑙﹀彂婧�                    @~english Trigger Source
+MV_TRIGGER_SOURCE_LINE0 = 0                      ## @~chinese LINE0 瑙﹀彂婧�                             @~english Trigger source line0
+MV_TRIGGER_SOURCE_LINE1 = 1                      ## @~chinese LINE1 瑙﹀彂婧�                             @~english Trigger source line1
+MV_TRIGGER_SOURCE_LINE2 = 2                      ## @~chinese LINE2 瑙﹀彂婧�                             @~english Trigger source line2
+MV_TRIGGER_SOURCE_LINE3 = 3                      ## @~chinese LINE3 瑙﹀彂婧�                             @~english Trigger source line3
+MV_TRIGGER_SOURCE_COUNTER0 = 4                   ## @~chinese 瑙﹀彂婧愯鏁板櫒                             @~english Trigger source conuter
+MV_TRIGGER_SOURCE_SOFTWARE = 7                   ## @~chinese 杞Е鍙�                                   @~english Trigger source software
+MV_TRIGGER_SOURCE_FrequencyConverter = 8         ## @~chinese 瑙﹀彂婧愬彉棰戝櫒                             @~english Trigger source frequency converter
+
+
+## @~chinese   鍥惧儚鎵╁睍淇℃伅鐨勭被鍨� MV_FRAME_EXTRA_INFO_TYPE     @~english  Image Extended Information Type: MV_FRAME_EXTRA_INFO_TYPE
+MV_FRAME_EXTRA_NO_INFO     = 0x0000              ## @~chinese 娌℃湁鎵╁睍淇℃伅
+MV_FRAME_EXTRA_SUBIMAGES   = 0x0001              ## @~chinese 瀛愬浘
+MV_FRAME_EXTRA_MULTIPARTS  = 0x0002              ## @~chinese 澶氶儴鍒�
+
+## @~chinese  ZONE鏂瑰悜锛堣嚜涓婅�屼笅鎴栬�呰嚜涓嬭�屼笂锛� MV_GIGE_ZONE_DIRECTION     @~english Zone Direction (Top to Bottom or Bottom to Top) - MV_GIGE_ZONE_DIRECTION (system variable)
+MV_GIGE_PART_ZONE_TOP_DOWN = 0 
+MV_GIGE_PART_ZONE_BOTTOM_UP  = 1
+
+## @~chinese   鏁版嵁绫诲瀷 MV_MULTI_PART_DATA_TYPE     @~english Data Type:  MV_MULTI_PART_DATA_TYPE
+MV_GIGE_DT_2D_IMAGE_1_PLANAR = 0x0001 
+MV_GIGE_DT_2D_IMAGE_2_PLANAR = 0x0002 
+MV_GIGE_DT_2D_IMAGE_3_PLANAR = 0x0003
+MV_GIGE_DT_2D_IMAGE_4_PLANAR = 0x0004
+MV_GIGE_DT_3D_IMAGE_1_PLANAR = 0x0005
+MV_GIGE_DT_3D_IMAGE_2_PLANAR = 0x0006
+MV_GIGE_DT_3D_IMAGE_3_PLANAR = 0x0007
+MV_GIGE_DT_3D_IMAGE_4_PLANAR = 0x0008
+MV_GIGE_DT_CONFIDENCE_MAP = 0x0009
+MV_GIGE_DT_CHUNK_DATA = 0x000A
+MV_GIGE_DT_JPEG_IMAGE = 0x000B
+MV_GIGE_DT_JPEG2000_IMAGE = 0x000C
+
+## @~chinese   娴佸紓甯哥被鍨�      @~english  Stream Anomaly Type
+MV_CC_STREAM_EXCEPTION_ABNORMAL_IMAGE = 0x4001   ## @~chinese 鍥惧儚寮傚父(鍥惧儚闀垮害涓嶆纭�佹暟鎹寘鍐呭瑙f瀽寮傚父鍜屾牎楠屽け璐ョ瓑),涓㈠純璇ュ抚(鍙兘鍘熷洜锛氶摼璺紶杈撳紓甯稿拰璁惧鍙戝寘寮傚父绛�)             @~english Image anomaly (incorrect image length, data packet content parsing error, checksum failure, etc.): discard the frame. Possible causes: link transmission anomalies, device packet transmission anomalies, etc.
+MV_CC_STREAM_EXCEPTION_LIST_OVERFLOW = 0x4002    ## @~chinese 缂撳瓨鍒楄〃宸叉弧(娌℃湁鍙婃椂鍙栬蛋鍥惧儚),閲囬泦鍗′笅鐩告満鍜屽崟USB鍙g浉鏈轰笉鏀寔       @~english The cache list is full (due to images not being retrieved in time). Cameras under the capture card and single USB port cameras are not supported.
+MV_CC_STREAM_EXCEPTION_LIST_EMPTY = 0x4003       ## @~chinese 缂撳瓨鍒楄〃涓虹┖(鍙栬蛋鍥惧儚鍚庢湭鍙婃椂灏嗗浘鍍忕紦瀛樺綊杩�)        @~english    The cache list is empty (the image was taken from the cache but not returned in time).
+MV_CC_STREAM_EXCEPTION_RECONNECTION = 0x4004     ## @~chinese 瑙﹀彂涓�娆℃柇娴佹仮澶�(浠匲3V鏀寔)                         @~english  Trigger a stream recovery (supported only by U3V)
+MV_CC_STREAM_EXCEPTION_DISCONNECTED = 0x4005     ## @~chinese 鏂祦鎭㈠澶辫触,鍙栨祦琚腑姝�(浠匲3V鏀寔)                  @~english  Failed to recover from stream interruption: Stream retrieval terminated (Supported only by U3V).
+MV_CC_STREAM_EXCEPTION_DEVICE = 0x4006           ## @~chinese 璁惧寮傚父,鍙栨祦琚腑姝�(浠匲3V鏀寔)                      @~english  Streaming interrupted due to device error (only supported by U3V)
+MV_CC_STREAM_EXCEPTION_PARTIAL_IMAGE = 0x4007    ## @~chinese 琛岄珮涓嶈冻,涓㈠純娈嬪抚(绾块樀鐩告満鎴栬�呴噰闆嗗崱閰嶇疆浜嗘畫甯т涪寮冩ā寮�,鍑哄浘琛岄珮涓嶈冻鏃惰SDK涓㈠純)  @~english   Insufficient line height (discard residual frames): Incomplete frames are discarded by the SDK when the line height is insufficient if line-scan cameras or frame grabbers are configured with residual frame discard mode.
+MV_CC_STREAM_EXCEPTION_IMAGE_BUFFER_OVERFLOW   = 0x4008    ## @~chinese 璁惧鍙戦�佺殑鍥惧儚鏁版嵁澶у皬瓒呰繃浜嗗浘鍍忕紦鍐插尯瀹归噺(璇ュ抚涓㈠純)   @~english  The size of the image data sent by the device exceeds the image buffer capacity (this frame is dropped).
+
+
+## @~chinese  Gige鐨勪紶杈撶被鍨�            @~english The transmission type of Gige
+MV_GIGE_TRANSTYPE_UNICAST = 0                    ## @~chinese 琛ㄧず鍗曟挱(榛樿)                              @~english Unicast mode(default)
+MV_GIGE_TRANSTYPE_MULTICAST = 1                  ## @~chinese 琛ㄧず缁勬挱                                    @~english Multicast mode
+MV_GIGE_TRANSTYPE_LIMITEDBROADCAST = 2           ## @~chinese 琛ㄧず灞�鍩熺綉鍐呭箍鎾紝鏆備笉鏀寔                  @~english Limited broadcast mode,not support
+MV_GIGE_TRANSTYPE_SUBNETBROADCAST = 3            ## @~chinese 琛ㄧず瀛愮綉鍐呭箍鎾紝鏆備笉鏀寔                    @~english Subnet broadcast mode,not support
+MV_GIGE_TRANSTYPE_CAMERADEFINED = 4              ## @~chinese 琛ㄧず浠庣浉鏈鸿幏鍙栵紝鏆備笉鏀寔                    @~english Transtype from camera,not support
+MV_GIGE_TRANSTYPE_UNICAST_DEFINED_PORT = 5       ## @~chinese 琛ㄧず鐢ㄦ埛鑷畾涔夊簲鐢ㄧ鎺ユ敹鍥惧儚鏁版嵁Port鍙�      @~english User Defined Receive Data Port
+MV_GIGE_TRANSTYPE_UNICAST_WITHOUT_RECV = 65536   ## @~chinese 琛ㄧず璁剧疆浜嗗崟鎾紝浣嗘湰瀹炰緥涓嶆帴鏀跺浘鍍忔暟鎹�      @~english Unicast without receive data
+MV_GIGE_TRANSTYPE_MULTICAST_WITHOUT_RECV = 65537 ## @~chinese 琛ㄧず缁勬挱妯″紡锛屼絾鏈疄渚嬩笉鎺ユ敹鍥惧儚鏁版嵁        @~english Multicast without receive data
+
+
+## @~chinese  姣忎釜鑺傜偣瀵瑰簲鐨勬帴鍙g被鍨�    @~english Interface type corresponds to each node 
+IFT_IValue = 0                                   ## @~chinese IValue鎺ュ彛绫诲瀷                  @~english IValue interface
+IFT_IBase = 1                                    ## @~chinese IBase鎺ュ彛绫诲瀷                   @~english IBase interface
+IFT_IInteger = 2                                 ## @~chinese IInteger鎺ュ彛绫诲瀷                @~english IInteger interface
+IFT_IBoolean = 3                                 ## @~chinese IBoolean鎺ュ彛绫诲瀷                @~english IBoolean interface
+IFT_ICommand = 4                                 ## @~chinese ICommand鎺ュ彛绫诲瀷                @~english ICommand interface
+IFT_IFloat = 5                                   ## @~chinese IFloat鎺ュ彛绫诲瀷                  @~english IFloat interface
+IFT_IString = 6                                  ## @~chinese IString鎺ュ彛绫诲瀷                 @~english IString interface
+IFT_IRegister = 7                                ## @~chinese IRegister鎺ュ彛绫诲瀷               @~english IRegister interface
+IFT_ICategory = 8                                ## @~chinese ICategory鎺ュ彛绫诲瀷               @~english ICategory interface
+IFT_IEnumeration = 9                             ## @~chinese IEnumeration鎺ュ彛绫诲瀷            @~english IEnumeration interface
+IFT_IEnumEntry = 10                              ## @~chinese IEnumEntry鎺ュ彛绫诲瀷              @~english IEnumEntry interface
+IFT_IPort = 11                                   ## @~chinese IPort鎺ュ彛绫诲瀷                   @~english IPort interface
+
+## @~chinese  鑺傜偣鐨勮闂ā寮�            @~english Node Access Mode
+AM_NI = 0                                        ## @~chinese 娌℃湁瀹炵幇                          @~english Not implemented
+AM_NA = 1                                        ## @~chinese 涓嶅彲鐢�                            @~english Not available
+AM_WO = 2                                        ## @~chinese 鍙啓                              @~english Write Only
+AM_RO = 3                                        ## @~chinese 鍙                              @~english Read Only
+AM_RW = 4                                        ## @~chinese 璇诲拰鍐�                            @~english Read and Write
+AM_Undefined = 5                                 ## @~chinese 瀵硅薄鏈鍒濆鍖�                    @~english Object is not yet initialized
+AM_CycleDetect = 6                               ## @~chinese 鍐呴儴鐢ㄤ簬AccessMode寰幆妫�娴�        @~english used internally for AccessMode cycle detection
+
+
+## @~chinese  瀵煎叆鍙傛暟鎶ラ敊鏃剁殑鍘熷洜,閿欒鐮�    @~english Reasons for importing parameter errors code
+MVCC_NODE_ERR_NODE_INVALID  = 1         ## @~chinese  鑺傜偣涓嶅瓨鍦�                                   @~english Usually, the operating node does not exist in the device
+MVCC_NODE_ERR_ACCESS        = 2,         ## @~chinese  璁块棶鏉′欢閿欒,閫氬父鏄妭鐐逛笉鍙鍐�             @~english Access condition error, usually due to nodes not being readable or writable
+MVCC_NODE_ERR_OUT_RANGE     = 3,         ## @~chinese  鍐欏叆瓒婄晫,瓒呭嚭璇ヨ妭鐐规敮鎸佺殑鑼冨洿               @~english Write out of bounds, beyond the supported range of this node
+MVCC_NODE_ERR_VERIFY_FAILD  = 4,         ## @~chinese  鏍¢獙澶辫触,閫氬父鏄啓鍏ョ殑鍊间笌鏂囦欢涓殑鍊间笉鍖归厤        @~english Verification failed, usually due to a mismatch between the written value and the value in the file
+MVCC_NODE_ERR_OTHER         = 100       ## @~chinese  鍏跺畠閿欒,鍙煡闃呮棩蹇�                            @~english Other errors, can view logs
+
+
+## @~chinese   鍥惧儚閲嶆瀯鐨勬柟寮�        @~english Image reconstruction method
+MV_SPLIT_BY_LINE = 1                            #< \~chinese 婧愬浘鍍忔寜琛屾媶鍒嗘垚澶氬紶鍥惧儚         @~english Source image split into multiple images by line
+
+int8_t = c_int8
+int16_t = c_int16
+int32_t = c_int32
+int64_t = c_int64
+uint8_t = c_uint8
+uint16_t = c_uint16
+uint32_t = c_uint32
+uint64_t = c_uint64
+int_least8_t = c_byte
+int_least16_t = c_short
+int_least32_t = c_int
+int_least64_t = c_long
+uint_least8_t = c_ubyte
+uint_least16_t = c_ushort
+uint_least32_t = c_uint
+uint_least64_t = c_ulong
+int_fast8_t = c_byte
+int_fast16_t = c_long
+int_fast32_t = c_long
+int_fast64_t = c_long
+uint_fast8_t = c_ubyte
+uint_fast16_t = c_ulong
+uint_fast32_t = c_ulong
+uint_fast64_t = c_ulong
+intptr_t = c_long
+uintptr_t = c_ulong
+intmax_t = c_long
+uintmax_t = c_ulong
+
+MvGvspPixelType = c_int # enum
+
+def check_sys_and_update_PixelType():
+    currentsystem = platform.system()
+    global MvGvspPixelType
+    if currentsystem == 'Windows':
+        # values for enumeration 'MvGvspPixelType'
+        MvGvspPixelType = c_uint # enum
+    else:
+        # values for enumeration 'MvGvspPixelType'
+        MvGvspPixelType = int64_t  # enum
+        
+#妫�娴嬬郴缁燂紝骞舵洿鏂�
+check_sys_and_update_PixelType()
+
+# GigE璁惧淇℃伅    @~english GigE device info
+class _MV_GIGE_DEVICE_INFO_(Structure):
+    pass
+_MV_GIGE_DEVICE_INFO_._fields_ = [
+    ('nIpCfgOption', c_uint),                     ## @~chinese IP閰嶇疆閫夐」         @~english Ip config option
+    ('nIpCfgCurrent', c_uint),                    ## @~chinese 褰撳墠IP鍦板潃閰嶇疆     @~english IP configuration:bit31-static bit30-dhcp bit29-lla
+    ('nCurrentIp', c_uint),                       ## @~chinese 褰撳墠涓绘満IP鍦板潃     @~english Current host Ip 
+    ('nCurrentSubNetMask', c_uint),               ## @~chinese 褰撳墠瀛愮綉鎺╃爜       @~english curtent subnet mask
+    ('nDefultGateWay', c_uint),                   ## @~chinese 榛樿缃戝叧           @~english Default gate way
+    ('chManufacturerName', c_ubyte * 32),         ## @~chinese 鍘傚晢鍚嶇О           @~english Manufacturer Name
+    ('chModelName', c_ubyte * 32),                ## @~chinese 鍨嬪彿鍚嶇О           @~english Mode name
+    ('chDeviceVersion', c_ubyte * 32),            ## @~chinese 璁惧鍥轰欢鐗堟湰       @~english Device Version
+    ('chManufacturerSpecificInfo', c_ubyte * 48), ## @~chinese 鍘傚晢鐗规畩淇℃伅       @~english Manufacturer Specific Infomation
+    ('chSerialNumber', c_ubyte * 16),             ## @~chinese 搴忓垪鍙�             @~english serial number
+    ('chUserDefinedName', c_ubyte * 16),          ## @~chinese 鐢ㄦ埛瀹氫箟鍚嶇О       @~english User Defined Name
+    ('nNetExport', c_uint),                       ## @~chinese 缃戝彛Ip鍦板潃         @~english NetWork Ip address
+    ('nReserved', c_uint * 4),                    ## @~chinese 淇濈暀瀛楄妭           @~english Reserved bytes
+]
+MV_GIGE_DEVICE_INFO = _MV_GIGE_DEVICE_INFO_
+
+# USB璁惧淇℃伅    @~english USB device info
+class _MV_USB3_DEVICE_INFO_(Structure):
+    pass
+_MV_USB3_DEVICE_INFO_._fields_ = [
+    ('CrtlInEndPoint', c_ubyte),                            ## @~chinese 鎺у埗杈撳叆绔偣          @~english Control input endpoint
+    ('CrtlOutEndPoint', c_ubyte),                           ## @~chinese 鎺у埗杈撳嚭绔偣          @~english Control output endpoint
+    ('StreamEndPoint', c_ubyte),                            ## @~chinese 娴佺鐐�                @~english Flow endpoint
+    ('EventEndPoint', c_ubyte),                             ## @~chinese 浜嬩欢绔偣              @~english Event endpoint
+    ('idVendor', c_ushort),                                 ## @~chinese 渚涘簲鍟咺D鍙�            @~english Vendor ID Number
+    ('idProduct', c_ushort),                                ## @~chinese 浜у搧ID鍙�              @~english Device ID Number
+    ('nDeviceNumber', c_uint),                              ## @~chinese 璁惧搴忓垪鍙�            @~english Device Serial Number
+    ('chDeviceGUID', c_ubyte * INFO_MAX_BUFFER_SIZE),       ## @~chinese 璁惧GUID鍙�            @~english Device GUID Number
+    ('chVendorName', c_ubyte * INFO_MAX_BUFFER_SIZE),       ## @~chinese 渚涘簲鍟嗗悕瀛�            @~english Vendor Name
+    ('chModelName', c_ubyte * INFO_MAX_BUFFER_SIZE),        ## @~chinese 鍨嬪彿鍚嶅瓧              @~english Model Name
+    ('chFamilyName', c_ubyte * INFO_MAX_BUFFER_SIZE),       ## @~chinese 瀹舵棌鍚嶅瓧              @~english Family Name
+    ('chDeviceVersion', c_ubyte * INFO_MAX_BUFFER_SIZE),    ## @~chinese 璁惧鐗堟湰鍙�            @~english Device Version
+    ('chManufacturerName', c_ubyte * INFO_MAX_BUFFER_SIZE), ## @~chinese 鍒堕�犲晢鍚嶅瓧            @~english Manufacturer Name
+    ('chSerialNumber', c_ubyte * INFO_MAX_BUFFER_SIZE),     ## @~chinese 搴忓垪鍙�                @~english Serial Number
+    ('chUserDefinedName', c_ubyte * INFO_MAX_BUFFER_SIZE),  ## @~chinese 鐢ㄦ埛鑷畾涔夊悕瀛�        @~english User Defined Name
+    ('nbcdUSB', c_uint),                                    ## @~chinese 鏀寔鐨刄SB鍗忚         @~english Support USB Protocol
+    ('nDeviceAddress', c_uint),                             ## @~chinese 璁惧鍦板潃              @~english Device Address
+    ('nReserved', c_uint * 2),                              ## @~chinese 淇濈暀瀛楄妭              @~english Reserved bytes
+]
+MV_USB3_DEVICE_INFO = _MV_USB3_DEVICE_INFO_
+
+# CameraLink璁惧淇℃伅    @~english CameraLink device info
+class _MV_CamL_DEV_INFO_(Structure):
+    pass
+_MV_CamL_DEV_INFO_._fields_ = [
+    ('chPortID', c_ubyte * INFO_MAX_BUFFER_SIZE),           ## @~chinese 绔彛鍙�            @~english Port ID         
+    ('chModelName', c_ubyte * INFO_MAX_BUFFER_SIZE),        ## @~chinese 璁惧鍨嬪彿          @~english Model name
+    ('chFamilyName', c_ubyte * INFO_MAX_BUFFER_SIZE),       ## @~chinese 瀹舵棌鍚嶅瓧          @~english Family Name
+    ('chDeviceVersion', c_ubyte * INFO_MAX_BUFFER_SIZE),    ## @~chinese 璁惧鐗堟湰鍙�        @~english Device Version
+    ('chManufacturerName', c_ubyte * INFO_MAX_BUFFER_SIZE), ## @~chinese 鍒堕�犲晢鍚嶅瓧        @~english Manufacturer Name
+    ('chSerialNumber', c_ubyte * INFO_MAX_BUFFER_SIZE),     ## @~chinese 搴忓垪鍙�            @~english Serial Number
+    ('nReserved', c_uint * 38),                             ## @~chinese 淇濈暀瀛楄妭          @~english Reserved bytes
+]
+MV_CamL_DEV_INFO = _MV_CamL_DEV_INFO_
+
+# CoaXPress鐩告満淇℃伅      @~english CoaXPress device information
+class _MV_CXP_DEVICE_INFO_(Structure):
+    pass
+_MV_CXP_DEVICE_INFO_._fields_ = [
+    ('chInterfaceID', c_ubyte * INFO_MAX_BUFFER_SIZE),   ## @~chinese 閲囬泦鍗D         @~english Interface ID of Frame Grabber
+    ('chVendorName', c_ubyte * INFO_MAX_BUFFER_SIZE),    ## @~chinese 渚涘簲鍟嗗悕瀛�       @~english Vendor name
+    ('chModelName', c_ubyte * INFO_MAX_BUFFER_SIZE),     ## @~chinese 鍨嬪彿鍚嶅瓧         @~english Model name
+    ('chManufacturerInfo', c_ubyte * INFO_MAX_BUFFER_SIZE),   ## @~chinese 鍘傚晢淇℃伅    @~english Manufacturer information
+    ('chDeviceVersion', c_ubyte * INFO_MAX_BUFFER_SIZE),    ## @~chinese 鐩告満鐗堟湰      @~english Device version
+    ('chSerialNumber', c_ubyte * INFO_MAX_BUFFER_SIZE),     ## @~chinese 搴忓垪鍙�        @~english Serial Number
+    ('chUserDefinedName', c_ubyte * INFO_MAX_BUFFER_SIZE),  ## @~chinese 鐢ㄦ埛鑷畾涔夊悕瀛�    @~english User defined name
+    ('chDeviceID', c_ubyte * INFO_MAX_BUFFER_SIZE),         ## @~chinese 鐩告満ID            @~english Device ID
+    ('nReserved', c_uint * 7),                              ## @~chinese 淇濈暀瀛楄妭          @~english Reserved bytes
+]
+MV_CXP_DEVICE_INFO = _MV_CXP_DEVICE_INFO_
+
+
+# 閲囬泦鍗amera Link鐩告満淇℃伅          @~english Camera Link device information on frame grabber
+class _MV_CML_DEVICE_INFO_(Structure):
+    pass
+_MV_CML_DEVICE_INFO_._fields_ = [
+    ('chInterfaceID', c_ubyte * INFO_MAX_BUFFER_SIZE),   ## @~chinese 閲囬泦鍗D         @~english Interface ID of Frame Grabber
+    ('chVendorName', c_ubyte * INFO_MAX_BUFFER_SIZE),    ## @~chinese 渚涘簲鍟嗗悕瀛�       @~english Vendor name
+    ('chModelName', c_ubyte * INFO_MAX_BUFFER_SIZE),     ## @~chinese 鍨嬪彿鍚嶅瓧         @~english Model name
+    ('chManufacturerInfo', c_ubyte * INFO_MAX_BUFFER_SIZE),   ## @~chinese 鍘傚晢淇℃伅    @~english Manufacturer information
+    ('chDeviceVersion', c_ubyte * INFO_MAX_BUFFER_SIZE),    ## @~chinese 鐩告満鐗堟湰      @~english Device version
+    ('chSerialNumber', c_ubyte * INFO_MAX_BUFFER_SIZE),     ## @~chinese 搴忓垪鍙�        @~english Serial Number
+    ('chUserDefinedName', c_ubyte * INFO_MAX_BUFFER_SIZE),  ## @~chinese 鐢ㄦ埛鑷畾涔夊悕瀛桜~english User defined name
+    ('chDeviceID', c_ubyte * INFO_MAX_BUFFER_SIZE),         ## @~chinese 鐩告満ID        @~english Device ID
+    ('nReserved', c_uint * 7),                              ## @~chinese 淇濈暀瀛楄妭      @~english Reserved bytes
+]
+MV_CML_DEVICE_INFO = _MV_CML_DEVICE_INFO_
+
+# XoFLink鐩告満淇℃伅      @~english XoFLink device information
+class _MV_XOF_DEVICE_INFO_(Structure):
+    pass
+_MV_XOF_DEVICE_INFO_._fields_ = [
+    ('chInterfaceID', c_ubyte * INFO_MAX_BUFFER_SIZE),   ## @~chinese 閲囬泦鍗D         @~english Interface ID of Frame Grabber
+    ('chVendorName', c_ubyte * INFO_MAX_BUFFER_SIZE),    ## @~chinese 渚涘簲鍟嗗悕瀛�       @~english Vendor name
+    ('chModelName', c_ubyte * INFO_MAX_BUFFER_SIZE),     ## @~chinese 鍨嬪彿鍚嶅瓧         @~english Model name
+    ('chManufacturerInfo', c_ubyte * INFO_MAX_BUFFER_SIZE),   ## @~chinese 鍘傚晢淇℃伅    @~english Manufacturer information
+    ('chDeviceVersion', c_ubyte * INFO_MAX_BUFFER_SIZE),    ## @~chinese 鐩告満鐗堟湰      @~english Device version
+    ('chSerialNumber', c_ubyte * INFO_MAX_BUFFER_SIZE),     ## @~chinese 搴忓垪鍙�        @~english Serial Number
+    ('chUserDefinedName', c_ubyte * INFO_MAX_BUFFER_SIZE),  ## @~chinese 鐢ㄦ埛鑷畾涔夊悕瀛桜~english User defined name
+    ('chDeviceID', c_ubyte * INFO_MAX_BUFFER_SIZE),         ## @~chinese 鐩告満ID        @~english Device ID
+    ('nReserved', c_uint * 7),                              ## @~chinese 淇濈暀瀛楄妭      @~english Reserved bytes
+]
+MV_XOF_DEVICE_INFO = _MV_XOF_DEVICE_INFO_
+
+# \~chinese 铏氭嫙鐩告満淇℃伅      @~english Virtual device information
+class _MV_GENTL_VIR_DEVICE_INFO_(Structure):
+    pass
+_MV_GENTL_VIR_DEVICE_INFO_._fields_ = [
+    ('chInterfaceID', c_ubyte * INFO_MAX_BUFFER_SIZE),        ## @~chinese 閲囬泦鍗D            @~english Interface ID of Frame Grabber
+    ('chVendorName', c_ubyte * INFO_MAX_BUFFER_SIZE),         ## @~chinese 渚涘簲鍟嗗悕瀛�          @~english Vendor name
+    ('chModelName', c_ubyte * INFO_MAX_BUFFER_SIZE),          ## @~chinese 鍨嬪彿鍚嶅瓧            @~english Model name
+    ('chManufacturerInfo', c_ubyte * INFO_MAX_BUFFER_SIZE),   ## @~chinese 鍘傚晢淇℃伅            @~english Manufacturer information
+    ('chDeviceVersion', c_ubyte * INFO_MAX_BUFFER_SIZE),       ## @~chinese 鐩告満鐗堟湰           @~english Device version 
+    ('chSerialNumber', c_ubyte * INFO_MAX_BUFFER_SIZE),        ## @~chinese 搴忓垪鍙�             @~english Serial Number 
+    ('chUserDefinedName', c_ubyte * INFO_MAX_BUFFER_SIZE),     ## @~chinese 鐢ㄦ埛鑷畾涔夊悕瀛�     @~english User defined name
+    ('chDeviceID', c_ubyte * INFO_MAX_BUFFER_SIZE),            ## @~chinese 鐩告満ID             @~english Device ID
+    ('chTLType', c_ubyte * INFO_MAX_BUFFER_SIZE),              #< \~chinese 浼犺緭灞傜被鍨�         @~english GenTL Type
+    ('nReserved', c_uint * 7),                                 ## @~chinese 淇濈暀瀛楄妭           @~english Reserved bytes
+]
+MV_GENTL_VIR_DEVICE_INFO = _MV_GENTL_VIR_DEVICE_INFO_
+
+
+
+# \~chinese 璁惧淇℃伅    @~english Device info
+class _MV_CC_DEVICE_INFO_(Structure):
+    pass
+class N19_MV_CC_DEVICE_INFO_3DOT_0E(Union):
+    pass
+N19_MV_CC_DEVICE_INFO_3DOT_0E._fields_ = [
+    ('stGigEInfo', MV_GIGE_DEVICE_INFO),                   ## @~chinese Gige璁惧淇℃伅        @~english Gige device infomation
+    ('stUsb3VInfo', MV_USB3_DEVICE_INFO),                  ## @~chinese U3V璁惧淇℃伅         @~english u3V device information
+    ('stCamLInfo', MV_CamL_DEV_INFO),                      ## @~chinese CamLink璁惧淇℃伅     @~english CamLink device information
+    ('stCMLInfo', MV_CML_DEVICE_INFO),                     ## @~chinese 閲囬泦鍗ameraLink璁惧淇℃伅       @~english CameraLink Device Info On Frame Grabber
+    ('stCXPInfo', MV_CXP_DEVICE_INFO),                     ## @~chinese 閲囬泦鍗oaXPress璁惧淇℃伅        @~english CoaXPress Device Info On Frame Grabber
+    ('stXoFInfo', MV_XOF_DEVICE_INFO),                     ## @~chinese 閲囬泦鍗oF璁惧淇℃伅              @~english XoF Device Info On Frame Grabber
+    ('stVirInfo', MV_GENTL_VIR_DEVICE_INFO),               ## @~chinese 铏氭嫙鐩告満淇℃伅                   @~english Virtual device information
+]
+
+_MV_CC_DEVICE_INFO_._fields_ = [
+    ('nMajorVer', c_ushort),                              ## @~chinese 瑙勮寖鐨勪富瑕佺増鏈�         @~english Major version of the specification.
+    ('nMinorVer', c_ushort),                              ## @~chinese 瑙勮寖鐨勬瑕佺増鏈�         @~english Minor version of the specification
+    ('nMacAddrHigh', c_uint),                             ## @~chinese MAC鍦板潃楂樹綅            @~english Mac address high
+    ('nMacAddrLow', c_uint),                              ## @~chinese MAC鍦板潃浣庝綅            @~english Mac address low
+    ('nTLayerType', c_uint),                              ## @~chinese 璁惧浼犺緭灞傚崗璁被鍨�     @~english Device Transport Layer Protocol Type, e.g. MV_GIGE_DEVICE
+    ('nDevTypeInfo', c_uint),                             ## @~chinese 璁惧绫诲瀷淇℃伅           @~english Device Type Info
+    ('nReserved', c_uint * 3),                            ## @~chinese 淇濈暀瀛楄妭               @~english Reserved bytes
+    ('SpecialInfo', N19_MV_CC_DEVICE_INFO_3DOT_0E),       ## @~chinese 涓嶅悓璁惧鐗规湁淇℃伅       @~english Special information
+]
+MV_CC_DEVICE_INFO = _MV_CC_DEVICE_INFO_
+
+# 璁惧淇℃伅鍒楄〃    @~english Device Information List
+class _MV_CC_DEVICE_INFO_LIST_(Structure):
+    pass
+_MV_CC_DEVICE_INFO_LIST_._fields_ = [
+    ('nDeviceNum', c_uint),                                          ## @~chinese 鍦ㄧ嚎璁惧鏁伴噺         @~english Online Device Number
+    ('pDeviceInfo', POINTER(MV_CC_DEVICE_INFO) * MV_MAX_DEVICE_NUM), ## @~chinese 鏀寔鏈�澶�256涓澶�    @~english Support up to 256 devices
+]
+MV_CC_DEVICE_INFO_LIST = _MV_CC_DEVICE_INFO_LIST_
+
+
+# 閲囬泦鍗′俊鎭�            @~english Interface information
+class _MV_INTERFACE_INFO_(Structure):
+    pass
+_MV_INTERFACE_INFO_._fields_ = [
+    ('nTLayerType', c_uint),               ## @~chinese 閲囬泦鍗$被鍨�               @~english Interface type
+    ('nPCIEInfo', c_uint),                 ## @~chinese 閲囬泦鍗$殑PCIE鎻掓Ы淇℃伅     @~english PCIe slot information of interface
+    ('chInterfaceID', c_ubyte * INFO_MAX_BUFFER_SIZE),  ## @~chinese 閲囬泦鍗D    @~english Interface ID
+    ('chDisplayName', c_ubyte * INFO_MAX_BUFFER_SIZE),  ## @~chinese 鏄剧ず鍚嶇О    @~english Display name
+    ('chSerialNumber', c_ubyte * INFO_MAX_BUFFER_SIZE),  ## @~chinese 搴忓垪鍙�     @~english Serial number
+    ('chModelName', c_ubyte * INFO_MAX_BUFFER_SIZE),     ## @~chinese 鍨嬪彿       @~english model name
+    ('chManufacturer', c_ubyte * INFO_MAX_BUFFER_SIZE),  ## @~chinese 鍘傚晢       @~english manufacturer name
+    ('chDeviceVersion', c_ubyte * INFO_MAX_BUFFER_SIZE),  ## @~chinese 鐗堟湰鍙�     @~english device version
+    ('chUserDefinedName', c_ubyte * INFO_MAX_BUFFER_SIZE),  ## @~chinese 鑷畾涔夊悕绉� @~english user defined name
+    ('nReserved', c_uint * 64),                             ## @~chinese 淇濈暀瀛楄妭   @~english Reserved bytes
+]
+MV_INTERFACE_INFO = _MV_INTERFACE_INFO_
+
+# 閲囬泦鍗′俊鎭垪琛�           @~english Interface Information List
+class _MV_INTERFACE_INFO_LIST_(Structure):
+    pass
+_MV_INTERFACE_INFO_LIST_._fields_ = [
+    ('nInterfaceNum', c_uint),                                          ## @~chinese 鍦ㄧ嚎璁惧鏁伴噺         @~english Online Device Number
+    ('pInterfaceInfos', POINTER(MV_INTERFACE_INFO) * MV_MAX_INTERFACE_NUM), ## @~chinese 鏀寔鏈�澶�256涓澶�    @~english Support up to 256 devices
+]
+MV_INTERFACE_INFO_LIST = _MV_INTERFACE_INFO_LIST_
+
+
+# 閫氳繃GenTL鏋氫妇鍒扮殑Interface淇℃伅    @~english Interface Information with GenTL
+class _MV_GENTL_IF_INFO_(Structure):
+    pass
+_MV_GENTL_IF_INFO_._fields_ = [
+    ('chInterfaceID', c_ubyte * INFO_MAX_BUFFER_SIZE), ## @~chinese GenTL鎺ュ彛ID        @~english Interface ID of GenTL
+    ('chTLType', c_ubyte * INFO_MAX_BUFFER_SIZE),      ## @~chinese 浼犺緭灞傜被鍨�          @~english Transport Layer type
+    ('chDisplayName', c_ubyte * INFO_MAX_BUFFER_SIZE), ## @~chinese 璁惧鏄剧ず鍚嶇О         @~english Display name
+    ('nCtiIndex', c_uint),                             ## @~chinese GenTL鐨刢ti鏂囦欢绱㈠紩   @~english Cti file index of GenTL 
+    ('nReserved', c_uint * 8),                         ## @~chinese 淇濈暀瀛楄妭             @~english Reserved bytes
+]
+MV_GENTL_IF_INFO = _MV_GENTL_IF_INFO_
+
+# 閫氳繃GenTL鏋氫妇鍒扮殑璁惧淇℃伅鍒楄〃    @~english Device Information List with GenTL
+class _MV_GENTL_IF_INFO_LIST_(Structure):
+    pass
+_MV_GENTL_IF_INFO_LIST_._fields_ = [
+    ('nInterfaceNum', c_uint),                                    ## @~chinese 鍦ㄧ嚎璁惧鏁伴噺         @~english Online Device Number
+    ('pIFInfo', POINTER(MV_GENTL_IF_INFO) * MV_MAX_GENTL_IF_NUM), ## @~chinese 鏀寔鏈�澶�256涓澶�     @~english Support up to 256 devices
+]
+MV_GENTL_IF_INFO_LIST = _MV_GENTL_IF_INFO_LIST_
+
+# 閫氳繃GenTL鏋氫妇鍒扮殑璁惧淇℃伅    @~english Device Information with GenTL
+class _MV_GENTL_DEV_INFO_(Structure):
+    pass
+_MV_GENTL_DEV_INFO_._fields_ = [
+    ('chInterfaceID', c_ubyte * INFO_MAX_BUFFER_SIZE),          ## @~chinese GenTL鎺ュ彛ID         @~english Interface ID of GenTL
+    ('chDeviceID', c_ubyte * INFO_MAX_BUFFER_SIZE),             ## @~chinese 璁惧ID              @~english Device ID
+    ('chVendorName', c_ubyte * INFO_MAX_BUFFER_SIZE),           ## @~chinese 渚涘簲鍟嗗悕瀛�          @~english Vendor Name
+    ('chModelName', c_ubyte * INFO_MAX_BUFFER_SIZE),            ## @~chinese 鍨嬪彿鍚嶅瓧            @~english Model name
+    ('chTLType', c_ubyte * INFO_MAX_BUFFER_SIZE),               ## @~chinese 浼犺緭灞傜被鍨�          @~english Transport Layer type
+    ('chDisplayName', c_ubyte * INFO_MAX_BUFFER_SIZE),          ## @~chinese 鏄剧ず鍚嶇О           @~english Display name
+    ('chUserDefinedName', c_ubyte * INFO_MAX_BUFFER_SIZE),      ## @~chinese 鐢ㄦ埛鑷畾涔夊悕瀛�      @~english User defined name
+    ('chSerialNumber', c_ubyte * INFO_MAX_BUFFER_SIZE),         ## @~chinese 搴忓垪鍙�             @~english Serial number
+    ('chDeviceVersion', c_ubyte * INFO_MAX_BUFFER_SIZE),        ## @~chinese 璁惧鐗堟湰鍙�         @~english Device version
+    ('nCtiIndex', c_uint),                                      ## @~chinese cti绱㈠紩            @~english Cti Index
+    ('nReserved', c_uint * 8),                                  ## @~chinese 淇濈暀瀛楄妭           @~english Reserved bytes
+]
+MV_GENTL_DEV_INFO = _MV_GENTL_DEV_INFO_
+
+# 閫氳繃GenTL鏋氫妇鍒扮殑璁惧淇℃伅鍒楄〃    @~english Device Information List with GenTL
+class _MV_GENTL_DEV_INFO_LIST_(Structure):
+    pass
+_MV_GENTL_DEV_INFO_LIST_._fields_ = [
+    ('nDeviceNum', c_uint),                                             ## @~chinese 鍦ㄧ嚎璁惧鏁伴噺         @~english Online Device Number
+    ('pDeviceInfo', POINTER(MV_GENTL_DEV_INFO) * MV_MAX_GENTL_DEV_NUM), ## @~chinese GenTL璁惧淇℃伅       @~english device infomation of GenTL device
+]
+MV_GENTL_DEV_INFO_LIST = _MV_GENTL_DEV_INFO_LIST_
+
+# Chunk鍐呭    @~english The content of ChunkData
+class _MV_CHUNK_DATA_CONTENT_(Structure):
+    pass
+_MV_CHUNK_DATA_CONTENT_._fields_ = [
+    ('pChunkData', POINTER(c_ubyte)),  ## @~chinese 鍧楁暟鎹�             @~english Chunk data
+    ('nChunkID', c_uint),              ## @~chinese 鍧楁暟鎹甀D           @~english Chunk id
+    ('nChunkLen', c_uint),             ## @~chinese 鍧楁暟鎹暱搴�         @~english Chunk len
+    ('nReserved', c_uint * 8),         ## @~chinese 淇濈暀瀛楄妭           @~english Reserved bytes
+]
+MV_CHUNK_DATA_CONTENT = _MV_CHUNK_DATA_CONTENT_
+
+
+#  鍥惧儚淇℃伅           @~english Image information
+class _MV_CC_IMAGE_(Structure):
+    pass
+_MV_CC_IMAGE_._fields_ = [
+    ('nWidth', c_uint),                     ## @~chinese 鍥惧儚瀹�       @~english Width
+    ('nHeight', c_uint),                    ## @~chinese 鍥惧儚楂�       @~english Height
+    ('enPixelType', MvGvspPixelType),       ## @~chinese 鍍忕礌鏍煎紡     @~english Pixel type
+    ('pImageBuf', POINTER(c_ubyte)),        ## @~chinese 鍥惧儚缂撳瓨    @~english Image buffer
+    ('nImageBufSize', uint64_t),            ## @~chinese 鍥惧儚缂撳瓨澶у皬  @~english Image buffer size
+    ('nImageLen', uint64_t),                ## @~chinese 鍥惧儚闀垮害    @~english Image length
+    ('nReserved', c_uint * 4),              ## @~chinese 棰勭暀瀛楁      @~english Reserved
+]
+MV_CC_IMAGE = _MV_CC_IMAGE_
+
+
+
+
+# values for enumeration '_MV_FRAME_EXTRA_INFO_TYPE_'
+_MV_FRAME_EXTRA_INFO_TYPE_ = c_int # enum
+MV_FRAME_EXTRA_INFO_TYPE = _MV_FRAME_EXTRA_INFO_TYPE_
+
+# values for enumeration '_MV_GIGE_ZONE_DIRECTION_'
+_MV_GIGE_ZONE_DIRECTION_ = c_int # enum
+MV_GIGE_ZONE_DIRECTION = _MV_GIGE_ZONE_DIRECTION_
+class _MV_GIGE_ZONE_INFO_(Structure):
+    pass
+class N19_MV_GIGE_ZONE_INFO_3DOT_1E(Union):
+    pass
+N19_MV_GIGE_ZONE_INFO_3DOT_1E._fields_ = [
+    ('pZoneAddr', POINTER(c_ubyte)),
+    ('nAlign', uint64_t),
+]
+_MV_GIGE_ZONE_INFO_._fields_ = [
+    ('enDirection', MV_GIGE_ZONE_DIRECTION),
+    ('stZone', N19_MV_GIGE_ZONE_INFO_3DOT_1E),
+    ('nLength', uint64_t),
+    ('nReserved', c_uint * 6),
+]
+MV_GIGE_ZONE_INFO = _MV_GIGE_ZONE_INFO_
+class _MV_GIGE_MULRI_PART_DATA_INFO_(Union):
+    pass
+class N30_MV_GIGE_MULRI_PART_DATA_INFO_3DOT_2E(Structure):
+    pass
+N30_MV_GIGE_MULRI_PART_DATA_INFO_3DOT_2E._fields_ = [
+    ('nSizeX', c_uint),
+    ('nSizeY', c_uint),
+    ('nOffsetX', c_uint),
+    ('nOffsetY', c_uint),
+    ('nPaddingX', c_ushort),
+]
+
+class N30_MV_GIGE_MULRI_PART_DATA_INFO_3DOT_3E(Structure):
+    pass
+N30_MV_GIGE_MULRI_PART_DATA_INFO_3DOT_3E._fields_ = [
+    ('nJpegFlag', c_ubyte),
+    ('nTimestampTickFrequencyHigh', c_uint),
+    ('nTimestampTickFrequencyLow', c_uint),
+    ('nJpegDataFormat', c_uint),
+]
+_MV_GIGE_MULRI_PART_DATA_INFO_._fields_ = [
+    ('stGeneral', N30_MV_GIGE_MULRI_PART_DATA_INFO_3DOT_2E),
+    ('stJpeg', N30_MV_GIGE_MULRI_PART_DATA_INFO_3DOT_3E),
+    ('pDataTypeSpecific', c_ubyte * 24),
+]
+MV_GIGE_PART_DATA_INFO = _MV_GIGE_MULRI_PART_DATA_INFO_
+
+# values for enumeration '_MV_GIGE_MULTI_PART_DATA_TYPE_'
+_MV_GIGE_MULTI_PART_DATA_TYPE_ = c_int # enum
+MV_GIGE_MULTI_PART_DATA_TYPE = _MV_GIGE_MULTI_PART_DATA_TYPE_
+
+class _MV_GIGE_MULTI_PART_INFO_(Structure):
+    pass
+_MV_GIGE_MULTI_PART_INFO_._fields_ = [
+    ('enDataType', MV_GIGE_MULTI_PART_DATA_TYPE),
+    ('nDataFormat', c_uint),
+    ('nSourceID', c_uint),
+    ('nRegionID', c_uint),
+    ('nDataPurposeID', c_uint),
+    ('nZones', c_uint),
+    ('pZoneInfo', POINTER(MV_GIGE_ZONE_INFO)),
+    ('nLength', uint64_t),
+    ('pPartAddr', POINTER(c_ubyte)),
+    ('stDataTypeSpecific', MV_GIGE_PART_DATA_INFO),
+    ('nReserved', c_uint * 8),
+]
+MV_GIGE_MULTI_PART_INFO = _MV_GIGE_MULTI_PART_INFO_
+
+
+
+# 杈撳嚭甯х殑淇℃伅    @~english Output Frame Information
+class _MV_FRAME_OUT_INFO_EX_(Structure):
+    pass
+# values for enumeration 'MvGvspPixelType'
+
+class N22_MV_FRAME_OUT_INFO_EX_3DOT_1E(Union):
+    pass
+N22_MV_FRAME_OUT_INFO_EX_3DOT_1E._fields_ = [
+    ('pUnparsedChunkContent', POINTER(MV_CHUNK_DATA_CONTENT)), ## @~chinese Chunk鍐呭         @~english Chunk Content
+    ('nAligning', int64_t),                                    ## @~chinese 鏍″噯瀛楁          @~english Aligning
+]
+
+class N22_MV_FRAME_OUT_INFO_EX_3DOT_2E(Union):
+    pass
+N22_MV_FRAME_OUT_INFO_EX_3DOT_2E._fields_ = [
+    ('pstSubImage', POINTER(MV_CC_IMAGE)),
+    ('pstPartInfo', POINTER(MV_GIGE_MULTI_PART_INFO)),
+    ('nAligning', int64_t),
+]
+
+class N22_MV_FRAME_OUT_INFO_EX_3DOT_3E(Union):
+    pass
+N22_MV_FRAME_OUT_INFO_EX_3DOT_3E._fields_ = [
+    ('pUser', c_void_p),
+    ('nAligning', int64_t),
+]
+
+_MV_FRAME_OUT_INFO_EX_._fields_ = [
+    ('nWidth', c_ushort),
+    ## @~chinese 鍥惧儚瀹�(鏈�澶�65535锛岃秴鍑鸿鐢╪ExtendWidth)    @~english Image Width (over 65535, use nExtendWidth)
+    ('nHeight', c_ushort),
+    ## @~chinese 鍥惧儚楂�(鏈�澶�65535锛岃秴鍑鸿鐢╪ExtendHeight)   @~english Image Height(over 65535, use nExtendHeight)
+    ('enPixelType', MvGvspPixelType),                        ## @~chinese 鍍忕礌鏍煎紡           @~english Pixel Type
+    ('nFrameNum', c_uint),                                   ## @~chinese 甯у彿               @~english Frame Number
+    ('nDevTimeStampHigh', c_uint),                           ## @~chinese 鏃堕棿鎴抽珮32浣�       @~english Timestamp high 32 bits
+    ('nDevTimeStampLow', c_uint),                            ## @~chinese 鏃堕棿鎴充綆32浣�       @~english Timestamp low 32 bits
+    ('nReserved0', c_uint),                                  ## @~chinese 淇濈暀锛�8瀛楄妭瀵归綈     @~english Reserved, 8-byte aligned
+    ('nHostTimeStamp', int64_t),                             ## @~chinese 涓绘満鐢熸垚鐨勬椂闂存埑    @~english Host-generated timestamp
+    ('nFrameLen', c_uint),                                   ## @~chinese 甯х殑闀垮害           @~english Frame length
+    ## @~chinese 浠ヤ笅涓篶hunk鏂板姘村嵃淇℃伅 @~english The followings are chunk add frame-specific information
+    ## @~chinese 璁惧姘村嵃鏃舵爣 @~english Device frame-specific time scale
+    ('nSecondCount', c_uint),                                ## @~chinese 绉掓暟               @~english The Seconds                         
+    ('nCycleCount', c_uint),                                 ## @~chinese 鍛ㄦ湡鏁�             @~english The Count of Cycle                
+    ('nCycleOffset', c_uint),                                ## @~chinese 鍛ㄦ湡鍋忕Щ閲�         @~english The Offset of Cycle                  
+    ('fGain', c_float),                                      ## @~chinese 澧炵泭               @~english Gain
+    ('fExposureTime', c_float),                              ## @~chinese 鏇濆厜鏃堕棿           @~english Exposure Time
+    ('nAverageBrightness', c_uint),                          ## @~chinese 骞冲潎浜害           @~english Average brightness
+    ## @~chinese:鐧藉钩琛$浉鍏� @~english White balance
+    ('nRed', c_uint),                                        ## @~chinese 绾㈣壊               @~english Red     
+    ('nGreen', c_uint),                                      ## @~chinese 缁胯壊               @~english Green
+    ('nBlue', c_uint),                                       ## @~chinese 钃濊壊               @~english Blue
+    ('nFrameCounter', c_uint),                               ## @~chinese 甯ц鏁�             @~english Frame counter
+    ('nTriggerIndex', c_uint),                               ## @~chinese 瑙﹀彂璁℃暟           @~english Trigger index
+    ## @~chinese  杈撳叆/杈撳嚭 @~english Line Input/Output
+    ('nInput', c_uint),                                      ## @~chinese 杈撳叆               @~english input
+    ('nOutput', c_uint),                                     ## @~chinese 杈撳嚭               @~english output
+    ## @~chinese ROI鍖哄煙 @~english ROI Region                       
+    ('nOffsetX', c_ushort),                                  ## @~chinese 姘村钩鍋忕Щ閲�             @~english OffsetX   
+    ('nOffsetY', c_ushort),                                  ## @~chinese 鍨傜洿鍋忕Щ閲�             @~english OffsetY
+    ('nChunkWidth', c_ushort),                               ## @~chinese chunk 瀹�              @~english The Width of Chunk
+    ('nChunkHeight', c_ushort),                              ## @~chinese chunk 楂�               @~english The Height of Chunk
+    ('nLostPacket', c_uint),                                 ## @~chinese 鏈抚涓㈠寘鏁�            @~english Lost Pacekt Number In This Frame
+    ('nUnparsedChunkNum', c_uint),                           ## @~chinese 鏈В鏋愮殑Chunkdata涓暟 @~english Unparsed chunk number
+    ('UnparsedChunkList', N22_MV_FRAME_OUT_INFO_EX_3DOT_1E), ## @~chinese 鏈В鏋愮殑Chunk鏁版嵁      @~english Unparsed chunk list
+    ('nExtendWidth', c_uint),                                ## @~chinese 鍥惧儚瀹�(鎵╁睍鍙橀噺)       @~english Image Width
+    ('nExtendHeight', c_uint),                               ## @~chinese 鍥惧儚楂�(鎵╁睍鍙橀噺)       @~english Image Height
+    ('nFrameLenEx', uint64_t),                               ## @~chinese 甯х殑闀垮害               @~english The Length of Frame   
+    ('nExtraType', c_uint),                                  ## @~chinese鍒ゆ柇鎼哄甫鐨勯澶栦俊鎭殑绫诲瀷锛氬瓙鍥�(SubImageList)杩樻槸澶氬浘(MultiPartArray) MV_FRAME_EXTRA_INFO_TYPE绫诲瀷         @~english Reserved Identify the type of additional information: SubImageList or MultiPartArray of type MV_FRAME_EXTRA_INFO_TYPE.
+    ('nSubImageNum', c_uint),                                ## @~chinese 鍥惧儚缂撳瓨涓殑瀛愬浘涓暟   @~english  Number of sub-images in the image cache
+    ('SubImageList', N22_MV_FRAME_OUT_INFO_EX_3DOT_2E),      ## @~chinese 瀛愬浘淇℃伅               @~english Sub image info
+    ('UserPtr', N22_MV_FRAME_OUT_INFO_EX_3DOT_3E),           ## @~chinese 鑷畾涔夋寚閽�(澶栭儴娉ㄥ唽缂撳瓨鏃讹紝鍐呭瓨鍦板潃瀵瑰簲鐨勭敤鎴疯嚜瀹氫箟鎸囬拡)          @~english Custom pointer (user-defined pointer corresponding to memory address when registering external cache)
+    ('nFirstLineEncoderCount', c_uint),                      ## @~chinese 棣栬缂栫爜鍣ㄨ鏁�       @~english  First line encoder count
+    ('nLastLineEncoderCount', c_uint),                       ## @~chinese 灏捐缂栫爜鍣ㄨ鏁�       @~english  Last line encoder count
+    ('nReserved', c_uint * 24),                              ## @~chinese 淇濈暀瀛楄妭            @~english Reserved bytes
+]
+MV_FRAME_OUT_INFO_EX = _MV_FRAME_OUT_INFO_EX_
+
+# 鍥惧儚缁撴瀯浣擄紝杈撳嚭鍥惧儚鎸囬拡鍦板潃鍙婂浘鍍忎俊鎭�    @~english Image Struct, output the pointer of Image and the information of the specific image
+class _MV_FRAME_OUT_(Structure):
+    pass
+_MV_FRAME_OUT_._fields_ = [
+    ('pBufAddr', POINTER(c_ubyte)),         ## @~chinese 鍥惧儚鎸囬拡鍦板潃         @~english pointer of image
+    ('stFrameInfo', MV_FRAME_OUT_INFO_EX),  ## @~chinese 鍥惧儚淇℃伅            @~english information of the specific image
+    ('nRes', c_uint * 16),                  ## @~chinese 淇濈暀瀛楄妭            @~english Reserved bytes
+]
+MV_FRAME_OUT = _MV_FRAME_OUT_
+
+# values for enumeration '_MV_GRAB_STRATEGY_'
+_MV_GRAB_STRATEGY_ = c_int # enum       
+MV_GRAB_STRATEGY = _MV_GRAB_STRATEGY_   
+
+# 缃戠粶浼犺緭鐨勭浉鍏充俊鎭�    @~english Network transmission information
+class _MV_NETTRANS_INFO_(Structure):
+    pass
+_MV_NETTRANS_INFO_._fields_ = [
+    ('nReceiveDataSize', int64_t),          ## @~chinese 宸叉帴鏀舵暟鎹ぇ灏�  [缁熻StartGrabbing鍜孲topGrabbing涔嬮棿鐨勬暟鎹噺]         @~english Received Data Size  [Calculate the Data Size between StartGrabbing and StopGrabbing]  
+    ('nThrowFrameCount', c_int),            ## @~chinese 涓㈠抚鏁伴噺             @~english Throw frame number
+    ('nNetRecvFrameCount', c_uint),         ## @~chinese 鏀跺埌甯ц鏁�           @~english Receive Frame count
+    ('nRequestResendPacketCount', int64_t), ## @~chinese 璇锋眰閲嶅彂鍖呮暟         @~english Request Resend Packet Count
+    ('nResendPacketCount', int64_t),        ## @~chinese 閲嶅彂鍖呮暟            @~english Resend Packet Count
+]
+MV_NETTRANS_INFO = _MV_NETTRANS_INFO_
+
+# 鍏ㄥ尮閰嶇殑涓�绉嶄俊鎭粨鏋勪綋    @~english A fully matched information structure
+class _MV_ALL_MATCH_INFO_(Structure):
+    pass
+_MV_ALL_MATCH_INFO_._fields_ = [
+    ('nType', c_uint),              ## @~chinese 闇�瑕佽緭鍑虹殑淇℃伅绫诲瀷                  @~english Information type need to output
+    ('pInfo', c_void_p),            ## @~chinese 杈撳嚭鐨勪俊鎭紦瀛橈紝鐢辫皟鐢ㄨ�呭垎閰�         @~englishOutput information cache, which is allocated by the caller
+    ('nInfoSize', c_uint),          ## @~chinese 淇℃伅缂撳瓨鐨勫ぇ灏�                      @~english Information cache size
+]
+MV_ALL_MATCH_INFO = _MV_ALL_MATCH_INFO_
+
+# 缃戠粶娴侀噺鍜屼涪鍖呬俊鎭弽棣堢粨鏋勪綋锛屽搴旂被鍨嬩负 MV_MATCH_TYPE_NET_DETECT    @~english Network traffic and packet loss feedback structure, the corresponding type is MV_MATCH_TYPE_NET_DETECT
+class _MV_MATCH_INFO_NET_DETECT_(Structure):
+    pass
+_MV_MATCH_INFO_NET_DETECT_._fields_ = [
+    ('nReceiveDataSize', int64_t),          ## @~chinese 宸叉帴鏀舵暟鎹ぇ灏�      @~english Received data size
+    ('nLostPacketCount', int64_t),          ## @~chinese 涓㈠け鐨勫寘鏁伴噺        @~english Number of packets lost
+    ('nLostFrameCount', c_uint),            ## @~chinese 涓㈠抚鏁伴噺            @~english Number of frames lost
+    ('nNetRecvFrameCount', c_uint),         ## @~chinese 鏀跺埌甯ц鏁�           @~english Receive Frame count
+    ('nRequestResendPacketCount', int64_t), ## @~chinese 璇锋眰閲嶅彂鍖呮暟         @~english Request Resend Packet Count
+    ('nResendPacketCount', int64_t),        ## @~chinese 閲嶅彂鍖呮暟             @~english Resend Packet Count
+]
+MV_MATCH_INFO_NET_DETECT = _MV_MATCH_INFO_NET_DETECT_
+
+# \~chinese host鏀跺埌浠巙3v璁惧绔殑鎬诲瓧鑺傛暟锛屽搴旂被鍨嬩负 MV_MATCH_TYPE_USB_DETECT    @~english The total number of bytes host received from the u3v device side, the corresponding type is MV_MATCH_TYPE_USB_DETECT
+class _MV_MATCH_INFO_USB_DETECT_(Structure):
+    pass
+_MV_MATCH_INFO_USB_DETECT_._fields_ = [
+    ('nReceiveDataSize', int64_t),   ## @~chinese 宸叉帴鏀舵暟鎹ぇ灏�      @~english Received data size
+    ('nReceivedFrameCount', c_uint), ## @~chinese 宸叉敹鍒扮殑甯ф暟        @~english Number of frames received
+    ('nErrorFrameCount', c_uint),    ## @~chinese 閿欒甯ф暟            @~english Number of error frames
+    ('nReserved', c_uint * 2),       ## @~chinese 淇濈暀瀛楄妭            @~english Reserved bytes
+]
+MV_MATCH_INFO_USB_DETECT = _MV_MATCH_INFO_USB_DETECT_
+
+# \~chinese 鏄剧ず甯т俊鎭�   @~english Display frame information
+class _MV_DISPLAY_FRAME_INFO_EX_(Structure):
+    pass
+_MV_DISPLAY_FRAME_INFO_EX_._fields_ = [
+    ('nWidth', c_uint),                ## @~chinese 鍥惧儚瀹�    @~english Image Width
+    ('nHeight', c_uint),               ## @~chinese 鍥惧儚楂�    @~english Image Height
+    ('enPixelType', MvGvspPixelType),  ## @~chinese 鍍忕礌鏍煎紡            @~english Pixel Type
+    ('pImageBuf', POINTER(c_ubyte)),   ## @~chinese 杈撳叆鍥惧儚缂撳瓨         @~english Input image buffer
+    ('nImageBufLen', c_uint),          ## @~chinese 杈撳叆鍥惧儚闀垮害         @~english Input image length
+    ('enRenderMode', c_uint),          ## @~chinese 鍥惧儚娓叉煋鏂瑰紡 0-GDI(榛樿), 1-D3D, 2-OPENGL @~english Render mode 0-GDI(default), 1-D3D, 2-OPENGL
+    ('nRes', c_uint * 3),              ## @~chinese 淇濈暀瀛楄妭            @~english Reserved bytes
+]
+MV_DISPLAY_FRAME_INFO_EX = _MV_DISPLAY_FRAME_INFO_EX_
+
+
+# values for enumeration 'MV_SAVE_IAMGE_TYPE'
+MV_SAVE_IAMGE_TYPE = c_int # enum
+
+class _MV_SAVE_IMAGE_PARAM_EX3_(Structure):
+    pass
+_MV_SAVE_IMAGE_PARAM_EX3_._fields_ = [
+    ('pData', POINTER(c_ubyte)),                            ## @~chinese 杈撳叆鏁版嵁缂撳瓨         @~english Input Data Buffer
+    ('nDataLen', c_uint),                                   ## @~chinese 杈撳叆鏁版嵁澶у皬         @~english Input Data Size
+    ('enPixelType', MvGvspPixelType),                       ## @~chinese 杈撳叆鏁版嵁鐨勫儚绱犳牸寮�         @~english Input Data Pixel Format
+    ('nWidth', c_uint),                                     ## @~chinese 鍥惧儚瀹�         @~english Image Width
+    ('nHeight', c_uint),                                    ## @~chinese 鍥惧儚楂�         @~english Image Height
+    ('pImageBuffer', POINTER(c_ubyte)),                     ## @~chinese 杈撳嚭鍥剧墖缂撳瓨         @~english Output Image Buffer
+    ('nImageLen', c_uint),                                  ## @~chinese 杈撳嚭鍥剧墖澶у皬         @~english Output Image Size
+    ('nBufferSize', c_uint),                                ## @~chinese 鎻愪緵鐨勮緭鍑虹紦鍐插尯澶у皬         @~english Output buffer size provided
+    ('enImageType', MV_SAVE_IAMGE_TYPE),                    ## @~chinese 杈撳嚭鍥剧墖鏍煎紡         @~english Output Image Format
+    ('nJpgQuality', c_uint),                                ## @~chinese 缂栫爜璐ㄩ噺, (50-99]         @~english Encoding quality, (50-99]
+    ## @~chinese     ch:Bayer鏍煎紡杞负RGB24鐨勬彃鍊兼柟娉� 0-蹇�� 1-鍧囪  2-鏈�浼� 3-鏈�浼�+ , RBGG/BRGG/GGRB/GGBR鐩稿叧鍍忕礌鏍煎紡涓嶆敮鎸�0鍜�3 
+    # < @~english   en:Interpolation method of convert Bayer to RGB24  0-Fast 1-Equilibrium 2-Optimal 3-Optimal plus , RBGG/BRGG/GGRB/GGBR pixel formats do not support 0 and 3.
+    ('iMethodValue', c_uint),
+    ('nReserved', c_uint * 3),                              ## @~chinese 淇濈暀瀛楄妭           @~english Reserved bytes
+]
+MV_SAVE_IMAGE_PARAM_EX3 = _MV_SAVE_IMAGE_PARAM_EX3_
+
+# \~chinese 淇濆瓨鍥剧墖鍒版枃浠跺弬鏁�
+class _MV_SAVE_IMAGE_TO_FILE_PARAM_EX_(Structure):
+    pass
+_MV_SAVE_IMAGE_TO_FILE_PARAM_EX_._fields_ = [
+    ('nWidth', c_uint),                                 ## @~chinese 鍥惧儚瀹�                                @~english Image Width
+    ('nHeight', c_uint),                                ## @~chinese 鍥惧儚楂�                                @~english Image Height
+    ('enPixelType', MvGvspPixelType),                   ## @~chinese 杈撳叆鏁版嵁鐨勫儚绱犳牸寮�                    @~english The pixel format of the input data
+    ('pData', POINTER(c_ubyte)),                        ## @~chinese 杈撳叆鏁版嵁缂撳瓨                          @~english Input Data Buffer
+    ('nDataLen', c_uint),                               ## @~chinese 杈撳叆鏁版嵁澶у皬                          @~english Input Data Size
+    ('enImageType', MV_SAVE_IAMGE_TYPE),                ## @~chinese 杈撳叆鍥剧墖鏍煎紡                          @~english Input Image Format
+    ('pcImagePath', POINTER(c_char)),                   ## @~chinese 杈撳叆鏂囦欢璺緞,Windows骞冲彴璺緞闀垮害涓嶈秴杩�260瀛楄妭, Linux骞冲彴涓嶈秴杩�255瀛楄妭  @~english Input file path, The path length should not exceed 260 bytes on the Windows platform and 255 bytes on the Linux platform
+    ('nQuality', c_uint),                               ## @~chinese JPG缂栫爜璐ㄩ噺(50-99]锛屽叾浠栨牸寮忔棤鏁�    @~english JPG Encoding quality(50-99]
+    ('iMethodValue', c_int),                            ## @~chinese     ch:Bayer鏍煎紡杞负RGB24鐨勬彃鍊兼柟娉� 0-蹇�� 1-鍧囪  2-鏈�浼� 3-鏈�浼�+ , RBGG/BRGG/GGRB/GGBR鐩稿叧鍍忕礌鏍煎紡涓嶆敮鎸�0鍜�3   @~english   en:Interpolation method of convert Bayer to RGB24  0-Fast 1-Equilibrium 2-Optimal 3-Optimal plus , RBGG/BRGG/GGRB/GGBR pixel formats do not support 0 and 3.
+    ('nReserved', c_uint * 8),                          ## @~chinese 淇濈暀瀛楄妭           @~english Reserved bytes
+]
+MV_SAVE_IMAGE_TO_FILE_PARAM_EX = _MV_SAVE_IMAGE_TO_FILE_PARAM_EX_
+
+# \~chinese 淇濆瓨鍥剧墖鍒版枃浠跺弬鏁�
+class _MV_CC_SAVE_IMAGE_PARAM_(Structure):
+    pass
+_MV_CC_SAVE_IMAGE_PARAM_._fields_ = [
+    ('enImageType', MV_SAVE_IAMGE_TYPE),    ## @~chinese    杈撳叆鍥剧墖鏍煎紡  @~english Enter image format.
+    ('nQuality', c_uint),       ## @~chinese      JPG缂栫爜璐ㄩ噺(50-99]锛屽叾瀹冩牸寮忔棤鏁�   @~english   JPEG Encoding Quality (50鈥�99), Other Formats Are Invalid.
+    ('iMethodValue', c_int),    ## @~chinese     ch:Bayer鏍煎紡杞负RGB24鐨勬彃鍊兼柟娉� 0-蹇�� 1-鍧囪  2-鏈�浼� 3-鏈�浼�+ , RBGG/BRGG/GGRB/GGBR鐩稿叧鍍忕礌鏍煎紡涓嶆敮鎸�0鍜�3   @~english   en:Interpolation method of convert Bayer to RGB24  0-Fast 1-Equilibrium 2-Optimal 3-Optimal plus , RBGG/BRGG/GGRB/GGBR pixel formats do not support 0 and 3.
+    ('nReserved', c_uint * 8),
+]
+MV_CC_SAVE_IMAGE_PARAM = _MV_CC_SAVE_IMAGE_PARAM_
+
+
+
+# values for enumeration '_MV_SORT_METHOD_'
+_MV_SORT_METHOD_ = c_int  # enum
+MV_SORT_METHOD = _MV_SORT_METHOD_
+
+# values for enumeration '_MV_IMG_ROTATION_ANGLE_'
+_MV_IMG_ROTATION_ANGLE_ = c_int  # enum
+MV_IMG_ROTATION_ANGLE = _MV_IMG_ROTATION_ANGLE_
+
+# values for enumeration '_MV_IMG_FLIP_TYPE_'
+_MV_IMG_FLIP_TYPE_ = c_int  # enum
+MV_IMG_FLIP_TYPE = _MV_IMG_FLIP_TYPE_
+
+# values for enumeration '_MV_CC_GAMMA_TYPE_'
+_MV_CC_GAMMA_TYPE_ = c_int  # enum
+MV_CC_GAMMA_TYPE = _MV_CC_GAMMA_TYPE_
+
+
+# values for enumeration '_MV_IMAGE_RECONSTRUCTION_METHOD_'
+_MV_IMAGE_RECONSTRUCTION_METHOD_ = c_int  # enum
+MV_IMAGE_RECONSTRUCTION_METHOD = _MV_IMAGE_RECONSTRUCTION_METHOD_
+
+
+# \~chinese 鍥惧儚鏃嬭浆缁撴瀯浣�            @~english Rotate image structure
+class _MV_CC_ROTATE_IMAGE_PARAM_T_(Structure):
+    pass
+_MV_CC_ROTATE_IMAGE_PARAM_T_._fields_ = [
+    ('enPixelType', MvGvspPixelType),   ## @~chinese 鍍忕礌鏍煎紡              @~english pixel format
+    ('nWidth', c_uint),                 ## @~chinese 鍥惧儚瀹�                @~english Image Width
+    ('nHeight', c_uint),                ## @~chinese 鍥惧儚楂�                @~english Image Height
+    ('pSrcData', POINTER(c_ubyte)),     ## @~chinese 杈撳叆鏁版嵁缂撳瓨           @~english Input data buffer
+    ('nSrcDataLen', c_uint),            ## @~chinese 杈撳叆鏁版嵁澶у皬           @~english Input data length
+    ('pDstBuf', POINTER(c_ubyte)),      ## @~chinese 杈撳嚭鏁版嵁缂撳瓨           @~english Output data buffer
+    ('nDstBufLen', c_uint),             ## @~chinese杈撳嚭鏁版嵁闀垮害            @~english Output data length
+    ('nDstBufSize', c_uint),            ## @~chinese  鎻愪緵鐨勮緭鍑虹紦鍐插尯澶у皬    @~english Provided output buffer size
+    ('enRotationAngle', MV_IMG_ROTATION_ANGLE),   ## @~chinese  鏃嬭浆瑙掑害               @~english Rotation angle
+    ('nRes', c_uint * 8),               ## @~chinese 淇濈暀瀛楄妭               @~english Reserved bytes
+]
+MV_CC_ROTATE_IMAGE_PARAM = _MV_CC_ROTATE_IMAGE_PARAM_T_
+
+# \~chinese 鍥惧儚缈昏浆缁撴瀯浣�            @~english Flip image structure
+class _MV_CC_FLIP_IMAGE_PARAM_T_(Structure):
+    pass
+_MV_CC_FLIP_IMAGE_PARAM_T_._fields_ = [
+    ('enPixelType', MvGvspPixelType),   ## @~chinese 鍍忕礌鏍煎紡              @~english pixel format
+    ('nWidth', c_uint),                 ## @~chinese 鍥惧儚瀹�                @~english Image Width
+    ('nHeight', c_uint),                ## @~chinese 鍥惧儚楂�                @~english Image Height
+    ('pSrcData', POINTER(c_ubyte)),     ## @~chinese 杈撳叆鏁版嵁缂撳瓨           @~english Input data buffer
+    ('nSrcDataLen', c_uint),            ## @~chinese 杈撳叆鏁版嵁澶у皬           @~english Input data length
+    ('pDstBuf', POINTER(c_ubyte)),      ## @~chinese 杈撳嚭鏁版嵁缂撳瓨           @~english Output data buffer
+    ('nDstBufLen', c_uint),             ## @~chinese杈撳嚭鏁版嵁闀垮害            @~english Output data length
+    ('nDstBufSize', c_uint),            ## @~chinese  鎻愪緵鐨勮緭鍑虹紦鍐插尯澶у皬    @~english Provided output buffer size
+    ('enFlipType', MV_IMG_FLIP_TYPE),   ## @~chinese  缈昏浆绫诲瀷              @~english Flip type
+    ('nRes', c_uint * 8),               ## @~chinese 淇濈暀瀛楄妭               @~english Reserved bytes
+]
+MV_CC_FLIP_IMAGE_PARAM = _MV_CC_FLIP_IMAGE_PARAM_T_
+
+class _MV_PIXEL_CONVERT_PARAM_EX_T_(Structure):
+    pass
+_MV_PIXEL_CONVERT_PARAM_EX_T_._fields_ = [
+    ('nWidth', c_uint),                ## @~chinese 鍥惧儚瀹�             @~english Image Width
+    ('nHeight', c_uint),               ## @~chinese 鍥惧儚楂�              @~english Image Height
+    ('enSrcPixelType', MvGvspPixelType), ## @~chinese 婧愬儚绱犳牸寮�            @~english Source pixel format
+    ('pSrcData', POINTER(c_ubyte)),      ## @~chinese 杈撳叆鏁版嵁缂撳瓨           @~english Input data buffer
+    ('nSrcDataLen', c_uint),             ## @~chinese 杈撳叆鏁版嵁澶у皬            @~english Input data size
+    ('enDstPixelType', MvGvspPixelType), ## @~chinese 鐩爣鍍忕礌鏍煎紡             @~english Destination pixel format
+    ('pDstBuffer', POINTER(c_ubyte)),    ## @~chinese 杈撳嚭鏁版嵁缂撳瓨              @~english Output data buffer
+    ('nDstLen', c_uint),                 ## @~chinese 杈撳嚭鏁版嵁澶у皬               @~english Output data size
+    ('nDstBufferSize', c_uint),          ## @~chinese 鎻愪緵鐨勮緭鍑虹紦鍐插尯澶у皬         @~english Provided outbut buffer size
+    ('nRes', c_uint * 4),                ## @~chinese 淇濈暀瀛楄妭                     @~english Reserved bytes
+]
+MV_CC_PIXEL_CONVERT_PARAM_EX = _MV_PIXEL_CONVERT_PARAM_EX_T_
+
+
+
+# \~chinese Gamma淇℃伅缁撴瀯浣�           @~english Gamma info structure
+class _MV_CC_GAMMA_PARAM_T_(Structure):
+    pass
+_MV_CC_GAMMA_PARAM_T_._fields_ = [
+    ('enGammaType', MV_CC_GAMMA_TYPE),       ## @~chinese Gamma绫诲瀷              @~english Gamma type
+    ('fGammaValue', c_float),                ## @~chinese Gamma鍊糩0.1,4.0]       @~english Gamma value[0.1,4.0]
+    ('pGammaCurveBuf', POINTER(c_ubyte)),    ## @~chinese Gamma鏇茬嚎缂撳瓨          @~english Gamma curve buffer
+    ('nGammaCurveBufLen', c_uint),           ## @~chinese Gamma鏇茬嚎缂撳瓨闀垮害          @~english Gamma curve buffer size
+    ('nRes', c_uint * 8),                    ## @~chinese 淇濈暀瀛楄妭             @~english Reserved bytes
+]
+MV_CC_GAMMA_PARAM = _MV_CC_GAMMA_PARAM_T_
+
+# \~chinese CCM鍙傛暟                   @~english CCM param
+class _MV_CC_CCM_PARAM_T_(Structure):
+    pass
+_MV_CC_CCM_PARAM_T_._fields_ = [
+    ('bCCMEnable', c_bool),         ## @~chinese 鏄惁鍚敤CCM            @~english CCM enable
+    ('nCCMat', c_int * 9),          ## @~chinese CCM鐭╅樀[-8192~8192]   @~english Color correction matrix[-8192~8192]
+    ('nRes', c_uint * 8),           ## @~chinese 淇濈暀瀛楄妭             @~english Reserved bytes
+]
+MV_CC_CCM_PARAM = _MV_CC_CCM_PARAM_T_
+
+# \~chinese CCM鍙傛暟                   @~english CCM param
+class _MV_CC_CCM_PARAM_EX_T_(Structure):
+    pass
+_MV_CC_CCM_PARAM_EX_T_._fields_ = [
+    ('bCCMEnable', c_bool),         ## @~chinese 鏄惁鍚敤CCM            @~english CCM enable
+    ('nCCMat', c_int * 9),          ## @~chinese CCM鐭╅樀[-65536~65536]  @~english Color correction matrix[-65536~65536]
+    ('nCCMScale', c_uint),          ## @~chinese 閲忓寲绯绘暟锛�2鐨勬暣鏁板箓,鏈�澶�65536锛�    @~english Quantitative scale(Integer power of 2, <= 65536)
+    ('nRes', c_uint * 8),           ## @~chinese 淇濈暀瀛楄妭             @~english Reserved bytes
+]
+MV_CC_CCM_PARAM_EX = _MV_CC_CCM_PARAM_EX_T_
+
+# \~chinese 瀵规瘮搴﹁皟鑺傜粨鏋勪綋          @~english Contrast structure
+class _MV_CC_CONTRAST_PARAM_T_(Structure):
+    pass
+_MV_CC_CONTRAST_PARAM_T_._fields_ = [
+    ('nWidth', c_uint),                 ## @~chinese 鍥惧儚瀹�(鏈�灏�8)         @~english Image Width
+    ('nHeight', c_uint),                ## @~chinese 鍥惧儚楂�(鏈�灏�8)         @~english Image Height
+    ('pSrcBuf', POINTER(c_ubyte)),      ## @~chinese 杈撳叆鏁版嵁缂撳瓨           @~english Input data buffer
+    ('nSrcBufLen', c_uint),             ## @~chinese 杈撳叆鏁版嵁澶у皬           @~english Input data length
+    ('enPixelType', MvGvspPixelType),   ## @~chinese 鍍忕礌鏍煎紡               @~english pixel format
+    ('pDstBuf', POINTER(c_ubyte)),      ## @~chinese 杈撳嚭鏁版嵁缂撳瓨          @~english Output data buffer
+    ('nDstBufSize', c_uint),            ## @~chinese鎻愪緵鐨勮緭鍑虹紦鍐插尯澶у皬     @~english Provided output buffer size
+    ('nDstBufLen', c_uint),            ## @~chinese  杈撳嚭鏁版嵁闀垮害           @~english Output data length
+    ('nContrastFactor', c_uint),       ## @~chinese  瀵规瘮搴﹀�硷紝[1,10000]    @~english Contrast factor,[1,10000]
+    ('nRes', c_uint * 8),                 ## @~chinese 淇濈暀瀛楄妭             @~english Reserved bytes
+]
+MV_CC_CONTRAST_PARAM = _MV_CC_CONTRAST_PARAM_T_
+
+
+# \~chinese 姘村嵃淇℃伅     @~english  Frame-specific information
+class _MV_CC_FRAME_SPEC_INFO_(Structure):
+    pass
+_MV_CC_FRAME_SPEC_INFO_._fields_ = [
+    ## @~chinese 璁惧姘村嵃鏃舵爣      @~english Device frame-specific time scale
+    ('nSecondCount', c_uint),        ## @~chinese 绉掓暟                  @~english The Seconds
+    ('nCycleCount', c_uint),         ## @~chinese 鍛ㄦ湡鏁�                 @~english The Count of Cycle
+    ('nCycleOffset', c_uint),        ## @~chinese 鍛ㄦ湡鍋忕Щ閲�              @~english The Offset of Cycle
+    ('fGain', c_float),              ## @~chinese 澧炵泭                   @~english Gain
+    ('fExposureTime', c_float),      ## @~chinese 鏇濆厜鏃堕棿                @~english Exposure Time
+    ('nAverageBrightness', c_uint),  ## @~chinese 骞冲潎浜害                @~english Average brightness
+    ## @~chinese 鐧藉钩琛$浉鍏�        @~english White balance
+    ('nRed', c_uint),    ## @~chinese 绾㈣壊                   @~english Red
+    ('nGreen', c_uint),  ## @~chinese 缁胯壊                    @~english Green
+    ('nBlue', c_uint),   ## @~chinese 钃濊壊                    @~english Blue
+    ('nFrameCounter', c_uint),  ## @~chinese 鎬诲抚鏁�           @~english Frame Counter
+    ('nTriggerIndex', c_uint),  ## @~chinese 瑙﹀彂璁℃暟          @~english Trigger Counting
+    ('nInput', c_uint),  ## @~chinese 杈撳叆                   @~english Input
+    ('nOutput', c_uint), ## @~chinese 杈撳嚭                   @~english Output
+    ## @~chinese ROI鍖哄煙           @~english ROI Region
+    ('nOffsetX', c_ushort),      ## @~chinese 姘村钩鍋忕Щ閲�        @~english OffsetX
+    ('nOffsetY', c_ushort),      ## @~chinese 鍨傜洿鍋忕Щ閲�         @~english OffsetY
+    ('nFrameWidth', c_ushort),   ## @~chinese 姘村嵃瀹�            @~english The Width of Chunk
+    ('nFrameHeight', c_ushort),  ## @~chinese 姘村嵃楂�            @~english The Height of Chunk
+    ('nReserved', c_uint * 16),   ## @~chinese 棰勭暀              @~english Reserved bytes
+]
+MV_CC_FRAME_SPEC_INFO = _MV_CC_FRAME_SPEC_INFO_
+
+
+
+# \~chinese 鍘荤传杈圭粨鏋勪綋          @~english PurpleFringing structure
+class _MV_CC_PURPLE_FRINGING_PARAM_T_(Structure):
+    pass
+_MV_CC_PURPLE_FRINGING_PARAM_T_._fields_ = [
+    ('nWidth', c_uint),                         #/< [IN]  \~chinese 鍥惧儚瀹藉害(鏈�灏�4)        @~english Image Width
+    ('nHeight', c_uint),                        #/< [IN]  \~chinese 鍥惧儚楂樺害(鏈�灏�4)        @~english Image Height
+    ('pSrcBuf', POINTER(c_ubyte)),              #/< [IN]  \~chinese 杈撳叆鏁版嵁缂撳瓨           @~english Input data buffer
+    ('nSrcBufLen', c_uint),                     #/< [IN]  \~chinese 杈撳叆鏁版嵁澶у皬           @~english Input data length
+    ('enPixelType', MvGvspPixelType),           #/< [IN]  \~chinese 鍍忕礌鏍煎紡               @~english Pixel format
+    ('pDstBuf', POINTER(c_ubyte)),              #/< [OUT] \~chinese 杈撳嚭鏁版嵁缂撳瓨           @~english Output data buffer
+    ('nDstBufSize', c_uint),                    #/< [IN]  \~chinese 鎻愪緵鐨勮緭鍑虹紦鍐插尯澶у皬   @~english Provided output buffer size
+    ('nDstBufLen', c_uint),                     #/< [OUT] \~chinese 杈撳嚭鏁版嵁闀垮害           @~english Output data length
+    ('nKernelSize', c_uint),                    #/< [IN]     \~chinese 婊ゆ尝鏍稿昂瀵�,浠呮敮鎸�3,5,7,9   @~english Filter Kernel Size, only supports 3,5,7,9
+    ('nEdgeThreshold', c_uint),                 #/< [IN]     \~chinese 杈圭紭闃堝�糩0,2040]           @~english EdgeThreshold
+    ('nRes', c_uint * 8),                       #/<       \~chinese 棰勭暀                   @~english Reserved
+]
+MV_CC_PURPLE_FRINGING_PARAM = _MV_CC_PURPLE_FRINGING_PARAM_T_
+
+
+# \~chinese ISP閰嶇疆缁撴瀯浣�          @~english ISP configuration structure
+class _MV_CC_ISP_CONFIG_PARAM_T_(Structure):
+    pass
+_MV_CC_ISP_CONFIG_PARAM_T_._fields_ = [
+    ('pcConfigPath', STRING),               #/< [IN]  \~chinese 閰嶇疆鏂囦欢璺緞(璺緞淇敼鍚庝細閲嶆柊鍒涘缓绠楁硶鍙ユ焺)              @~english Config file path (The algorithm handle will be reinitialized if the path is modified.)
+    ('nRes', c_uint * 16),                  #/<        \~chinese 棰勭暀                    @~english Reserved
+]
+MV_CC_ISP_CONFIG_PARAM = _MV_CC_ISP_CONFIG_PARAM_T_
+
+
+
+# \~chinese 鏃犳崯瑙g爜鍙傛暟              @~english High Bandwidth decode structure
+class _MV_CC_HB_DECODE_PARAM_T_(Structure):
+    pass
+_MV_CC_HB_DECODE_PARAM_T_._fields_ = [
+    ('pSrcBuf', POINTER(c_ubyte)),      ## @~chinese 杈撳叆鏁版嵁缂撳瓨             @~english Input data buffer
+    ('nSrcLen', c_uint),                ## @~chinese 杈撳叆鏁版嵁澶у皬             @~english Input data size
+    ('nWidth', c_uint),                 ## @~chinese 鍥惧儚瀹�                   @~english Image Width
+    ('nHeight', c_uint),                ## @~chinese 鍥惧儚楂�                   @~english Image Height
+    ('pDstBuf', POINTER(c_ubyte)),      ## @~chinese 杈撳嚭鏁版嵁缂撳瓨             @~english Output data buffer
+    ('nDstBufSize', c_uint),            ## @~chinese 鎻愪緵鐨勮緭鍑虹紦鍐插尯澶у皬     @~english Provided output buffer size
+    ('nDstBufLen', c_uint),             ## @~chinese 杈撳嚭鏁版嵁澶у皬             @~english Output data size
+    ('enDstPixelType', MvGvspPixelType),  ## @~chinese 杈撳嚭鐨勫儚绱犳牸寮�         @~english Output pixel format
+    ('stFrameSpecInfo', MV_CC_FRAME_SPEC_INFO),  ## @~chinese 姘村嵃淇℃伅            @~english Frame Spec Info
+    ('nRes', c_uint * 8),                 ## @~chinese 淇濈暀瀛楄妭               @~english Reserved bytes
+]
+MV_CC_HB_DECODE_PARAM = _MV_CC_HB_DECODE_PARAM_T_
+
+
+
+# values for enumeration '_MV_RECORD_FORMAT_TYPE_'
+_MV_RECORD_FORMAT_TYPE_ = c_int # enum
+MV_RECORD_FORMAT_TYPE = _MV_RECORD_FORMAT_TYPE_
+
+# \~chinese 褰曞儚鍙傛暟    @~english Record Parameters
+class _MV_CC_RECORD_PARAM_T_(Structure):
+    pass
+_MV_CC_RECORD_PARAM_T_._fields_ = [
+    ('enPixelType', MvGvspPixelType),           ## @~chinese 杈撳叆鏁版嵁鐨勫儚绱犳牸寮�                                   @~english Pixel format of the input data
+    ('nWidth', c_ushort),                       ## @~chinese 鍥惧儚瀹�(鎸囧畾鐩爣鍙傛暟鏃堕渶涓�2鐨勫�嶆暟)                    @~english Image width (must be a multiple of 2 when specifying target parameters)
+    ('nHeight', c_ushort),                      ## @~chinese 鍥惧儚楂�(鎸囧畾鐩爣鍙傛暟鏃堕渶涓�2鐨勫�嶆暟)                    @~english Image height (must be a multiple of 2 when specifying target parameters)
+    ('fFrameRate', c_float),                    ## @~chinese 甯х巼fps [1/16-1000]                                   @~english Frame rate fps  [1/16-1000]    
+    ('nBitRate', c_uint),                       ## @~chinese 鐮佺巼kbps [128-16*1024]kbps                            @~english Bit rate kbps [128-16*1024]kbps   
+    ('enRecordFmtType', MV_RECORD_FORMAT_TYPE), ## @~chinese 褰曞儚鏍煎紡                                             @~english Video format
+    ('strFilePath', STRING),                    ## @~chinese 褰曞儚鏂囦欢瀛樻斁璺緞(濡傛灉璺緞涓瓨鍦ㄤ腑鏂囷紝闇�杞垚utf-8)    @~english Video file storage path (if there is Chinese in the path, it needs to be converted to utf-8)
+    ('nRes', c_uint * 8),                       ## @~chinese 淇濈暀瀛楄妭                                             @~english Reserved bytes
+]
+MV_CC_RECORD_PARAM = _MV_CC_RECORD_PARAM_T_
+
+# \~chinese 褰曞儚鏁版嵁    @~english Record Data
+class _MV_CC_INPUT_FRAME_INFO_T_(Structure):
+    pass
+_MV_CC_INPUT_FRAME_INFO_T_._fields_ = [
+    ('pData', POINTER(c_ubyte)),  ## @~chinese 鍥惧儚鏁版嵁鎸囬拡           @~english Input Data Buffer
+    ('nDataLen', c_uint),         ## @~chinese  杈撳叆鏁版嵁澶у皬          @~english Input Data Size
+    ('nRes', c_uint * 8),         ## @~chinese 淇濈暀瀛楄妭               @~english Reserved bytes
+]
+MV_CC_INPUT_FRAME_INFO = _MV_CC_INPUT_FRAME_INFO_T_
+
+# values for enumeration '_MV_CAM_ACQUISITION_MODE_'
+_MV_CAM_ACQUISITION_MODE_ = c_int # enum
+MV_CAM_ACQUISITION_MODE = _MV_CAM_ACQUISITION_MODE_
+
+# values for enumeration '_MV_CAM_GAIN_MODE_'
+_MV_CAM_GAIN_MODE_ = c_int # enum
+MV_CAM_GAIN_MODE = _MV_CAM_GAIN_MODE_
+
+# values for enumeration '_MV_CAM_EXPOSURE_MODE_'
+_MV_CAM_EXPOSURE_MODE_ = c_int # enum
+MV_CAM_EXPOSURE_MODE = _MV_CAM_EXPOSURE_MODE_
+
+# values for enumeration '_MV_CAM_EXPOSURE_AUTO_MODE_'
+_MV_CAM_EXPOSURE_AUTO_MODE_ = c_int # enum
+MV_CAM_EXPOSURE_AUTO_MODE = _MV_CAM_EXPOSURE_AUTO_MODE_
+
+# values for enumeration '_MV_CAM_TRIGGER_MODE_'
+_MV_CAM_TRIGGER_MODE_ = c_int # enum
+MV_CAM_TRIGGER_MODE = _MV_CAM_TRIGGER_MODE_
+
+# values for enumeration '_MV_CAM_GAMMA_SELECTOR_'
+_MV_CAM_GAMMA_SELECTOR_ = c_int # enum
+MV_CAM_GAMMA_SELECTOR = _MV_CAM_GAMMA_SELECTOR_
+
+# values for enumeration '_MV_CAM_BALANCEWHITE_AUTO_'
+_MV_CAM_BALANCEWHITE_AUTO_ = c_int # enum
+MV_CAM_BALANCEWHITE_AUTO = _MV_CAM_BALANCEWHITE_AUTO_
+
+# values for enumeration '_MV_CAM_TRIGGER_SOURCE_'
+_MV_CAM_TRIGGER_SOURCE_ = c_int # enum
+MV_CAM_TRIGGER_SOURCE = _MV_CAM_TRIGGER_SOURCE_
+
+
+# values for enumeration '_MV_CC_STREAM_EXCEPTION_TYPE_'
+_MV_CC_STREAM_EXCEPTION_TYPE_ = c_int # enum
+MV_CC_STREAM_EXCEPTION_TYPE = _MV_CC_STREAM_EXCEPTION_TYPE_
+
+# \~chinese 娴佸紓甯稿洖璋冧俊鎭�        @~english Stream exception callback infomation
+class _MV_CC_STREAM_EXCEPTION_INFO_T_(Structure):
+    pass
+_MV_CC_STREAM_EXCEPTION_INFO_T_._fields_ = [
+    ('chSerialNumber', c_char * INFO_MAX_BUFFER_SIZE), ## @~chinese 璁惧搴忓垪鍙�                      @~english Device serial number
+    ('nStreamIndex', c_uint),                    ## @~chinese 娴侀�氶亾搴忓彿          @~english Stream index
+    ('enExceptionType', MV_CC_STREAM_EXCEPTION_TYPE),  ## @~chinese 娴佸紓甯哥被鍨�                    @~english Exception type
+    ('nReserved', c_uint * 8),                  ## @~chinese 淇濈暀瀛楄妭                           @~english Reserved bytes
+]
+MV_CC_STREAM_EXCEPTION_INFO = _MV_CC_STREAM_EXCEPTION_INFO_T_
+
+
+# \~chinese Event浜嬩欢鍥炶皟淇℃伅\    @~english Event callback infomation
+class _MV_EVENT_OUT_INFO_(Structure):
+    pass
+_MV_EVENT_OUT_INFO_._fields_ = [
+    ('EventName', c_char * MAX_EVENT_NAME_SIZE), ## @~chinese Event鍚嶇О               @~english Event name
+    ('nEventID', c_ushort),                      ## @~chinese Event鍙�                 @~english Event ID
+    ('nStreamChannel', c_ushort),                ## @~chinese 娴侀�氶亾搴忓彿              @~english Circulation number
+    ('nBlockIdHigh', c_uint),                    ## @~chinese 甯у彿楂樹綅  (鏆傛棤鍥轰欢鏀寔)          @~english BlockId high, not support
+    ('nBlockIdLow', c_uint),                     ## @~chinese 甯у彿浣庝綅  (鏆傛棤鍥轰欢鏀寔)           @~english BlockId low, not support
+    ('nTimestampHigh', c_uint),                  ## @~chinese 鏃堕棿鎴抽珮浣�             @~english Timestramp high
+    ('nTimestampLow', c_uint),                   ## @~chinese 鏃堕棿鎴充綆浣�             @~english Timestramp low
+    ('pEventData', c_void_p),                    ## @~chinese Event鏁版嵁     (鏆傛棤鍥轰欢鏀寔)         @~english Event data, not support
+    ('nEventDataSize', c_uint),                  ## @~chinese Event鏁版嵁闀垮害 (鏆傛棤鍥轰欢鏀寔)         @~english Event data len, not support
+    ('nReserved', c_uint * 16),                  ## @~chinese 淇濈暀瀛楄妭                 @~english Reserved bytes
+]
+MV_EVENT_OUT_INFO = _MV_EVENT_OUT_INFO_
+
+# \~chinese 鏂囦欢瀛樺彇    @~english File Access
+class _MV_CC_FILE_ACCESS_T(Structure):
+    pass
+_MV_CC_FILE_ACCESS_T._fields_ = [
+    ('pUserFileName', c_char_p),  ## @~chinese 鐢ㄦ埛鏂囦欢鍚�          @~english User file name
+    ('pDevFileName', c_char_p),   ## @~chinese 璁惧鏂囦欢鍚�          @~english Device file name
+    ('nReserved', c_uint * 32), ## @~chinese 淇濈暀瀛楄妭            @~english Reserved bytes
+]
+MV_CC_FILE_ACCESS = _MV_CC_FILE_ACCESS_T
+
+# \~chinese 鏂囦欢瀛樺彇杩涘害    @~english File Access Progress
+class _MV_CC_FILE_ACCESS_PROGRESS_T(Structure):
+    pass
+_MV_CC_FILE_ACCESS_PROGRESS_T._fields_ = [
+    ('nCompleted', int64_t),     ## @~chinese 宸插畬鎴愮殑闀垮害         @~english Completed Length
+    ('nTotal', int64_t),         ## @~chinese 鎬婚暱搴�               @~english Total Length
+    ('nReserved', c_uint * 8),   ## @~chinese 淇濈暀瀛楄妭             @~english Reserved bytes
+]
+MV_CC_FILE_ACCESS_PROGRESS = _MV_CC_FILE_ACCESS_PROGRESS_T
+
+
+# \~chinese 鏂囦欢瀛樺彇                  @~english File Access
+class _MV_CC_FILE_ACCESS_E(Structure):
+    pass
+_MV_CC_FILE_ACCESS_E._fields_ = [
+    ('pUserFileBuf', POINTER(c_char)),  ## @~chinese 鐢ㄦ埛鏂囦欢鏁版嵁        @~english User file data
+    ('pFileBufSize', c_uint),  ## @~chinese 鐢ㄦ埛鏁版嵁缂撳瓨澶у皬       @~english data buffer size
+    ('pFileBufLen', c_uint),   ## @~chinese 鐢ㄦ埛鏁版嵁缂撳瓨闀垮害       @~english data buffer len
+    ('pDevFileName', c_char_p),           ## @~chinese 璁惧鏂囦欢鍚�          @~english Device file name
+    ('nReserved', c_uint * 32),         ## @~chinese 淇濈暀瀛楄妭            @~english Reserved bytes
+]
+MV_CC_FILE_ACCESS_EX = _MV_CC_FILE_ACCESS_E
+
+# values for enumeration '_MV_GIGE_TRANSMISSION_TYPE_'
+_MV_GIGE_TRANSMISSION_TYPE_ = c_int # enum
+MV_GIGE_TRANSMISSION_TYPE = _MV_GIGE_TRANSMISSION_TYPE_
+
+# 浼犺緭妯″紡锛屽彲浠ヤ负鍗曟挱妯″紡銆佺粍鎾ā寮忕瓑    @~english Transmission type
+class _MV_TRANSMISSION_TYPE_T(Structure):
+    pass
+_MV_TRANSMISSION_TYPE_T._fields_ = [
+    ('enTransmissionType', MV_GIGE_TRANSMISSION_TYPE),  ## @~chinese 浼犺緭妯″紡                      @~english Transmission type
+    ('nDestIp', c_uint),                                ## @~chinese 鐩爣IP锛岀粍鎾ā寮忎笅鏈夋剰涔�        @~english Destination IP
+    ('nDestPort', c_ushort),                            ## @~chinese 鐩爣Port锛岀粍鎾ā寮忎笅鏈夋剰涔�        @~english Destination port
+    ('nReserved', c_uint * 32),                         ## @~chinese 淇濈暀瀛楄妭                          @~english Reserved bytes
+]
+MV_TRANSMISSION_TYPE = _MV_TRANSMISSION_TYPE_T
+
+# \~chinese 鍔ㄤ綔鍛戒护淇℃伅    @~english Action Command
+class _MV_ACTION_CMD_INFO_T(Structure):
+    pass
+_MV_ACTION_CMD_INFO_T._fields_ = [
+    ('nDeviceKey', c_uint),        ## @~chinese 璁惧瀵嗛挜                                     @~english Device key
+    ('nGroupKey', c_uint),         ## @~chinese 缁勯敭                                          @~english Group key
+    ('nGroupMask', c_uint),        ## @~chinese 缁勬帺鐮�                                         @~english Group mask
+    ('bActionTimeEnable', c_uint), ## @~chinese 鍙湁璁剧疆鎴�1鏃禔ction Time鎵嶆湁鏁堬紝闈�1鏃舵棤鏁�         @~english Action time enable
+    ('nActionTime', int64_t),      ## @~chinese 棰勫畾鐨勬椂闂达紝鍜屼富棰戞湁鍏�                             @~english Action time
+    ('pBroadcastAddress', STRING), ## @~chinese 骞挎挱鍖呭湴鍧�                                         @~english Broadcast address
+    ('nTimeOut', c_uint),          ## @~chinese 绛夊緟ACK鐨勮秴鏃舵椂闂达紝濡傛灉涓�0琛ㄧず涓嶉渶瑕丄CK               @~english Timeout
+    ('bSpecialNetEnable', c_uint), ## @~chinese鍙湁璁剧疆鎴�1鏃舵寚瀹氱殑缃戝崱IP鎵嶆湁鏁堬紝闈�1鏃舵棤鏁� @~english Special IP Enable
+    ('nSpecialNetIP', c_uint),    ## @~chinese 鎸囧畾鐨勭綉鍗P                               @~english Special Net IP address
+    ('nReserved', c_uint * 14),    ## @~chinese 棰勭暀                                                 @~english Reserved bytes
+]
+MV_ACTION_CMD_INFO = _MV_ACTION_CMD_INFO_T
+
+# \~chinese 鍔ㄤ綔鍛戒护杩斿洖淇℃伅    @~english Action Command Result
+class _MV_ACTION_CMD_RESULT_T(Structure):
+    pass
+_MV_ACTION_CMD_RESULT_T._fields_ = [
+    ('strDeviceAddress', c_ubyte * 16), ## @~chinese IP閰嶇疆閫夐」         @~english IP address of the device
+    #1.0x0000:success.
+    #2.0x8001:Command is not supported by the device.
+    #3.0x8013:The device is not synchronized to a master clock to be used as time reference.
+    #4.0x8015:A device queue or packet data has overflowed.
+    #5.0x8016:The requested scheduled action command was requested at a time that is already past.
+    ('nStatus', c_int),                 ## @~chinese 鐘舵�佺爜            @~english status
+    ('nReserved', c_uint * 4),          ## @~chinese 棰勭暀              @~english Reserved bytes
+]
+MV_ACTION_CMD_RESULT = _MV_ACTION_CMD_RESULT_T
+
+# \~chinese 鍔ㄤ綔鍛戒护杩斿洖淇℃伅鍒楄〃    @~english Action Command Result List
+class _MV_ACTION_CMD_RESULT_LIST_T(Structure):
+    pass
+_MV_ACTION_CMD_RESULT_LIST_T._fields_ = [
+    ('nNumResults', c_uint),                     ## @~chinese 杩斿洖鍊间釜鏁�         @~english Num Results
+    ('pResults', POINTER(MV_ACTION_CMD_RESULT)), ## @~chinese 鍔ㄤ綔鍛戒护杩斿洖淇℃伅        @~english action command result list
+]
+MV_ACTION_CMD_RESULT_LIST = _MV_ACTION_CMD_RESULT_LIST_T
+
+# values for enumeration 'MV_XML_InterfaceType'
+MV_XML_InterfaceType = c_int # enum
+
+# values for enumeration 'MV_XML_AccessMode'
+MV_XML_AccessMode = c_int # enum
+
+
+#/ \~chinese 鑺傜偣鍚嶇О               @~english Node Name
+class _MVCC_NODE_NAME_T(Structure):
+    pass
+_MVCC_NODE_NAME_T._fields_ = [
+    ('strName', c_char * MV_MAX_NODE_NAME_LEN),           #/< \~chinese 鑺傜偣鍚嶇О                     @~english Nodes Name
+    ('nReserved', c_uint * 4),          #/< \~chinese 棰勭暀                         @~english Reserved    
+]
+MVCC_NODE_NAME = _MVCC_NODE_NAME_T
+
+#/ \~chinese 鑺傜偣鍒楄〃               @~english Node List
+class _MVCC_NODE_NAME_LIST_T(Structure):
+    pass
+_MVCC_NODE_NAME_LIST_T._fields_ = [
+    ('nNodeNum', c_uint),                                       #/< \~chinese 鑺傜偣涓暟                     @~english Number of Node
+    ('stNodeName', MVCC_NODE_NAME * MV_MAX_NODE_NUM),           #/< \~chinese 鑺傜偣鍚嶇О                     @~english Node Name
+    ('nReserved', c_uint * 4),                                  #< \~chinese 棰勭暀                         @~english Reserved
+]
+MVCC_NODE_NAME_LIST = _MVCC_NODE_NAME_LIST_T
+
+# values for enumeration '_MVCC_NODE_ERR_TYPE_'
+_MVCC_NODE_ERR_TYPE_ = c_int # enum
+MVCC_NODE_ERR_TYPE = _MVCC_NODE_ERR_TYPE_
+
+#/ \~chinese 閿欒淇℃伅               @~english Error Name
+class _MVCC_NODE_ERROR_T(Structure):
+    pass
+_MVCC_NODE_ERROR_T._fields_ = [
+    ('strName', c_char * 64),                   #/< \~chinese 鑺傜偣鍚嶇О                     @~english Nodes Name
+    ('enErrType', MVCC_NODE_ERR_TYPE),          #/< \~chinese 閿欒绫诲瀷                     @~english Error Type
+    ('nReserved', c_uint * 4),                  #< \~chinese 棰勭暀                         @~english Reserved
+]
+MVCC_NODE_ERROR = _MVCC_NODE_ERROR_T
+
+
+#/ \~chinese 閿欒淇℃伅鍒楄〃               @~english Error List
+class _MVCC_NODE_ERROR_LIST_T(Structure):
+    pass
+_MVCC_NODE_ERROR_LIST_T._fields_ = [
+    ('nErrorNum', c_uint),                  #/< \~chinese 閿欒涓暟                     @~english Number of Error
+    ('stNodeError', MVCC_NODE_ERROR * 64),  #/< \~chinese 閿欒淇℃伅                     @~english Error Name
+    ('nReserved', c_uint * 4),              #/< \~chinese 棰勭暀                         @~english Reserved
+]
+MVCC_NODE_ERROR_LIST = _MVCC_NODE_ERROR_LIST_T
+
+
+# \~chinese 鏋氫妇绫诲瀷鍊�    @~english Enumeration Value
+class _MVCC_ENUMVALUE_T(Structure):
+    pass
+_MVCC_ENUMVALUE_T._fields_ = [
+    ('nCurValue', c_uint),                               ## @~chinese 褰撳墠鍊�                @~english Current Value
+    ('nSupportedNum', c_uint),                           ## @~chinese 鏁版嵁鐨勬湁鏁堟暟鎹釜鏁�      @~english Number of valid data
+    ('nSupportValue', c_uint * MV_MAX_XML_SYMBOLIC_NUM), ## @~chinese 鏀寔鍊煎垪琛�              @~english Support value list
+    ('nReserved', c_uint * 4),                           ## @~chinese 棰勭暀                    @~english Reserved bytes
+]
+MVCC_ENUMVALUE = _MVCC_ENUMVALUE_T
+
+#/ \~chinese 鏋氫妇绫诲瀷鍊�                @~english Enumeration Value
+class _MVCC_ENUMVALUE_EX_T(Structure):
+    pass
+_MVCC_ENUMVALUE_EX_T._fields_ = [
+    ('nCurValue', c_uint),                          #\~chinese 褰撳墠鍊�                 @~english Current Value
+    ('nSupportedNum', c_uint),                      #\~chinese 鏁版嵁鐨勬湁鏁堟暟鎹釜鏁�     @~english Number of valid data
+    ('nSupportValue', c_uint * 256),                #\~chinese 鏀寔鐨勬灇涓惧��           @~english Support Value 
+    ('nReserved', c_uint * 4),                      #\~chinese 棰勭暀                   @~english Reserved
+]
+MVCC_ENUMVALUE_EX = _MVCC_ENUMVALUE_EX_T
+
+
+# \~chinese 鏋氫妇绫诲瀷鏉$洰          @~english Enumeration Entry
+class _MVCC_ENUMENTRY_T(Structure):
+    pass
+_MVCC_ENUMENTRY_T._fields_ = [
+    ('nValue', c_uint),                             ## @~chinese 鎸囧畾鍊�               @~english Value
+    ('chSymbolic', c_char * MV_MAX_SYMBOLIC_LEN),  ## @~chinese 鎸囧畾鍊煎搴旂殑绗﹀彿       @~english Symbolic
+
+    ('nReserved', c_uint * 4),                      ## @~chinese 棰勭暀                 @~english Reserved bytes
+]
+MVCC_ENUMENTRY = _MVCC_ENUMENTRY_T
+
+
+
+# \~chinese Int绫诲瀷鍊�    @~english Int Value
+class _MVCC_INTVALUE_T(Structure):
+    pass
+_MVCC_INTVALUE_T._fields_ = [
+    ('nCurValue', c_uint),     ## @~chinese 褰撳墠鍊�        @~english Current Value
+    ('nMax', c_uint),          ## @~chinese 鏈�澶у��         @~english Max Value
+    ('nMin', c_uint),          ## @~chinese 鏈�灏忓��          @~english Min Value
+    ('nInc', c_uint),          ## @~chinese 姝ュ緞             @~english Step size
+    ('nReserved', c_uint * 4), ## @~chinese 棰勭暀              @~english Reserved bytes
+]
+MVCC_INTVALUE = _MVCC_INTVALUE_T
+
+# \~chinese Int绫诲瀷鍊糆x    @~english Int Value Ex
+class _MVCC_INTVALUE_EX_T(Structure):
+    pass
+_MVCC_INTVALUE_EX_T._fields_ = [
+    ('nCurValue', int64_t),     ## @~chinese 褰撳墠鍊�         @~english Current Value
+    ('nMax', int64_t),          ## @~chinese 鏈�澶у��          @~english Max Value
+    ('nMin', int64_t),          ## @~chinese 鏈�灏忓��           @~english Min Value
+    ('nInc', int64_t),          ## @~chinese 姝ュ緞              @~english Step size
+    ('nReserved', c_uint * 16), ## @~chinese 棰勭暀               @~english Reserved bytes
+]
+MVCC_INTVALUE_EX = _MVCC_INTVALUE_EX_T
+
+# \~chinese Float绫诲瀷鍊�    @~english Float Value
+class _MVCC_FLOATVALUE_T(Structure):
+    pass
+_MVCC_FLOATVALUE_T._fields_ = [
+    ('fCurValue', c_float),    ## @~chinese 褰撳墠鍊�           @~english Current Value
+    ('fMax', c_float),         ## @~chinese 鏈�澶у��           @~english Max Value
+    ('fMin', c_float),         ## @~chinese 鏈�灏忓��           @~english Min Value
+    ('nReserved', c_uint * 4), ## @~chinese 棰勭暀             @~english Reserved bytes
+]
+MVCC_FLOATVALUE = _MVCC_FLOATVALUE_T
+
+# \~chinese String绫诲瀷鍊�    @~english String Value
+class _MVCC_STRINGVALUE_T(Structure):
+    pass
+_MVCC_STRINGVALUE_T._fields_ = [
+    ('chCurValue', c_char * 256), ## @~chinese 褰撳墠鍊�          @~english Current Value
+    ('nMaxLength', int64_t),      ## @~chinese 鏈�澶ч暱搴�        @~english Max length
+    ('nReserved', c_uint * 2),    ## @~chinese 棰勭暀            @~english Reserved bytes
+]
+MVCC_STRINGVALUE = _MVCC_STRINGVALUE_T
+
+
+# \~chinese 杈呭姪绾块鑹�                @~english Color of Auxiliary Line
+class _MVCC_COLORF(Structure):
+    pass
+_MVCC_COLORF._fields_ = [
+    ('fR', c_float),
+    ## @~chinese 绾㈣壊锛屾牴鎹儚绱犻鑹茬殑鐩稿娣卞害锛岃寖鍥翠负[0.0 , 1.0]锛屼唬琛ㄧ潃[0, 255]鐨勯鑹叉繁搴�   @~english Red锛孯ange[0.0, 1.0]
+    ('fG', c_float),
+    ## @~chinese 缁胯壊锛屾牴鎹儚绱犻鑹茬殑鐩稿娣卞害锛岃寖鍥翠负[0.0 , 1.0]锛屼唬琛ㄧ潃[0, 255]鐨勯鑹叉繁搴�   @~english Green锛孯ange[0.0, 1.0]
+    ('fB', c_float),
+    ## @~chinese 钃濊壊锛屾牴鎹儚绱犻鑹茬殑鐩稿娣卞害锛岃寖鍥翠负[0.0 , 1.0]锛屼唬琛ㄧ潃[0, 255]鐨勯鑹叉繁搴�   @~english Blue锛孯ange[0.0, 1.0]
+    ('fAlpha', c_float),
+    ## @~chinese 閫忔槑搴︼紝鏍规嵁鍍忕礌棰滆壊鐨勭浉瀵归�忔槑搴︼紝鑼冨洿涓篬0.0 , 1.0] (姝ゅ弬鏁板姛鑳芥殏涓嶆敮鎸�)    @~english Alpha锛孯ange[0.0, 1.0](Not Support)
+    ('nReserved', c_uint * 4),     ## @~chinese 淇濈暀瀛楄妭                            @~english Reserved bytes
+]
+MVCC_COLORF = _MVCC_COLORF
+
+# \~chinese 鑷畾涔夌偣                    @~english Point defined
+class _MVCC_POINTF(Structure):
+    pass
+_MVCC_POINTF._fields_ = [
+    ('fX', c_float),
+    ## @~chinese 璇ョ偣璺濈鍥惧儚宸﹁竟缂樿窛绂伙紝鏍规嵁鍥惧儚鐨勭浉瀵逛綅缃紝鑼冨洿涓篬0.0 , 1.0]   @~english Distance From Left锛孯ange[0.0, 1.0]
+    ('fY', c_float),
+    ## @~chinese 璇ョ偣璺濈鍥惧儚涓婅竟缂樿窛绂伙紝鏍规嵁鍥惧儚鐨勭浉瀵逛綅缃紝鑼冨洿涓篬0.0 , 1.0]   @~english Distance From Top锛孯ange[0.0, 1.0]
+    ('nReserved', c_uint * 4),     ## @~chinese 淇濈暀瀛楄妭                 @~english Reserved bytes
+]
+MVCC_POINTF = _MVCC_POINTF
+
+# \~chinese 鐭╁舰妗嗗尯鍩熶俊鎭�            @~english Rect Area Info
+class _MVCC_RECT_INFO(Structure):
+    pass
+_MVCC_RECT_INFO._fields_ = [
+    ('fTop', c_float),
+    ## @~chinese 鐭╁舰涓婅竟缂樿窛绂诲浘鍍忎笂杈圭紭鐨勮窛绂伙紝鏍规嵁鍥惧儚鐨勭浉瀵逛綅缃紝鑼冨洿涓篬0.0 , 1.0]   @~english Distance From Top锛孯ange[0, 1.0]
+    ('fBottom', c_float),
+    ## @~chinese 鐭╁舰涓嬭竟缂樿窛绂诲浘鍍忎笅杈圭紭鐨勮窛绂伙紝鏍规嵁鍥惧儚鐨勭浉瀵逛綅缃紝鑼冨洿涓篬0.0 , 1.0]   @~english Distance From Bottom锛孯ange[0, 1.0]
+    ('fLeft', c_float),
+    ## @~chinese 鐭╁舰宸﹁竟缂樿窛绂诲浘鍍忓乏杈圭紭鐨勮窛绂伙紝鏍规嵁鍥惧儚鐨勭浉瀵逛綅缃紝鑼冨洿涓篬0.0 , 1.0]   @~english Distance From Left锛孯ange[0, 1.0]
+    ('fRight', c_float),
+    ## @~chinese 鐭╁舰鍙宠竟缂樿窛绂诲浘鍍忓彸杈圭紭鐨勮窛绂伙紝鏍规嵁鍥惧儚鐨勭浉瀵逛綅缃紝鑼冨洿涓篬0.0 , 1.0]   @~english Distance From Right锛孯ange[0, 1.0]
+    ('stColor', MVCC_COLORF),      ## @~chinese 杈呭姪绾块鑹蹭俊鎭�                @~english Color of Auxiliary Line
+    ('nLineWidth', c_uint),        ## @~chinese 杈呭姪绾垮搴︼紝瀹藉害鍙兘鏄�1鎴�2      @~english Width of Auxiliary Line, width is 1 or 2
+    ('nReserved', c_uint * 4),     ## @~chinese 淇濈暀瀛楄妭                     @~english Reserved bytes
+]
+MVCC_RECT_INFO = _MVCC_RECT_INFO
+
+# \~chinese 鍦嗗舰妗嗗尯鍩熶俊鎭�            @~english Circle Area Info
+class _MVCC_CIRCLE_INFO(Structure):
+    pass
+_MVCC_CIRCLE_INFO._fields_ = [
+    ('stCenterPoint', MVCC_POINTF),  ## @~chinese 鍦嗗績淇℃伅                   @~english Circle Point Info
+    ('fR1', c_float),
+    ## @~chinese 瀹藉悜鍗婂緞锛屾牴鎹浘鍍忕殑鐩稿浣嶇疆[0, 1.0]锛屽崐寰勪笌鍦嗗績鐨勪綅缃湁鍏筹紝闇�淇濊瘉鐢诲嚭鐨勫渾鍦ㄦ樉绀烘鑼冨洿涔嬪唴锛屽惁鍒欐姤閿�  @~english Width Radius, Range[0, 1.0]
+    ('fR2', c_float),
+    ## @~chinese楂樺悜鍗婂緞锛屾牴鎹浘鍍忕殑鐩稿浣嶇疆[0, 1.0]锛屽崐寰勪笌鍦嗗績鐨勪綅缃湁鍏筹紝闇�淇濊瘉鐢诲嚭鐨勫渾鍦ㄦ樉绀烘鑼冨洿涔嬪唴锛屽惁鍒欐姤閿�  @~english Height Radius, Range[0, 1.0]
+    ('stColor', MVCC_COLORF),      ## @~chinese 杈呭姪绾块鑹蹭俊鎭�                @~english Color of Auxiliary Line
+    ('nLineWidth', c_uint),        ## @~chinese 杈呭姪绾垮搴︼紝瀹藉害鍙兘鏄�1鎴�2      @~english Width of Auxiliary Line, width is 1 or 2
+    ('nReserved', c_uint * 4),     ## @~chinese 淇濈暀瀛楄妭                     @~english Reserved bytes
+]
+MVCC_CIRCLE_INFO = _MVCC_CIRCLE_INFO
+
+# \~chinese 绾挎潯杈呭姪绾夸俊鎭�    @~english Linear Auxiliary Line Info
+class _MVCC_LINES_INFO(Structure):
+    pass
+_MVCC_LINES_INFO._fields_ = [
+    ('stStartPoint', MVCC_POINTF), ## @~chinese 绾挎潯杈呭姪绾跨殑璧峰鐐瑰潗鏍�         @~english The Start Point of Auxiliary Line
+    ('stEndPoint', MVCC_POINTF),   ## @~chinese绾挎潯杈呭姪绾跨殑缁堢偣鍧愭爣            @~english The End Point of Auxiliary Line
+    ('stColor', MVCC_COLORF),      ## @~chinese 杈呭姪绾块鑹蹭俊鎭�                @~english Color of Auxiliary Line
+    ('nLineWidth', c_uint),        ## @~chinese 杈呭姪绾垮搴︼紝瀹藉害鍙兘鏄�1鎴�2      @~english Width of Auxiliary Line, width is 1 or 2
+    ('nReserved', c_uint * 4),     ## @~chinese 淇濈暀瀛楄妭             @~english Reserved bytes
+]
+MVCC_LINES_INFO = _MVCC_LINES_INFO
+
+# \~chinese 鍥惧儚閲嶆瀯鍚庣殑鍥惧儚鍒楄〃      @~english List of images after image reconstruction
+class _MV_OUTPUT_IMAGE_INFO_(Structure):
+    pass
+_MV_OUTPUT_IMAGE_INFO_._fields_ = [
+    ('nWidth', c_uint),                 ## @~chinese 鍥惧儚瀹�                @~english Image Width
+    ('nHeight', c_uint),                ## @~chinese 鍥惧儚楂�                @~english Image Height
+    ('enPixelType', MvGvspPixelType),   ## @~chinese 鍍忕礌鏍煎紡               @~english pixel format
+    ('pBuf', POINTER(c_ubyte)),      ## @~chinese 杈撳嚭鏁版嵁缂撳瓨          @~english Output data buffer
+    ('nBufLen', c_uint),             ## @~chinese 杈撳嚭鏁版嵁闀垮害          @~english Output data length
+    ('nBufSize', c_uint),            ## @~chinese  鎻愪緵鐨勮緭鍑虹紦鍐插尯澶у皬  @~english Provided output buffer size
+    ('nRes', c_uint * 8),                 ## @~chinese 淇濈暀瀛楄妭             @~english Reserved bytes
+]
+MV_OUTPUT_IMAGE_INFO = _MV_OUTPUT_IMAGE_INFO_
+
+# \~chinese 閲嶆瀯鍥惧儚鍙傛暟淇℃伅      @~english Restructure image parameters
+class _MV_RECONSTRUCT_IMAGE_PARAM_(Structure):
+    pass
+_MV_RECONSTRUCT_IMAGE_PARAM_._fields_ = [
+    ('nWidth', c_uint),                 ## @~chinese 鍥惧儚瀹�                @~english Image Width
+    ('nHeight', c_uint),                ## @~chinese 鍥惧儚楂�                @~english Image Height
+    ('enPixelType', MvGvspPixelType),   ## @~chinese 鍍忕礌鏍煎紡               @~english pixel format
+    ('pSrcData', POINTER(c_ubyte)),      ## @~chinese 杈撳叆鏁版嵁缂撳瓨           @~english input data buffer
+    ('nSrcDataLen', c_uint),             ## @~chinese 杈撳叆鏁版嵁澶у皬            @~english input data size
+    ('nExposureNum', c_uint),            ## @~chinese  鏇濆厜涓暟(1-8]     @~english Exposure number
+    ('enReconstructMethod', MV_IMAGE_RECONSTRUCTION_METHOD),   ## @~chinese 鍥惧儚閲嶆瀯鏂瑰紡      @~english Image restructuring method
+    ('stDstBufList', MV_OUTPUT_IMAGE_INFO * MV_MAX_SPLIT_NUM),  ## @~chinese 杈撳嚭鏁版嵁缂撳瓨淇℃伅  @~english Output data info
+    ('nRes', c_uint * 4),                 ## @~chinese 淇濈暀瀛楄妭             @~english Reserved bytes
+]
+MV_RECONSTRUCT_IMAGE_PARAM = _MV_RECONSTRUCT_IMAGE_PARAM_
+
+
+# 涓插彛淇℃伅      @~english Serial Port Info
+class _MV_CAML_SERIAL_PORT_(Structure):
+    pass
+_MV_CAML_SERIAL_PORT_._fields_ = [
+    ('chSerialPort', c_char * INFO_MAX_BUFFER_SIZE),   ## @~chinese 涓插彛鍙�          @~english Serial Port
+    ('nRes', c_uint * 4),                              ## @~chinese 淇濈暀瀛楄妭        @~english Reserved bytes
+]
+MV_CAML_SERIAL_PORT = _MV_CAML_SERIAL_PORT_
+
+# 鏈満涓插彛鍒楄〃            @~english serial port list
+class _MV_CAML_SERIAL_PORT_LIST_(Structure):
+    pass
+_MV_CAML_SERIAL_PORT_LIST_._fields_ = [
+    ('nSerialPortNum', c_uint),                                      ## @~chinese 涓插彛鏁伴噺   @~english Serial Port Num
+    ('stSerialPort', MV_CAML_SERIAL_PORT * MV_MAX_SERIAL_PORT_NUM),  ## @~chinese 涓插彛淇℃伅   @~english Serial Port Information
+    ('nRes', c_uint * 4),  ## @~chinese 淇濈暀瀛楄妭   @~english Reserved bytes
+]
+MV_CAML_SERIAL_PORT_LIST = _MV_CAML_SERIAL_PORT_LIST_
+
+
+
+#涓嬮潰涓轰笉鎺ㄨ崘浣跨敤鐨� 瀹氫箟
+
+
+# \~chinese 鏄剧ず甯т俊鎭�   @~english Display frame information
+class _MV_DISPLAY_FRAME_INFO_(Structure):
+    pass
+_MV_DISPLAY_FRAME_INFO_._fields_ = [
+    ('hWnd', c_void_p),               ## @~chinese 绐楀彛鍙ユ焺           @~english Windows handle
+    ('pData', POINTER(c_ubyte)),      ## @~chinese 鏄剧ず鐨勬暟鎹�         @~english Data Buffer
+    ('nDataLen', c_uint),             ## @~chinese 鏁版嵁闀垮害           @~english Data Size
+    ('nWidth', c_ushort),             ## @~chinese 鍥惧儚瀹�             @~english Width
+    ('nHeight', c_ushort),            ## @~chinese 鍥惧儚楂�             @~english Height
+    ('enPixelType', MvGvspPixelType), ## @~chinese 鍍忕礌鏍煎紡           @~english Pixel format
+    ('enRenderMode', c_uint),         ## @~chinese 鍥惧儚娓叉煋鏂瑰紡 0-GDI(榛樿), 1-D3D, 2-OPENGL @~english Render mode 0-GDI(default), 1-D3D, 2-OPENGL
+    ('nRes', c_uint * 3),             ## @~chinese 淇濈暀瀛楄妭           @~english Reserved bytes
+]
+MV_DISPLAY_FRAME_INFO = _MV_DISPLAY_FRAME_INFO_
+
+
+
+# values for enumeration 'MV_SAVE_POINT_CLOUD_FILE_TYPE'
+MV_SAVE_POINT_CLOUD_FILE_TYPE = c_int # enum
+
+# \~chinese 淇濆瓨3D鏁版嵁鍒扮紦瀛�    @~english Save 3D data to buffer
+class _MV_SAVE_POINT_CLOUD_PARAM_(Structure):
+    pass
+_MV_SAVE_POINT_CLOUD_PARAM_._fields_ = [
+    ('nLinePntNum', c_uint),                                 ## @~chinese 姣忎竴琛岀偣鐨勬暟閲忥紝鍗冲浘鍍忓                                             @~english The number of points in each row,which is the width of the image
+    ('nLineNum', c_uint),                                    ## @~chinese 琛屾暟锛屽嵆鍥惧儚楂�                                                       @~english The number of rows,which is the height of the image
+    ('enSrcPixelType', MvGvspPixelType),                     ## @~chinese 杈撳叆鏁版嵁鐨勫儚绱犳牸寮�                                                    @~english The pixel format of the input data
+    ('pSrcData', POINTER(c_ubyte)),                          ## @~chinese 杈撳叆鏁版嵁缂撳瓨                                                          @~english Input data buffer
+    ('nSrcDataLen', c_uint),                                 ## @~chinese 杈撳叆鏁版嵁澶у皬                                                           @~english Input data size
+    ('pDstBuf', POINTER(c_ubyte)),                           ## @~chinese 杈撳嚭鍍忕礌鏁版嵁缂撳瓨                                                        @~english Output pixel data buffer
+    ('nDstBufSize', c_uint),                                 ## @~chinese 鎻愪緵鐨勮緭鍑虹紦鍐插尯澶у皬(nLinePntNum * nLineNum * (16*3 + 4) + 2048)         @~english Output buffer size provided (nLinePntNum * nLineNum * (16*3 + 4) + 2048) 
+    ('nDstBufLen', c_uint),                                  ## @~chinese 杈撳嚭鍍忕礌鏁版嵁缂撳瓨闀垮害                                                     @~english Output pixel data buffer size
+    ('enPointCloudFileType', MV_SAVE_POINT_CLOUD_FILE_TYPE), ## @~chinese 鎻愪緵杈撳嚭鐨勭偣浜戞枃浠剁被鍨�                                                    @~english Output point data file type provided
+    ('nReserved', c_uint * 8),                               ## @~chinese 淇濈暀瀛楄妭                                                                 @~english Reserved bytes
+]
+MV_SAVE_POINT_CLOUD_PARAM = _MV_SAVE_POINT_CLOUD_PARAM_
+
+
+
+# \~chinese 鍥剧墖淇濆瓨鍙傛暟    @~english Save Image Parameters
+class _MV_SAVE_IMAGE_PARAM_T_EX_(Structure):
+    pass
+_MV_SAVE_IMAGE_PARAM_T_EX_._fields_ = [
+    ('pData', POINTER(c_ubyte)),                            ## @~chinese 杈撳叆鏁版嵁缂撳瓨         @~english Input Data Buffer
+    ('nDataLen', c_uint),                                   ## @~chinese 杈撳叆鏁版嵁澶у皬         @~english Input Data Size
+    ('enPixelType', MvGvspPixelType),                       ## @~chinese 杈撳叆鏁版嵁鐨勫儚绱犳牸寮�         @~english Input Data Pixel Format
+    ('nWidth', c_ushort),                                   ## @~chinese 鍥惧儚瀹�         @~english Image Width
+    ('nHeight', c_ushort),                                  ## @~chinese 鍥惧儚楂�         @~english Image Height
+    ('pImageBuffer', POINTER(c_ubyte)),                     ## @~chinese 杈撳嚭鍥剧墖缂撳瓨         @~english Output Image Buffer
+    ('nImageLen', c_uint),                                  ## @~chinese 杈撳嚭鍥剧墖澶у皬         @~english Output Image Size
+    ('nBufferSize', c_uint),                                ## @~chinese 鎻愪緵鐨勮緭鍑虹紦鍐插尯澶у皬         @~english Output buffer size provided
+    ('enImageType', MV_SAVE_IAMGE_TYPE),                    ## @~chinese 杈撳嚭鍥剧墖鏍煎紡         @~english Output Image Format
+    ('nJpgQuality', c_uint),                                ## @~chinese 缂栫爜璐ㄩ噺, (50-99]         @~english Encoding quality, (50-99]
+    ## @~chinese     ch:Bayer鏍煎紡杞负RGB24鐨勬彃鍊兼柟娉� 0-蹇�� 1-鍧囪  2-鏈�浼� 3-鏈�浼�+ , RBGG/BRGG/GGRB/GGBR鐩稿叧鍍忕礌鏍煎紡涓嶆敮鎸�0鍜�3
+    ## @~english    en:Interpolation method of convert Bayer to RGB24  0-Fast 1-Equilibrium 2-Optimal 3-Optimal plus , RBGG/BRGG/GGRB/GGBR pixel formats do not support 0 and 3.
+    ('iMethodValue', c_uint),
+    ('nReserved', c_uint * 3),                              ## @~chinese 淇濈暀瀛楄妭           @~english Reserved bytes
+]
+MV_SAVE_IMAGE_PARAM_EX = _MV_SAVE_IMAGE_PARAM_T_EX_
+
+
+# \~chinese 淇濆瓨BMP銆丣PEG銆丳NG銆乀IFF鍥剧墖鏂囦欢鐨勫弬鏁�    @~english Save BMP銆丣PEG銆丳NG銆乀IFF image file parameters
+class _MV_SAVE_IMG_TO_FILE_PARAM_(Structure):
+    pass
+_MV_SAVE_IMG_TO_FILE_PARAM_._fields_ = [
+    ('enPixelType', MvGvspPixelType),    ## @~chinese 杈撳叆鏁版嵁鐨勫儚绱犳牸寮�                    @~english The pixel format of the input data
+    ('pData', POINTER(c_ubyte)),         ## @~chinese 杈撳叆鏁版嵁缂撳瓨                          @~english Input Data Buffer
+    ('nDataLen', c_uint),                ## @~chinese 杈撳叆鏁版嵁澶у皬                           @~english Input Data Size
+    ('nWidth', c_ushort),                ## @~chinese 鍥惧儚瀹�                                  @~english Image Width
+    ('nHeight', c_ushort),               ## @~chinese 鍥惧儚楂�                                   @~english Image Height
+    ('enImageType', MV_SAVE_IAMGE_TYPE), ## @~chinese 杈撳叆鍥剧墖鏍煎紡                               @~english Input Image Format
+    ('nQuality', c_uint),                ## @~chinese JPG缂栫爜璐ㄩ噺(50-99]         @~english JPG Encoding quality(50-99]
+    ('pImagePath', c_char * 256),        ## @~chinese 杈撳叆鏂囦欢璺緞         @~english Input file path
+ ## @~chinese     ch:Bayer鏍煎紡杞负RGB24鐨勬彃鍊兼柟娉� 0-蹇�� 1-鍧囪  2-鏈�浼� 3-鏈�浼�+ , RBGG/BRGG/GGRB/GGBR鐩稿叧鍍忕礌鏍煎紡涓嶆敮鎸�0鍜�3
+ ## @~english   en:Interpolation method of convert Bayer to RGB24  0-Fast 1-Equilibrium 2-Optimal 3-Optimal plus , RBGG/BRGG/GGRB/GGBR pixel formats do not support 0 and 3.
+    ('iMethodValue', c_int),             
+    ('nReserved', c_uint * 8),           ## @~chinese 淇濈暀瀛楄妭           @~english Reserved bytes
+]
+MV_SAVE_IMG_TO_FILE_PARAM = _MV_SAVE_IMG_TO_FILE_PARAM_
+
+
+# \~chinese 鍥惧儚杞崲缁撴瀯浣�    @~english Pixel convert structure
+class _MV_CC_PIXEL_CONVERT_PARAM_T_(Structure):
+    pass
+_MV_CC_PIXEL_CONVERT_PARAM_T_._fields_ = [
+    ('nWidth', c_ushort),                ## @~chinese 鍥惧儚瀹�             @~english Image Width
+    ('nHeight', c_ushort),               ## @~chinese 鍥惧儚楂�              @~english Image Height
+    ('enSrcPixelType', MvGvspPixelType), ## @~chinese 婧愬儚绱犳牸寮�            @~english Source pixel format
+    ('pSrcData', POINTER(c_ubyte)),      ## @~chinese 杈撳叆鏁版嵁缂撳瓨           @~english Input data buffer
+    ('nSrcDataLen', c_uint),             ## @~chinese 杈撳叆鏁版嵁澶у皬            @~english Input data size
+    ('enDstPixelType', MvGvspPixelType), ## @~chinese 鐩爣鍍忕礌鏍煎紡             @~english Destination pixel format
+    ('pDstBuffer', POINTER(c_ubyte)),    ## @~chinese 杈撳嚭鏁版嵁缂撳瓨              @~english Output data buffer
+    ('nDstLen', c_uint),                 ## @~chinese 杈撳嚭鏁版嵁澶у皬               @~english Output data size
+    ('nDstBufferSize', c_uint),          ## @~chinese 鎻愪緵鐨勮緭鍑虹紦鍐插尯澶у皬         @~english Provided outbut buffer size
+    ('nRes', c_uint * 4),                ## @~chinese 淇濈暀瀛楄妭                     @~english Reserved bytes
+]
+MV_CC_PIXEL_CONVERT_PARAM = _MV_CC_PIXEL_CONVERT_PARAM_T_
+
+
+__all__ = ['_MV_ALL_MATCH_INFO_', 'MV_CC_FILE_ACCESS_PROGRESS',
+           'N19_MV_CC_DEVICE_INFO_3DOT_0E', 'MV_FRAME_OUT',
+           'MV_CAM_GAIN_MODE',
+           'MV_ALL_MATCH_INFO',
+           'MV_GIGE_TRANSTYPE_UNICAST_WITHOUT_RECV',
+           'MV_TRIGGER_SOURCE_LINE0', 'MV_PointCloudFile_Undefined',
+           'MV_TRIGGER_SOURCE_LINE2', 'MV_TRIGGER_SOURCE_LINE3',
+           'AM_CycleDetect',
+           'MV_GrabStrategy_UpcomingImage', 'IFT_IFloat',
+           'MV_EVENT_OUT_INFO', 'MV_TRANSMISSION_TYPE',
+           'uint_fast16_t', 'MV_CHUNK_DATA_CONTENT','MV_ACTION_CMD_RESULT',
+           'MV_CC_INPUT_FRAME_INFO',
+           '_MV_ACTION_CMD_RESULT_T',
+           'AM_RO', 'IFT_IPort', 'uint_least16_t',
+           '_MV_FRAME_OUT_INFO_EX_', '_MV_TRANSMISSION_TYPE_T',
+           'MV_SAVE_IMAGE_PARAM_EX', 'MV_SAVE_IMAGE_PARAM_EX3', 'AM_RW', 'MV_XML_InterfaceType',
+           'int32_t', '_MV_ACTION_CMD_INFO_T', 'intptr_t',
+           'uint_least64_t', '_MV_NETTRANS_INFO_',
+           '_MV_CAM_TRIGGER_MODE_', 'int_least32_t',
+           'MV_GIGE_TRANSTYPE_SUBNETBROADCAST',
+           'MV_SAVE_POINT_CLOUD_FILE_TYPE',
+           'MV_ACTION_CMD_RESULT_LIST',
+           'MV_BALANCEWHITE_AUTO_CONTINUOUS',
+           '_MV_CHUNK_DATA_CONTENT_', 'MV_FormatType_AVI',
+           '_MV_CC_PIXEL_CONVERT_PARAM_T_','_MV_PIXEL_CONVERT_PARAM_EX_T_',
+           'MV_GENTL_IF_INFO',
+           'MV_ACQ_MODE_SINGLE',
+           'MV_TRIGGER_MODE_ON',
+           'int_least16_t', 'N22_MV_FRAME_OUT_INFO_EX_3DOT_1E',
+           'N22_MV_FRAME_OUT_INFO_EX_3DOT_2E','N22_MV_FRAME_OUT_INFO_EX_3DOT_3E',
+           'MV_GIGE_TRANSTYPE_LIMITEDBROADCAST', 'int_fast32_t',
+           '_MV_CAM_GAIN_MODE_',
+           'MV_RECORD_FORMAT_TYPE', 'MV_CC_DEVICE_INFO',
+           'IFT_ICommand', '_MV_RECORD_FORMAT_TYPE_',
+           '_MV_CAM_ACQUISITION_MODE_',
+           '_MVCC_STRINGVALUE_T',
+           'MV_GIGE_TRANSTYPE_MULTICAST_WITHOUT_RECV',
+           '_MV_MATCH_INFO_NET_DETECT_', 'MVCC_INTVALUE',
+           'MV_PointCloudFile_OBJ', '_MV_GIGE_TRANSMISSION_TYPE_',
+           '_MV_CC_RECORD_PARAM_T_',
+           '_MV_GENTL_IF_INFO_', 'MV_EXPOSURE_MODE_TIMED', 'intmax_t',
+           'int16_t',
+           'MV_DISPLAY_FRAME_INFO', '_MV_CC_FILE_ACCESS_PROGRESS_T',
+           '_MV_GRAB_STRATEGY_', '_MV_SAVE_IMG_TO_FILE_PARAM_', '_MV_SAVE_IMAGE_TO_FILE_PARAM_EX_',
+           'int_fast64_t',
+           'MV_XML_AccessMode',
+           'MV_GAIN_MODE_ONCE', 'IFT_IInteger',
+           'MV_CAM_BALANCEWHITE_AUTO', 'int_least8_t',
+           'MV_PointCloudFile_CSV', 'IFT_IBase',
+           'MV_TRIGGER_MODE_OFF', 'MV_Image_Bmp',
+           '_MV_GENTL_DEV_INFO_', 'MV_CC_FILE_ACCESS',
+           '_MV_CAM_EXPOSURE_AUTO_MODE_',
+           'uint_least8_t',
+           'MV_ACTION_CMD_INFO',
+           '_MV_CC_INPUT_FRAME_INFO_T_',
+           'MV_GENTL_DEV_INFO_LIST', '_MV_CAM_TRIGGER_SOURCE_',
+           'MV_GRAB_STRATEGY',
+           'IFT_IEnumeration', 'uint64_t', 'uint8_t',
+           '_MV_GENTL_DEV_INFO_LIST_',
+           'MV_CAM_GAMMA_SELECTOR',
+           'MV_CamL_DEV_INFO', 'MV_GENTL_IF_INFO_LIST',
+           'MV_CAM_TRIGGER_MODE', 'MV_GIGE_TRANSTYPE_MULTICAST',
+           'uint16_t', 'uint_fast8_t',
+           '_MV_ACTION_CMD_RESULT_LIST_T',
+           '_MV_MATCH_INFO_USB_DETECT_',
+           '_MVCC_ENUMVALUE_T',
+           'MV_SAVE_POINT_CLOUD_PARAM', '_MV_CC_DEVICE_INFO_',
+           'IFT_IBoolean',
+           'MV_MATCH_INFO_USB_DETECT', 'MV_PointCloudFile_PLY',
+           'MVCC_ENUMVALUE',
+           'IFT_IString',
+           'MV_ACQ_MODE_CONTINUOUS',
+           'MV_TRIGGER_SOURCE_FrequencyConverter',
+           'MV_FRAME_EXTRA_NO_INFO','MV_FRAME_EXTRA_SUBIMAGES','MV_FRAME_EXTRA_MULTIPARTS',
+           'MV_GIGE_PART_ZONE_TOP_DOWN','MV_GIGE_PART_ZONE_BOTTOM_UP',
+           'MV_GIGE_DT_2D_IMAGE_1_PLANAR','MV_GIGE_DT_2D_IMAGE_2_PLANAR','MV_GIGE_DT_2D_IMAGE_3_PLANAR','MV_GIGE_DT_2D_IMAGE_4_PLANAR', 
+           'MV_GIGE_DT_3D_IMAGE_1_PLANAR','MV_GIGE_DT_3D_IMAGE_2_PLANAR','MV_GIGE_DT_3D_IMAGE_3_PLANAR','MV_GIGE_DT_3D_IMAGE_4_PLANAR', 
+           'MV_GIGE_DT_CONFIDENCE_MAP','MV_GIGE_DT_CHUNK_DATA','MV_GIGE_DT_JPEG_IMAGE','MV_GIGE_DT_JPEG2000_IMAGE',           
+           'MV_TRIGGER_SOURCE_COUNTER0',
+           'MV_GAIN_MODE_OFF', '_MV_CC_DEVICE_INFO_LIST_',
+           'MV_GIGE_DEVICE_INFO', '_MV_SAVE_IMAGE_PARAM_T_EX_', '_MV_SAVE_IMAGE_PARAM_EX3_',
+           'AM_NA', 'uint_least32_t',
+           'MV_CC_PIXEL_CONVERT_PARAM', 'MV_CC_PIXEL_CONVERT_PARAM_EX','AM_NI',
+           '_MVCC_INTVALUE_EX_T', 'uintptr_t', 'MV_Image_Tif',
+           'MVCC_FLOATVALUE', 'MV_GIGE_TRANSTYPE_CAMERADEFINED',
+           '_MV_GENTL_IF_INFO_LIST_', 'MV_NETTRANS_INFO',
+           'IFT_IRegister', 'MV_GIGE_TRANSMISSION_TYPE',
+           'MV_EXPOSURE_AUTO_MODE_ONCE', 'MV_GIGE_TRANSTYPE_UNICAST',
+           'int8_t', '_MV_GIGE_DEVICE_INFO_', 'IFT_IValue', 'AM_WO',
+           'int_fast8_t',
+           'MV_GAMMA_SELECTOR_SRGB','int_least64_t',
+           'MV_GrabStrategy_LatestImagesOnly',
+           'MV_EXPOSURE_AUTO_MODE_OFF', 'MV_CAM_EXPOSURE_AUTO_MODE',
+           'MV_EXPOSURE_AUTO_MODE_CONTINUOUS',
+           'MV_CAM_ACQUISITION_MODE', 'AM_Undefined',
+           'MV_MATCH_INFO_NET_DETECT',
+           '_MV_CC_FILE_ACCESS_T',
+           '_MV_DISPLAY_FRAME_INFO_','MV_GrabStrategy_OneByOne',
+           'MV_TRIGGER_SOURCE_SOFTWARE', 'MV_FormatType_Undefined',
+           'MV_BALANCEWHITE_AUTO_ONCE',
+           'uintmax_t', 'int_fast16_t',
+           '_MV_CAM_EXPOSURE_MODE_','MV_BALANCEWHITE_AUTO_OFF',
+           'int64_t', 'MV_Image_Undefined', 'MV_GAIN_MODE_CONTINUOUS',
+           'uint_fast32_t',
+           'MV_CAM_TRIGGER_SOURCE', 'MV_GrabStrategy_LatestImages',
+           'MV_Image_Png',
+           'MV_Image_Jpeg', '_MV_CamL_DEV_INFO_',
+           '_MVCC_FLOATVALUE_T',
+           'MV_FRAME_OUT_INFO_EX', '_MV_SAVE_POINT_CLOUD_PARAM_',
+           '_MV_CAM_BALANCEWHITE_AUTO_', 'MV_CC_RECORD_PARAM',
+           '_MV_USB3_DEVICE_INFO_',
+           'MVCC_INTVALUE_EX', 'MV_EXPOSURE_MODE_TRIGGER_WIDTH',
+           'MV_GIGE_TRANSTYPE_UNICAST_DEFINED_PORT',
+           'MV_SAVE_IAMGE_TYPE','MV_GENTL_DEV_INFO',
+           'MV_CAM_EXPOSURE_MODE',
+           'MVCC_STRINGVALUE',
+           'MvGvspPixelType',
+           'MV_CC_DEVICE_INFO_LIST',
+           'MV_TRIGGER_SOURCE_LINE1',
+           'uint_fast64_t','_MVCC_INTVALUE_T',
+           'IFT_ICategory',
+           'MV_SAVE_IMG_TO_FILE_PARAM', 'MV_SAVE_IMAGE_TO_FILE_PARAM_EX', '_MV_FRAME_OUT_',
+           'MV_GAMMA_SELECTOR_USER',
+           'uint32_t', '_MV_CAM_GAMMA_SELECTOR_', 'MV_ACQ_MODE_MUTLI',
+           'MV_CC_ISP_CONFIG_PARAM','_MV_CC_ISP_CONFIG_PARAM_T_',
+           'MV_USB3_DEVICE_INFO', '_MV_EVENT_OUT_INFO_', 'MV_CC_FRAME_SPEC_INFO', 'MV_CC_HB_DECODE_PARAM','_MV_CC_HB_DECODE_PARAM_T_',
+           'MV_SORT_METHOD', '_MV_SORT_METHOD_',
+           'SortMethod_SerialNumber', 'SortMethod_UserID', 'SortMethod_CurrentIP_ASC', 'SortMethod_CurrentIP_DESC',
+           '_MV_IMG_ROTATION_ANGLE_', 'MV_IMG_ROTATION_ANGLE',
+           'MV_IMAGE_ROTATE_90', 'MV_IMAGE_ROTATE_180', 'MV_IMAGE_ROTATE_270',
+           '_MV_IMG_FLIP_TYPE_', 'MV_IMG_FLIP_TYPE', 'MV_FLIP_VERTICAL', 'MV_FLIP_HORIZONTAL',
+           '_MV_CC_GAMMA_TYPE_', 'MV_CC_GAMMA_TYPE', 'MV_CC_GAMMA_TYPE_NONE', 'MV_CC_GAMMA_TYPE_VALUE',
+           'MV_CC_GAMMA_TYPE_USER_CURVE', 'MV_CC_GAMMA_TYPE_LRGB2SRGB', 'MV_CC_GAMMA_TYPE_SRGB2LRGB',
+           'MV_CC_STREAM_EXCEPTION_TYPE', '_MV_CC_STREAM_EXCEPTION_TYPE_',
+           'MV_CC_STREAM_EXCEPTION_ABNORMAL_IMAGE', 'MV_CC_STREAM_EXCEPTION_LIST_OVERFLOW',
+           'MV_CC_STREAM_EXCEPTION_LIST_EMPTY', 'MV_CC_STREAM_EXCEPTION_RECONNECTION',
+           'MV_CC_STREAM_EXCEPTION_DISCONNECTED', 'MV_CC_STREAM_EXCEPTION_DEVICE', 
+           'MV_CC_STREAM_EXCEPTION_PARTIAL_IMAGE', 'MV_CC_STREAM_EXCEPTION_IMAGE_BUFFER_OVERFLOW', 
+           '_MV_IMAGE_RECONSTRUCTION_METHOD_', 'MV_IMAGE_RECONSTRUCTION_METHOD', 'MV_SPLIT_BY_LINE',
+           'MVCC_COLORF', '_MVCC_COLORF', '_MVCC_POINTF', 'MVCC_POINTF', '_MVCC_RECT_INFO', 'MVCC_RECT_INFO',
+           '_MVCC_CIRCLE_INFO', 'MVCC_CIRCLE_INFO', '_MVCC_LINES_INFO', 'MVCC_LINES_INFO', '_MV_OUTPUT_IMAGE_INFO_',
+           'MV_OUTPUT_IMAGE_INFO', 'MV_RECONSTRUCT_IMAGE_PARAM', '_MV_RECONSTRUCT_IMAGE_PARAM_',
+           '_MVCC_ENUMENTRY_T', 'MVCC_ENUMENTRY','_MV_CC_CONTRAST_PARAM_T_', 'MV_CC_CONTRAST_PARAM',
+           '_MV_CC_CCM_PARAM_EX_T_', 'MV_CC_CCM_PARAM_EX', 'MV_CC_CCM_PARAM', '_MV_CC_CCM_PARAM_T_',
+           'MV_CC_GAMMA_PARAM', '_MV_CC_GAMMA_PARAM_T_', 'MV_CC_FLIP_IMAGE_PARAM', '_MV_CC_FLIP_IMAGE_PARAM_T_',
+           '_MV_CC_ROTATE_IMAGE_PARAM_T_', 'MV_CC_ROTATE_IMAGE_PARAM', 'MV_CC_FILE_ACCESS_EX', '_MV_CC_FILE_ACCESS_E',
+           '_MV_DISPLAY_FRAME_INFO_EX_', 'MV_DISPLAY_FRAME_INFO_EX', 'MV_CML_DEVICE_INFO', '_MV_CML_DEVICE_INFO_',
+           'MV_CXP_DEVICE_INFO', '_MV_CXP_DEVICE_INFO_', '_MV_XOF_DEVICE_INFO_', 'MV_XOF_DEVICE_INFO',
+           '_MV_INTERFACE_INFO_LIST_', 'MV_INTERFACE_INFO_LIST', '_MV_INTERFACE_INFO_', 'MV_INTERFACE_INFO',
+           '_MV_CAML_SERIAL_PORT_LIST_', 'MV_CAML_SERIAL_PORT_LIST', '_MV_CAML_SERIAL_PORT_', 'MV_CAML_SERIAL_PORT',
+           'MVCC_NODE_ERR_NODE_INVALID','MVCC_NODE_ERR_ACCESS','MVCC_NODE_ERR_OUT_RANGE','MVCC_NODE_ERR_VERIFY_FAILD','MVCC_NODE_ERR_OTHER',
+           '_MV_GENTL_VIR_DEVICE_INFO_','MV_GENTL_VIR_DEVICE_INFO', 
+           '_MV_CC_IMAGE_','MV_CC_IMAGE',
+           '_MV_CC_SAVE_IMAGE_PARAM_','MV_CC_SAVE_IMAGE_PARAM',
+           '_MV_CC_PURPLE_FRINGING_PARAM_T_','MV_CC_PURPLE_FRINGING_PARAM',
+           '_MVCC_NODE_NAME_T', 'MVCC_NODE_NAME',
+           '_MVCC_NODE_NAME_LIST_T','MVCC_NODE_NAME_LIST',
+           '_MVCC_NODE_ERROR_T', 'MVCC_NODE_ERROR', 
+           '_MVCC_NODE_ERROR_LIST_T','MVCC_NODE_ERROR_LIST', 
+           '_MVCC_ENUMVALUE_EX_T', 'MVCC_ENUMVALUE_EX',
+            '_MV_FRAME_EXTRA_INFO_TYPE_', 'MV_FRAME_EXTRA_INFO_TYPE',
+            '_MV_GIGE_ZONE_DIRECTION_', 'MV_GIGE_ZONE_DIRECTION',
+            '_MV_GIGE_ZONE_INFO_', 'MV_GIGE_ZONE_INFO',
+            'N19_MV_GIGE_ZONE_INFO_3DOT_1E', 
+            'N30_MV_GIGE_MULRI_PART_DATA_INFO_3DOT_2E',
+            'N30_MV_GIGE_MULRI_PART_DATA_INFO_3DOT_3E',
+            'MV_GIGE_PART_DATA_INFO', 
+            '_MV_GIGE_MULTI_PART_DATA_TYPE_', 'MV_GIGE_MULTI_PART_DATA_TYPE',
+            '_MV_GIGE_MULTI_PART_INFO_', 'MV_GIGE_MULTI_PART_INFO',
+           '_MV_CC_STREAM_EXCEPTION_INFO_T_','MV_CC_STREAM_EXCEPTION_INFO']

--
Gitblit v1.9.1