SR7LinkEnum.cs 8.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6. namespace SR7Link
  7. {
  8. #region public enum
  9. /// <summary>
  10. /// 接口函数返回值 / Interface function return value
  11. /// </summary>
  12. public enum SR7IF_ERROR
  13. {
  14. SR7IF_ERROR_NOT_FOUND = (-999), // Item is not found.
  15. SR7IF_ERROR_COMMAND = (-998), // Command not recognized.
  16. SR7IF_ERROR_PARAMETER = (-997), // Parameter is invalid.
  17. SR7IF_ERROR_UNIMPLEMENTED = (-996), // Feature not implemented.
  18. SR7IF_ERROR_HANDLE = (-995), // Handle is invalid.
  19. SR7IF_ERROR_MEMORY = (-994), // Out of memory.
  20. SR7IF_ERROR_TIMEOUT = (-993), // Action timed out.
  21. SR7IF_ERROR_DATABUFFER = (-992), // Buffer not large enough for data.
  22. SR7IF_ERROR_STREAM = (-991), // Error in stream.
  23. SR7IF_ERROR_CLOSED = (-990), // Resource is no longer avaiable.
  24. SR7IF_ERROR_VERSION = (-989), // Invalid version number.
  25. SR7IF_ERROR_ABORT = (-988), // Operation aborted.
  26. SR7IF_ERROR_ALREADY_EXISTS = (-987), // Conflicts with existing item.
  27. SR7IF_ERROR_FRAME_LOSS = (-986), // Loss of frame.
  28. SR7IF_ERROR_ROLL_DATA_OVERFLOW = (-985), // Continue mode Data overflow.
  29. SR7IF_ERROR_ROLL_BUSY = (-984), // Read Busy.
  30. SR7IF_ERROR_MODE = (-983), // Err mode.
  31. SR7IF_ERROR_CAMERA_NOT_ONLINE = (-982), // Camera not online.
  32. SR7IF_ERROR = (-1), // General error.
  33. SR7IF_OK = (0), // Operation successful.
  34. SR7IF_NORMAL_STOP = (-100) //A normal stop caused by external IO or other causes
  35. }
  36. // SetSetting GetSetting
  37. public enum SAVEPOWEROFF
  38. {
  39. ESAPO_NOSAVE = 1, // 1 掉电不保存 / No save after power off
  40. ESAPO_SAVE // 2 掉电保存 / Save after power off
  41. };
  42. public enum SR7IF_SETTING_ITEM
  43. {
  44. TRIG_MODE = 1, // 触发模式 / Trigger mode
  45. SAMPLED_CYCLE, // 采样周期 / Sampling cycle
  46. BATCH_ON_OFF, // 批处理开关 / Batch processing switch
  47. ENCODER_TYPE, // 编码器类型 / Encoder type
  48. ENCODER_INPUTMODE,// 编码器输入模式 / Encoder input mode
  49. REFINING_POINTS, // 细化点数 / Refining points
  50. BATCH_POINT, // 批处理点数 / Batch processing points
  51. CYCLICAL_PATTERN, // 循环模式 0 关闭 1 打开 / Cyclical pattern (0: Off, 1: On)
  52. SEGMENT_BUFER, // 分段存储 0 关闭 1 打开 / Segmented buffer (0: Off, 1: On)
  53. BATCH_OUTPUT, // 批处理输出 / Batch processing output
  54. Z_MEASURING_RANGE,// Z 方向测量范围 / Z-axis measuring range
  55. SENSITIVITY, // 感光灵敏度 / Sensitivity
  56. EXP_TIME, // 曝光时间 / Exposure time
  57. LIGHT_CONTROL, // 光亮控制 / Light control
  58. LIGHT_MAX, // 激光亮度上限 / Laser brightness upper limit
  59. LIGHT_MIN, // 激光亮度下限 / Laser brightness lower limit
  60. PEAK_SENSITIVITY, // 峰值灵敏度 / Peak sensitivity
  61. PEAK_SELECT, // 峰值选择 / Peak selection
  62. X_SAMPLING, // X 轴压缩设定 / X-axis compression setting
  63. FILTER_X_MEDIAN, // X 轴中位数滤波 / X-axis median filter
  64. FILTER_X_SMOOTH, // X 轴平滑滤波 / X-axis smooth filter
  65. FILTER_Y_MEDIAN, // Y 轴(时间轴)中位数滤波 / Y-axis (time axis) median filter
  66. FILTER_Y_SMOOTH, // Y 轴平滑滤波(平均滤波) / Y-axis smooth filter (mean filter)
  67. CHANGE_3D_25D, // 3D/2.5D 切换 2.5 模式下 X 轴压缩设定为自动变更默认值 / 3D/2.5D switch (In 2.5D mode, X-axis compression setting changes to default automatically)
  68. X_PIXEL, // X 数据宽度(单位像素) / X data width (unit: pixels)
  69. X_PITCH // X Resolution / X-axis resolution
  70. };
  71. // 触发模式 / Trigger mode
  72. public enum SR7IF_TRIG_MODE
  73. {
  74. TM_CONTINUE = 0, // Continuous trigger
  75. EXT_TRIGGER, // External trigger
  76. ENCODER, // Encoder trigger
  77. };
  78. // 采集周期 / Sampling cycle
  79. // 100 200 400 600 1000 1500 2000 2500
  80. // 批处理开关 / Batch processing switch
  81. public enum SR7IF_BATCH_ON_OFF
  82. {
  83. OFF = 0, // Off
  84. ON // On
  85. };
  86. // 编码器类型 / Encoder type
  87. public enum SR7IF_ENCODER_TYPE
  88. {
  89. E_1_1 = 0, // 0:1 相 1 递增 / 1 phase, 1 increment
  90. E_2_1, // 1:2 相 1 递增 / 2 phase, 1 increment
  91. E_2_2, // 2:2 相 2 递增 / 2 phase, 2 increments
  92. E_2_4 // 3:2 相 4 递增 / 2 phase, 4 increments
  93. };
  94. // 细化点数 1 --
  95. // 批处理点数 1 --
  96. // 循环模式 0 关闭 1 打开 / Cyclical pattern (0: Off, 1: On)
  97. public enum SR7IF_CYCLICAL_PATTERN
  98. {
  99. CLOSE = 0, // Off
  100. OPEN // On
  101. };
  102. // Z 方向测量范围 注:只支持 SR8020/SR8060 / Z-axis measuring range (Note: Only supports SR8020/SR8060)
  103. public enum SR7IF_Z_MEASURING_RANGE
  104. {
  105. Z840 = 0,
  106. Z768,
  107. Z512,
  108. Z384,
  109. Z256,
  110. Z192,
  111. Z128,
  112. Z96,
  113. Z64,
  114. Z48,
  115. Z32
  116. };
  117. // 感光灵敏度 / Sensitivity
  118. public enum SR7IF_SENSITIVITY
  119. {
  120. HIGH = 0, // High
  121. HIGH_RANGE_1, // High range 1
  122. HIGH_RANGE_2, // High range 2
  123. HIGH_RANGE_3, // High range 3
  124. HIGH_RANGE_4, // High range 4
  125. CUSTOMIZATION // Custom
  126. };
  127. // 曝光时间 / Exposure time
  128. public enum SR7IF_EXP_TIME
  129. {
  130. T10US = 0, // 10µs
  131. T15US, // 15µs
  132. T30US, // 30µs
  133. T60US, // 60µs
  134. T120US, // 120µs
  135. T240US, // 240µs
  136. T480US, // 480µs
  137. T960US, // 960µs
  138. T1920US, // 1920µs
  139. T2400US, // 2400µs
  140. T4900US, // 4900µs
  141. T9800US // 9800µs
  142. };
  143. // 光亮控制 / Light control
  144. public enum SR7IF_LIGHT_CONTROL
  145. {
  146. AUTO = 0, // Auto
  147. MAN // Manual
  148. };
  149. // 激光亮度上限 0-99 / Laser brightness upper limit 0-99
  150. // 激光亮度下限 0-99 / Laser brightness lower limit 0-99
  151. // 峰值灵敏度 / Peak sensitivity
  152. public enum SR7IF_PEAK_SENSITIVITY
  153. {
  154. N_1 = 1,
  155. N_2,
  156. N_3,
  157. N_4,
  158. N_5
  159. };
  160. // 峰值选择 / Peak selection
  161. public enum SR7IF_PEAK_SELECT
  162. {
  163. PS_STANDARD = 0, // Standard
  164. PS_SRNEAR, // SR Near
  165. PS_SRFAR, // SR Far
  166. PS_BE_NULL, // Be Null
  167. PS_CONTINUE, // Continue
  168. PS_GLUE // Glue
  169. };
  170. // X 轴压缩设定 注:2.5D 模式下不能设置 / X-axis compression setting (Note: Not configurable in 2.5D mode)
  171. public enum SR7IF_X_SAMPLING
  172. {
  173. XS_OFF = 1, // Off
  174. XS_X2 = 2, // X2
  175. XS_X4 = 4, // X4
  176. XS_X8 = 8, // X8
  177. XS_X16 = 16 // X16
  178. };
  179. // X 轴中位数滤波 / X-axis median filter
  180. public enum SR7IF_FILTER_X_MEDIAN
  181. {
  182. XM_OFF = 1,
  183. XM_N3 = 3,
  184. XM_N5 = 5,
  185. XM_N7 = 7,
  186. XM_N9 = 9
  187. };
  188. // Y 轴中位数滤波 / Y-axis median filter
  189. public enum SR7IF_FILTER_Y_MEDIAN
  190. {
  191. YM_OFF = 1,
  192. YM_N3 = 3,
  193. YM_N5 = 5,
  194. YM_N7 = 7,
  195. YM_N9 = 9
  196. };
  197. // X 轴平滑滤波 / X-axis smooth filter
  198. public enum SR7IF_FILTER_X_SMOOTH
  199. {
  200. N1 = 1,
  201. N2 = 2,
  202. N4 = 4,
  203. N8 = 8,
  204. N16 = 16,
  205. N32 = 32,
  206. N64 = 64
  207. };
  208. // Y 轴平滑滤波 / Y-axis smooth filter
  209. public enum SR7IF_FILTER_Y_SMOOTH
  210. {
  211. YS_N1 = 1,
  212. YS_N2 = 2,
  213. YS_N4 = 4,
  214. YS_N8 = 8,
  215. YS_N16 = 16,
  216. YS_N32 = 32,
  217. YS_N64 = 64,
  218. YS_N128 = 128,
  219. YS_N256 = 256
  220. };
  221. // 3D/2.5D 切换 / 3D/2.5D switch
  222. public enum SR7IF_CHANGE_3D_25D
  223. {
  224. T3D = 0, // 3D mode
  225. T25D = 1 // 2.5D mode
  226. };
  227. #endregion
  228. }