@zaber/motion 8.4.0 → 9.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (610) hide show
  1. package/LICENSE +423 -80
  2. package/dist/binding/wasm/zaber-motion-core.wasm +0 -0
  3. package/dist/lib/ascii/all_axes.d.ts.map +1 -1
  4. package/dist/lib/ascii/all_axes.js.map +1 -1
  5. package/dist/lib/ascii/axis.d.ts +9 -9
  6. package/dist/lib/ascii/axis.d.ts.map +1 -1
  7. package/dist/lib/ascii/axis.js +6 -6
  8. package/dist/lib/ascii/axis.js.map +1 -1
  9. package/dist/lib/ascii/axis_group.d.ts +1 -1
  10. package/dist/lib/ascii/axis_group.d.ts.map +1 -1
  11. package/dist/lib/ascii/axis_group.js.map +1 -1
  12. package/dist/lib/ascii/axis_settings.d.ts +3 -3
  13. package/dist/lib/ascii/axis_settings.d.ts.map +1 -1
  14. package/dist/lib/ascii/axis_settings.js +2 -2
  15. package/dist/lib/ascii/axis_settings.js.map +1 -1
  16. package/dist/lib/ascii/axis_storage.d.ts +94 -0
  17. package/dist/lib/ascii/axis_storage.d.ts.map +1 -0
  18. package/dist/lib/ascii/{storage.js → axis_storage.js} +2 -185
  19. package/dist/lib/ascii/axis_storage.js.map +1 -0
  20. package/dist/lib/ascii/can_set_state_device_response.js +1 -1
  21. package/dist/lib/ascii/can_set_state_device_response.js.map +1 -1
  22. package/dist/lib/ascii/connection.d.ts +9 -9
  23. package/dist/lib/ascii/connection.d.ts.map +1 -1
  24. package/dist/lib/ascii/connection.js +7 -7
  25. package/dist/lib/ascii/connection.js.map +1 -1
  26. package/dist/lib/ascii/device.d.ts +13 -13
  27. package/dist/lib/ascii/device.d.ts.map +1 -1
  28. package/dist/lib/ascii/device.js +12 -12
  29. package/dist/lib/ascii/device.js.map +1 -1
  30. package/dist/lib/ascii/device_io.d.ts +2 -2
  31. package/dist/lib/ascii/device_io.d.ts.map +1 -1
  32. package/dist/lib/ascii/device_io.js.map +1 -1
  33. package/dist/lib/ascii/device_settings.d.ts +2 -2
  34. package/dist/lib/ascii/device_settings.d.ts.map +1 -1
  35. package/dist/lib/ascii/device_settings.js +2 -2
  36. package/dist/lib/ascii/device_settings.js.map +1 -1
  37. package/dist/lib/ascii/{storage.d.ts → device_storage.d.ts} +1 -93
  38. package/dist/lib/ascii/device_storage.d.ts.map +1 -0
  39. package/dist/lib/ascii/device_storage.js +214 -0
  40. package/dist/lib/ascii/device_storage.js.map +1 -0
  41. package/dist/lib/ascii/get_setting.js +1 -1
  42. package/dist/lib/ascii/get_setting.js.map +1 -1
  43. package/dist/lib/ascii/get_setting_result.js +1 -1
  44. package/dist/lib/ascii/get_setting_result.js.map +1 -1
  45. package/dist/lib/ascii/index.d.ts +14 -3
  46. package/dist/lib/ascii/index.d.ts.map +1 -1
  47. package/dist/lib/ascii/index.js +14 -3
  48. package/dist/lib/ascii/index.js.map +1 -1
  49. package/dist/lib/ascii/lockstep.d.ts +1 -1
  50. package/dist/lib/ascii/lockstep.d.ts.map +1 -1
  51. package/dist/lib/ascii/lockstep.js +1 -1
  52. package/dist/lib/ascii/lockstep.js.map +1 -1
  53. package/dist/lib/ascii/measurement_sequence.js +1 -1
  54. package/dist/lib/ascii/measurement_sequence.js.map +1 -1
  55. package/dist/lib/ascii/mock_device.js +1 -1
  56. package/dist/lib/ascii/mock_device.js.map +1 -1
  57. package/dist/lib/ascii/oscilloscope.d.ts +1 -1
  58. package/dist/lib/ascii/oscilloscope.d.ts.map +1 -1
  59. package/dist/lib/ascii/oscilloscope.js +2 -2
  60. package/dist/lib/ascii/oscilloscope.js.map +1 -1
  61. package/dist/lib/ascii/oscilloscope_data.d.ts.map +1 -1
  62. package/dist/lib/ascii/oscilloscope_data.js +2 -2
  63. package/dist/lib/ascii/oscilloscope_data.js.map +1 -1
  64. package/dist/lib/ascii/paramset_info.js +1 -1
  65. package/dist/lib/ascii/paramset_info.js.map +1 -1
  66. package/dist/lib/ascii/pvt.d.ts +5 -5
  67. package/dist/lib/ascii/pvt.d.ts.map +1 -1
  68. package/dist/lib/ascii/pvt.js +7 -7
  69. package/dist/lib/ascii/pvt.js.map +1 -1
  70. package/dist/lib/ascii/pvt_buffer.d.ts +6 -6
  71. package/dist/lib/ascii/pvt_buffer.d.ts.map +1 -1
  72. package/dist/lib/ascii/pvt_buffer.js +10 -11
  73. package/dist/lib/ascii/pvt_buffer.js.map +1 -1
  74. package/dist/lib/ascii/pvt_call_action.d.ts +19 -0
  75. package/dist/lib/ascii/pvt_call_action.d.ts.map +1 -0
  76. package/dist/lib/ascii/pvt_call_action.js +34 -0
  77. package/dist/lib/ascii/pvt_call_action.js.map +1 -0
  78. package/dist/lib/ascii/pvt_cancel_all_outputs_schedule_action.d.ts +24 -0
  79. package/dist/lib/ascii/pvt_cancel_all_outputs_schedule_action.d.ts.map +1 -0
  80. package/dist/lib/ascii/pvt_cancel_all_outputs_schedule_action.js +39 -0
  81. package/dist/lib/ascii/pvt_cancel_all_outputs_schedule_action.js.map +1 -0
  82. package/dist/lib/ascii/pvt_cancel_output_schedule_action.d.ts +24 -0
  83. package/dist/lib/ascii/pvt_cancel_output_schedule_action.d.ts.map +1 -0
  84. package/dist/lib/ascii/pvt_cancel_output_schedule_action.js +39 -0
  85. package/dist/lib/ascii/pvt_cancel_output_schedule_action.js.map +1 -0
  86. package/dist/lib/ascii/pvt_csv_data.d.ts +3 -3
  87. package/dist/lib/ascii/pvt_csv_data.d.ts.map +1 -1
  88. package/dist/lib/ascii/pvt_csv_data.js +13 -7
  89. package/dist/lib/ascii/pvt_csv_data.js.map +1 -1
  90. package/dist/lib/ascii/pvt_io.d.ts +1 -1
  91. package/dist/lib/ascii/pvt_io.d.ts.map +1 -1
  92. package/dist/lib/ascii/pvt_io.js +1 -1
  93. package/dist/lib/ascii/pvt_io.js.map +1 -1
  94. package/dist/lib/ascii/pvt_partial_csv_data.d.ts +25 -0
  95. package/dist/lib/ascii/pvt_partial_csv_data.d.ts.map +1 -0
  96. package/dist/lib/ascii/pvt_partial_csv_data.js +45 -0
  97. package/dist/lib/ascii/pvt_partial_csv_data.js.map +1 -0
  98. package/dist/lib/ascii/pvt_partial_point.d.ts +35 -0
  99. package/dist/lib/ascii/pvt_partial_point.d.ts.map +1 -0
  100. package/dist/lib/ascii/pvt_partial_point.js +47 -0
  101. package/dist/lib/ascii/pvt_partial_point.js.map +1 -0
  102. package/dist/lib/ascii/pvt_partial_sequence_item.d.ts +28 -0
  103. package/dist/lib/ascii/pvt_partial_sequence_item.d.ts.map +1 -0
  104. package/dist/lib/ascii/pvt_partial_sequence_item.js +127 -0
  105. package/dist/lib/ascii/pvt_partial_sequence_item.js.map +1 -0
  106. package/dist/lib/ascii/pvt_point.d.ts +33 -0
  107. package/dist/lib/ascii/pvt_point.d.ts.map +1 -0
  108. package/dist/lib/ascii/pvt_point.js +47 -0
  109. package/dist/lib/ascii/pvt_point.js.map +1 -0
  110. package/dist/lib/ascii/pvt_sequence.d.ts +196 -42
  111. package/dist/lib/ascii/pvt_sequence.d.ts.map +1 -1
  112. package/dist/lib/ascii/pvt_sequence.js +255 -53
  113. package/dist/lib/ascii/pvt_sequence.js.map +1 -1
  114. package/dist/lib/ascii/pvt_sequence_item.d.ts +28 -0
  115. package/dist/lib/ascii/pvt_sequence_item.d.ts.map +1 -0
  116. package/dist/lib/ascii/pvt_sequence_item.js +127 -0
  117. package/dist/lib/ascii/pvt_sequence_item.js.map +1 -0
  118. package/dist/lib/ascii/pvt_set_all_analog_outputs_action.d.ts +29 -0
  119. package/dist/lib/ascii/pvt_set_all_analog_outputs_action.d.ts.map +1 -0
  120. package/dist/lib/ascii/pvt_set_all_analog_outputs_action.js +42 -0
  121. package/dist/lib/ascii/pvt_set_all_analog_outputs_action.js.map +1 -0
  122. package/dist/lib/ascii/pvt_set_all_digital_outputs_action.d.ts +30 -0
  123. package/dist/lib/ascii/pvt_set_all_digital_outputs_action.d.ts.map +1 -0
  124. package/dist/lib/ascii/pvt_set_all_digital_outputs_action.js +44 -0
  125. package/dist/lib/ascii/pvt_set_all_digital_outputs_action.js.map +1 -0
  126. package/dist/lib/ascii/pvt_set_analog_output_action.d.ts +32 -0
  127. package/dist/lib/ascii/pvt_set_analog_output_action.d.ts.map +1 -0
  128. package/dist/lib/ascii/pvt_set_analog_output_action.js +47 -0
  129. package/dist/lib/ascii/pvt_set_analog_output_action.js.map +1 -0
  130. package/dist/lib/ascii/pvt_set_digital_output_action.d.ts +33 -0
  131. package/dist/lib/ascii/pvt_set_digital_output_action.d.ts.map +1 -0
  132. package/dist/lib/ascii/pvt_set_digital_output_action.js +48 -0
  133. package/dist/lib/ascii/pvt_set_digital_output_action.js.map +1 -0
  134. package/dist/lib/ascii/servo_tuner.d.ts +4 -4
  135. package/dist/lib/ascii/servo_tuner.d.ts.map +1 -1
  136. package/dist/lib/ascii/servo_tuner.js +1 -1
  137. package/dist/lib/ascii/servo_tuner.js.map +1 -1
  138. package/dist/lib/ascii/set_state_axis_response.js +1 -1
  139. package/dist/lib/ascii/set_state_axis_response.js.map +1 -1
  140. package/dist/lib/ascii/set_state_device_response.js +2 -2
  141. package/dist/lib/ascii/set_state_device_response.js.map +1 -1
  142. package/dist/lib/ascii/simple_tuning.js +1 -1
  143. package/dist/lib/ascii/simple_tuning.js.map +1 -1
  144. package/dist/lib/ascii/stream.d.ts +6 -6
  145. package/dist/lib/ascii/stream.d.ts.map +1 -1
  146. package/dist/lib/ascii/stream.js +6 -6
  147. package/dist/lib/ascii/stream.js.map +1 -1
  148. package/dist/lib/ascii/stream_buffer.d.ts +3 -3
  149. package/dist/lib/ascii/stream_buffer.d.ts.map +1 -1
  150. package/dist/lib/ascii/stream_buffer.js +6 -6
  151. package/dist/lib/ascii/stream_buffer.js.map +1 -1
  152. package/dist/lib/ascii/stream_io.d.ts +1 -1
  153. package/dist/lib/ascii/stream_io.d.ts.map +1 -1
  154. package/dist/lib/ascii/stream_io.js +1 -1
  155. package/dist/lib/ascii/stream_io.js.map +1 -1
  156. package/dist/lib/ascii/streams.d.ts +4 -4
  157. package/dist/lib/ascii/streams.d.ts.map +1 -1
  158. package/dist/lib/ascii/streams.js +6 -6
  159. package/dist/lib/ascii/streams.js.map +1 -1
  160. package/dist/lib/ascii/transport.d.ts +4 -4
  161. package/dist/lib/ascii/transport.d.ts.map +1 -1
  162. package/dist/lib/ascii/transport.js +5 -5
  163. package/dist/lib/ascii/transport.js.map +1 -1
  164. package/dist/lib/ascii/trigger.d.ts +3 -3
  165. package/dist/lib/ascii/trigger.d.ts.map +1 -1
  166. package/dist/lib/ascii/trigger.js +2 -2
  167. package/dist/lib/ascii/trigger.js.map +1 -1
  168. package/dist/lib/ascii/trigger_state.js +1 -1
  169. package/dist/lib/ascii/trigger_state.js.map +1 -1
  170. package/dist/lib/ascii/triggers.d.ts +1 -1
  171. package/dist/lib/ascii/triggers.d.ts.map +1 -1
  172. package/dist/lib/ascii/triggers.js.map +1 -1
  173. package/dist/lib/ascii/warnings.d.ts.map +1 -1
  174. package/dist/lib/ascii/warnings.js.map +1 -1
  175. package/dist/lib/binary/connection.d.ts +9 -9
  176. package/dist/lib/binary/connection.d.ts.map +1 -1
  177. package/dist/lib/binary/connection.js +7 -7
  178. package/dist/lib/binary/connection.js.map +1 -1
  179. package/dist/lib/binary/device.d.ts +4 -4
  180. package/dist/lib/binary/device.d.ts.map +1 -1
  181. package/dist/lib/binary/device.js +3 -3
  182. package/dist/lib/binary/device.js.map +1 -1
  183. package/dist/lib/binary/device_settings.d.ts +2 -2
  184. package/dist/lib/binary/device_settings.d.ts.map +1 -1
  185. package/dist/lib/binary/device_settings.js +1 -1
  186. package/dist/lib/binary/device_settings.js.map +1 -1
  187. package/dist/lib/exceptions/device_address_conflict_exception_data.js +1 -1
  188. package/dist/lib/exceptions/device_address_conflict_exception_data.js.map +1 -1
  189. package/dist/lib/exceptions/device_db_failed_exception_data.js +1 -1
  190. package/dist/lib/exceptions/device_db_failed_exception_data.js.map +1 -1
  191. package/dist/lib/exceptions/device_db_inner_error.js +1 -1
  192. package/dist/lib/exceptions/device_db_inner_error.js.map +1 -1
  193. package/dist/lib/exceptions/ge_1_gripper_movement_failed_exception.d.ts +8 -0
  194. package/dist/lib/exceptions/ge_1_gripper_movement_failed_exception.d.ts.map +1 -0
  195. package/dist/lib/exceptions/ge_1_gripper_movement_failed_exception.js +17 -0
  196. package/dist/lib/exceptions/ge_1_gripper_movement_failed_exception.js.map +1 -0
  197. package/dist/lib/exceptions/index.d.ts +1 -1
  198. package/dist/lib/exceptions/index.d.ts.map +1 -1
  199. package/dist/lib/exceptions/index.js +1 -1
  200. package/dist/lib/exceptions/index.js.map +1 -1
  201. package/dist/lib/exceptions/movement_failed_exception_data.js +1 -1
  202. package/dist/lib/exceptions/movement_failed_exception_data.js.map +1 -1
  203. package/dist/lib/exceptions/movement_interrupted_exception_data.js +1 -1
  204. package/dist/lib/exceptions/movement_interrupted_exception_data.js.map +1 -1
  205. package/dist/lib/exceptions/operation_failed_exception_data.js +1 -1
  206. package/dist/lib/exceptions/operation_failed_exception_data.js.map +1 -1
  207. package/dist/lib/exceptions/pvt_execution_exception_data.js +1 -1
  208. package/dist/lib/exceptions/pvt_execution_exception_data.js.map +1 -1
  209. package/dist/lib/exceptions/pvt_movement_failed_exception_data.js +1 -1
  210. package/dist/lib/exceptions/pvt_movement_failed_exception_data.js.map +1 -1
  211. package/dist/lib/exceptions/pvt_movement_interrupted_exception_data.js +1 -1
  212. package/dist/lib/exceptions/pvt_movement_interrupted_exception_data.js.map +1 -1
  213. package/dist/lib/exceptions/set_device_state_exception_data.js +7 -7
  214. package/dist/lib/exceptions/set_device_state_exception_data.js.map +1 -1
  215. package/dist/lib/exceptions/set_peripheral_state_exception_data.js +3 -3
  216. package/dist/lib/exceptions/set_peripheral_state_exception_data.js.map +1 -1
  217. package/dist/lib/exceptions/stream_movement_failed_exception_data.js +1 -1
  218. package/dist/lib/exceptions/stream_movement_failed_exception_data.js.map +1 -1
  219. package/dist/lib/exceptions/stream_movement_interrupted_exception_data.js +1 -1
  220. package/dist/lib/exceptions/stream_movement_interrupted_exception_data.js.map +1 -1
  221. package/dist/lib/gateway/call.d.ts.map +1 -1
  222. package/dist/lib/gateway/call.js +12 -0
  223. package/dist/lib/gateway/call.js.map +1 -1
  224. package/dist/lib/gateway/constants.d.ts +4 -0
  225. package/dist/lib/gateway/constants.d.ts.map +1 -0
  226. package/dist/lib/gateway/constants.js +8 -0
  227. package/dist/lib/gateway/constants.js.map +1 -0
  228. package/dist/lib/gateway/convert_exceptions.js +1 -1
  229. package/dist/lib/gateway/convert_exceptions.js.map +1 -1
  230. package/dist/lib/gateway/index.d.ts +1 -0
  231. package/dist/lib/gateway/index.d.ts.map +1 -1
  232. package/dist/lib/gateway/index.js +3 -1
  233. package/dist/lib/gateway/index.js.map +1 -1
  234. package/dist/lib/gateway/wasm-exec.d.ts +1 -1
  235. package/dist/lib/gateway/wasm-exec.d.ts.map +1 -1
  236. package/dist/lib/gateway/wasm-exec.js +74 -62
  237. package/dist/lib/gateway/wasm-exec.js.map +1 -1
  238. package/dist/lib/gcode/device_definition.js +1 -1
  239. package/dist/lib/gcode/device_definition.js.map +1 -1
  240. package/dist/lib/gcode/offline_translator.d.ts +4 -4
  241. package/dist/lib/gcode/offline_translator.d.ts.map +1 -1
  242. package/dist/lib/gcode/offline_translator.js +2 -2
  243. package/dist/lib/gcode/offline_translator.js.map +1 -1
  244. package/dist/lib/gcode/translate_result.js +2 -2
  245. package/dist/lib/gcode/translate_result.js.map +1 -1
  246. package/dist/lib/gcode/translator.d.ts +2 -2
  247. package/dist/lib/gcode/translator.d.ts.map +1 -1
  248. package/dist/lib/gcode/translator.js +1 -1
  249. package/dist/lib/gcode/translator.js.map +1 -1
  250. package/dist/lib/gcode/translator_config.js +2 -2
  251. package/dist/lib/gcode/translator_config.js.map +1 -1
  252. package/dist/lib/library.d.ts +6 -2
  253. package/dist/lib/library.d.ts.map +1 -1
  254. package/dist/lib/library.js +6 -2
  255. package/dist/lib/library.js.map +1 -1
  256. package/dist/lib/microscopy/autofocus.d.ts +2 -2
  257. package/dist/lib/microscopy/autofocus.d.ts.map +1 -1
  258. package/dist/lib/microscopy/autofocus.js.map +1 -1
  259. package/dist/lib/microscopy/camera_trigger.d.ts +1 -1
  260. package/dist/lib/microscopy/camera_trigger.d.ts.map +1 -1
  261. package/dist/lib/microscopy/camera_trigger.js.map +1 -1
  262. package/dist/lib/microscopy/filter_changer.d.ts.map +1 -1
  263. package/dist/lib/microscopy/filter_changer.js.map +1 -1
  264. package/dist/lib/microscopy/illuminator.d.ts +1 -1
  265. package/dist/lib/microscopy/illuminator.d.ts.map +1 -1
  266. package/dist/lib/microscopy/illuminator.js +2 -2
  267. package/dist/lib/microscopy/illuminator.js.map +1 -1
  268. package/dist/lib/microscopy/illuminator_channel.d.ts +4 -4
  269. package/dist/lib/microscopy/illuminator_channel.d.ts.map +1 -1
  270. package/dist/lib/microscopy/illuminator_channel.js +6 -6
  271. package/dist/lib/microscopy/illuminator_channel.js.map +1 -1
  272. package/dist/lib/microscopy/microscope.d.ts +4 -4
  273. package/dist/lib/microscopy/microscope.d.ts.map +1 -1
  274. package/dist/lib/microscopy/microscope.js +6 -6
  275. package/dist/lib/microscopy/microscope.js.map +1 -1
  276. package/dist/lib/microscopy/objective_changer.d.ts +1 -1
  277. package/dist/lib/microscopy/objective_changer.d.ts.map +1 -1
  278. package/dist/lib/microscopy/objective_changer.js.map +1 -1
  279. package/dist/lib/microscopy/wdi_autofocus_provider.d.ts +4 -4
  280. package/dist/lib/microscopy/wdi_autofocus_provider.d.ts.map +1 -1
  281. package/dist/lib/microscopy/wdi_autofocus_provider.js +6 -6
  282. package/dist/lib/microscopy/wdi_autofocus_provider.js.map +1 -1
  283. package/dist/lib/product/ge_1_gripper.d.ts +273 -0
  284. package/dist/lib/product/ge_1_gripper.d.ts.map +1 -0
  285. package/dist/lib/product/ge_1_gripper.js +528 -0
  286. package/dist/lib/product/ge_1_gripper.js.map +1 -0
  287. package/dist/lib/product/ge_1_gripper_direction.d.ts +15 -0
  288. package/dist/lib/product/ge_1_gripper_direction.d.ts.map +1 -0
  289. package/dist/lib/product/ge_1_gripper_direction.js +23 -0
  290. package/dist/lib/product/ge_1_gripper_direction.js.map +1 -0
  291. package/dist/lib/product/ge_1_gripper_error.d.ts +37 -0
  292. package/dist/lib/product/ge_1_gripper_error.d.ts.map +1 -0
  293. package/dist/lib/product/ge_1_gripper_error.js +45 -0
  294. package/dist/lib/product/ge_1_gripper_error.js.map +1 -0
  295. package/dist/lib/product/ge_1_gripper_state.d.ts +23 -0
  296. package/dist/lib/product/ge_1_gripper_state.d.ts.map +1 -0
  297. package/dist/lib/product/ge_1_gripper_state.js +31 -0
  298. package/dist/lib/product/ge_1_gripper_state.js.map +1 -0
  299. package/dist/lib/product/index.d.ts +4 -0
  300. package/dist/lib/product/index.d.ts.map +1 -1
  301. package/dist/lib/product/index.js +4 -0
  302. package/dist/lib/product/index.js.map +1 -1
  303. package/dist/lib/product/process.d.ts +7 -7
  304. package/dist/lib/product/process.d.ts.map +1 -1
  305. package/dist/lib/product/process.js +8 -8
  306. package/dist/lib/product/process.js.map +1 -1
  307. package/dist/lib/product/process_controller.js.map +1 -1
  308. package/dist/lib/requests/autofocus_get_objective_params_response.js +1 -1
  309. package/dist/lib/requests/autofocus_get_objective_params_response.js.map +1 -1
  310. package/dist/lib/requests/autofocus_set_objective_params_request.js +1 -1
  311. package/dist/lib/requests/autofocus_set_objective_params_request.js.map +1 -1
  312. package/dist/lib/requests/axes_empty_request.js +3 -3
  313. package/dist/lib/requests/axes_empty_request.js.map +1 -1
  314. package/dist/lib/requests/axes_get_setting_request.js +4 -4
  315. package/dist/lib/requests/axes_get_setting_request.js.map +1 -1
  316. package/dist/lib/requests/axes_move_request.js +4 -4
  317. package/dist/lib/requests/axes_move_request.js.map +1 -1
  318. package/dist/lib/requests/binary_device_detect_response.js +1 -1
  319. package/dist/lib/requests/binary_device_detect_response.js.map +1 -1
  320. package/dist/lib/requests/binary_message_collection.js +1 -1
  321. package/dist/lib/requests/binary_message_collection.js.map +1 -1
  322. package/dist/lib/requests/device_cancel_all_outputs_schedule_request.js +1 -1
  323. package/dist/lib/requests/device_cancel_all_outputs_schedule_request.js.map +1 -1
  324. package/dist/lib/requests/device_detect_response.js +1 -1
  325. package/dist/lib/requests/device_detect_response.js.map +1 -1
  326. package/dist/lib/requests/device_get_all_analog_io_response.js +1 -1
  327. package/dist/lib/requests/device_get_all_analog_io_response.js.map +1 -1
  328. package/dist/lib/requests/device_get_all_digital_io_response.js +1 -1
  329. package/dist/lib/requests/device_get_all_digital_io_response.js.map +1 -1
  330. package/dist/lib/requests/device_get_warnings_response.js +1 -1
  331. package/dist/lib/requests/device_get_warnings_response.js.map +1 -1
  332. package/dist/lib/requests/device_multi_get_setting_request.js +2 -2
  333. package/dist/lib/requests/device_multi_get_setting_request.js.map +1 -1
  334. package/dist/lib/requests/device_on_all_response.js +1 -1
  335. package/dist/lib/requests/device_on_all_response.js.map +1 -1
  336. package/dist/lib/requests/device_set_all_analog_outputs_request.js +1 -1
  337. package/dist/lib/requests/device_set_all_analog_outputs_request.js.map +1 -1
  338. package/dist/lib/requests/device_set_all_analog_outputs_schedule_request.js +2 -2
  339. package/dist/lib/requests/device_set_all_analog_outputs_schedule_request.js.map +1 -1
  340. package/dist/lib/requests/device_set_all_digital_outputs_request.js +1 -1
  341. package/dist/lib/requests/device_set_all_digital_outputs_request.js.map +1 -1
  342. package/dist/lib/requests/device_set_all_digital_outputs_schedule_request.js +2 -2
  343. package/dist/lib/requests/device_set_all_digital_outputs_schedule_request.js.map +1 -1
  344. package/dist/lib/requests/device_set_unit_conversions_request.js +1 -1
  345. package/dist/lib/requests/device_set_unit_conversions_request.js.map +1 -1
  346. package/dist/lib/requests/discover_tcp_devices_response.js +1 -1
  347. package/dist/lib/requests/discover_tcp_devices_response.js.map +1 -1
  348. package/dist/lib/requests/double_array_response.js +1 -1
  349. package/dist/lib/requests/double_array_response.js.map +1 -1
  350. package/dist/lib/requests/errors.d.ts +11 -11
  351. package/dist/lib/requests/errors.d.ts.map +1 -1
  352. package/dist/lib/requests/errors.js +11 -11
  353. package/dist/lib/requests/errors.js.map +1 -1
  354. package/dist/lib/requests/forget_devices_request.js +1 -1
  355. package/dist/lib/requests/forget_devices_request.js.map +1 -1
  356. package/dist/lib/requests/ge_1_gripper_activate_preset_request.d.ts +15 -0
  357. package/dist/lib/requests/ge_1_gripper_activate_preset_request.d.ts.map +1 -0
  358. package/dist/lib/requests/ge_1_gripper_activate_preset_request.js +42 -0
  359. package/dist/lib/requests/ge_1_gripper_activate_preset_request.js.map +1 -0
  360. package/dist/lib/requests/ge_1_gripper_calibrate_request.d.ts +14 -0
  361. package/dist/lib/requests/ge_1_gripper_calibrate_request.d.ts.map +1 -0
  362. package/dist/lib/requests/ge_1_gripper_calibrate_request.js +38 -0
  363. package/dist/lib/requests/ge_1_gripper_calibrate_request.js.map +1 -0
  364. package/dist/lib/requests/ge_1_gripper_empty_request.d.ts +13 -0
  365. package/dist/lib/requests/ge_1_gripper_empty_request.d.ts.map +1 -0
  366. package/dist/lib/requests/ge_1_gripper_empty_request.js +34 -0
  367. package/dist/lib/requests/ge_1_gripper_empty_request.js.map +1 -0
  368. package/dist/lib/requests/ge_1_gripper_get_error_response.d.ts +14 -0
  369. package/dist/lib/requests/ge_1_gripper_get_error_response.d.ts.map +1 -0
  370. package/dist/lib/requests/ge_1_gripper_get_error_response.js +35 -0
  371. package/dist/lib/requests/ge_1_gripper_get_error_response.js.map +1 -0
  372. package/dist/lib/requests/ge_1_gripper_get_state_response.d.ts +14 -0
  373. package/dist/lib/requests/ge_1_gripper_get_state_response.d.ts.map +1 -0
  374. package/dist/lib/requests/ge_1_gripper_get_state_response.js +35 -0
  375. package/dist/lib/requests/ge_1_gripper_get_state_response.js.map +1 -0
  376. package/dist/lib/requests/ge_1_gripper_move_request.d.ts +15 -0
  377. package/dist/lib/requests/ge_1_gripper_move_request.d.ts.map +1 -0
  378. package/dist/lib/requests/ge_1_gripper_move_request.js +42 -0
  379. package/dist/lib/requests/ge_1_gripper_move_request.js.map +1 -0
  380. package/dist/lib/requests/ge_1_gripper_open_connection_request.d.ts +15 -0
  381. package/dist/lib/requests/ge_1_gripper_open_connection_request.d.ts.map +1 -0
  382. package/dist/lib/requests/ge_1_gripper_open_connection_request.js +42 -0
  383. package/dist/lib/requests/ge_1_gripper_open_connection_request.js.map +1 -0
  384. package/dist/lib/requests/ge_1_gripper_read_register_request.d.ts +14 -0
  385. package/dist/lib/requests/ge_1_gripper_read_register_request.d.ts.map +1 -0
  386. package/dist/lib/requests/ge_1_gripper_read_register_request.js +38 -0
  387. package/dist/lib/requests/ge_1_gripper_read_register_request.js.map +1 -0
  388. package/dist/lib/requests/ge_1_gripper_set_auto_home_request.d.ts +15 -0
  389. package/dist/lib/requests/ge_1_gripper_set_auto_home_request.d.ts.map +1 -0
  390. package/dist/lib/requests/ge_1_gripper_set_auto_home_request.js +42 -0
  391. package/dist/lib/requests/ge_1_gripper_set_auto_home_request.js.map +1 -0
  392. package/dist/lib/requests/ge_1_gripper_set_force_request.d.ts +14 -0
  393. package/dist/lib/requests/ge_1_gripper_set_force_request.d.ts.map +1 -0
  394. package/dist/lib/requests/ge_1_gripper_set_force_request.js +38 -0
  395. package/dist/lib/requests/ge_1_gripper_set_force_request.js.map +1 -0
  396. package/dist/lib/requests/ge_1_gripper_set_home_direction_request.d.ts +16 -0
  397. package/dist/lib/requests/ge_1_gripper_set_home_direction_request.d.ts.map +1 -0
  398. package/dist/lib/requests/ge_1_gripper_set_home_direction_request.js +43 -0
  399. package/dist/lib/requests/ge_1_gripper_set_home_direction_request.js.map +1 -0
  400. package/dist/lib/requests/ge_1_gripper_set_io_enabled_request.d.ts +15 -0
  401. package/dist/lib/requests/ge_1_gripper_set_io_enabled_request.d.ts.map +1 -0
  402. package/dist/lib/requests/ge_1_gripper_set_io_enabled_request.js +42 -0
  403. package/dist/lib/requests/ge_1_gripper_set_io_enabled_request.js.map +1 -0
  404. package/dist/lib/requests/ge_1_gripper_set_io_input_filter_request.d.ts +15 -0
  405. package/dist/lib/requests/ge_1_gripper_set_io_input_filter_request.d.ts.map +1 -0
  406. package/dist/lib/requests/ge_1_gripper_set_io_input_filter_request.js +42 -0
  407. package/dist/lib/requests/ge_1_gripper_set_io_input_filter_request.js.map +1 -0
  408. package/dist/lib/requests/ge_1_gripper_set_preset_request.d.ts +18 -0
  409. package/dist/lib/requests/ge_1_gripper_set_preset_request.d.ts.map +1 -0
  410. package/dist/lib/requests/ge_1_gripper_set_preset_request.js +54 -0
  411. package/dist/lib/requests/ge_1_gripper_set_preset_request.js.map +1 -0
  412. package/dist/lib/requests/ge_1_gripper_set_speed_request.d.ts +14 -0
  413. package/dist/lib/requests/ge_1_gripper_set_speed_request.d.ts.map +1 -0
  414. package/dist/lib/requests/ge_1_gripper_set_speed_request.js +38 -0
  415. package/dist/lib/requests/ge_1_gripper_set_speed_request.js.map +1 -0
  416. package/dist/lib/requests/ge_1_gripper_wait_until_idle_request.d.ts +14 -0
  417. package/dist/lib/requests/ge_1_gripper_wait_until_idle_request.d.ts.map +1 -0
  418. package/dist/lib/requests/ge_1_gripper_wait_until_idle_request.js +38 -0
  419. package/dist/lib/requests/ge_1_gripper_wait_until_idle_request.js.map +1 -0
  420. package/dist/lib/requests/ge_1_gripper_write_register_request.d.ts +15 -0
  421. package/dist/lib/requests/ge_1_gripper_write_register_request.d.ts.map +1 -0
  422. package/dist/lib/requests/ge_1_gripper_write_register_request.js +42 -0
  423. package/dist/lib/requests/ge_1_gripper_write_register_request.js.map +1 -0
  424. package/dist/lib/requests/generic_command_response_collection.js +1 -1
  425. package/dist/lib/requests/generic_command_response_collection.js.map +1 -1
  426. package/dist/lib/requests/get_all_io_port_labels_response.js +1 -1
  427. package/dist/lib/requests/get_all_io_port_labels_response.js.map +1 -1
  428. package/dist/lib/requests/get_axis_setting_results.js +1 -1
  429. package/dist/lib/requests/get_axis_setting_results.js.map +1 -1
  430. package/dist/lib/requests/get_command_unit_conversion_response.js +1 -1
  431. package/dist/lib/requests/get_command_unit_conversion_response.js.map +1 -1
  432. package/dist/lib/requests/get_setting_results.js +1 -1
  433. package/dist/lib/requests/get_setting_results.js.map +1 -1
  434. package/dist/lib/requests/get_simple_tuning_param_definition_response.js +1 -1
  435. package/dist/lib/requests/get_simple_tuning_param_definition_response.js.map +1 -1
  436. package/dist/lib/requests/index.d.ts +24 -1
  437. package/dist/lib/requests/index.d.ts.map +1 -1
  438. package/dist/lib/requests/index.js +24 -1
  439. package/dist/lib/requests/index.js.map +1 -1
  440. package/dist/lib/requests/int_array_response.js +1 -1
  441. package/dist/lib/requests/int_array_response.js.map +1 -1
  442. package/dist/lib/requests/lockstep_enable_request.js +1 -1
  443. package/dist/lib/requests/lockstep_enable_request.js.map +1 -1
  444. package/dist/lib/requests/lockstep_get_axis_numbers_response.js +1 -1
  445. package/dist/lib/requests/lockstep_get_axis_numbers_response.js.map +1 -1
  446. package/dist/lib/requests/open_interface_request.js +1 -1
  447. package/dist/lib/requests/open_interface_request.js.map +1 -1
  448. package/dist/lib/requests/oscilloscope_data_get_samples_response.js +1 -1
  449. package/dist/lib/requests/oscilloscope_data_get_samples_response.js.map +1 -1
  450. package/dist/lib/requests/oscilloscope_read_response.js +1 -1
  451. package/dist/lib/requests/oscilloscope_read_response.js.map +1 -1
  452. package/dist/lib/requests/prepare_command_request.js +1 -1
  453. package/dist/lib/requests/prepare_command_request.js.map +1 -1
  454. package/dist/lib/requests/pvt_buffer_get_sequence_data_request.d.ts +1 -1
  455. package/dist/lib/requests/pvt_buffer_get_sequence_data_request.d.ts.map +1 -1
  456. package/dist/lib/requests/pvt_buffer_get_sequence_data_request.js +4 -4
  457. package/dist/lib/requests/pvt_buffer_get_sequence_data_request.js.map +1 -1
  458. package/dist/lib/requests/pvt_buffer_get_sequence_data_response.d.ts +14 -0
  459. package/dist/lib/requests/pvt_buffer_get_sequence_data_response.d.ts.map +1 -0
  460. package/dist/lib/requests/pvt_buffer_get_sequence_data_response.js +39 -0
  461. package/dist/lib/requests/pvt_buffer_get_sequence_data_response.js.map +1 -0
  462. package/dist/lib/requests/pvt_convert_time_request.d.ts +15 -0
  463. package/dist/lib/requests/pvt_convert_time_request.d.ts.map +1 -0
  464. package/dist/lib/requests/pvt_convert_time_request.js +45 -0
  465. package/dist/lib/requests/pvt_convert_time_request.js.map +1 -0
  466. package/dist/lib/requests/pvt_convert_time_response.d.ts +14 -0
  467. package/dist/lib/requests/pvt_convert_time_response.d.ts.map +1 -0
  468. package/dist/lib/requests/pvt_convert_time_response.js +39 -0
  469. package/dist/lib/requests/pvt_convert_time_response.js.map +1 -0
  470. package/dist/lib/requests/pvt_generate_positions_request.d.ts +2 -4
  471. package/dist/lib/requests/pvt_generate_positions_request.d.ts.map +1 -1
  472. package/dist/lib/requests/pvt_generate_positions_request.js +11 -15
  473. package/dist/lib/requests/pvt_generate_positions_request.js.map +1 -1
  474. package/dist/lib/requests/pvt_generate_sequence_response.d.ts +14 -0
  475. package/dist/lib/requests/pvt_generate_sequence_response.d.ts.map +1 -0
  476. package/dist/lib/requests/pvt_generate_sequence_response.js +39 -0
  477. package/dist/lib/requests/pvt_generate_sequence_response.js.map +1 -0
  478. package/dist/lib/requests/pvt_generate_velocities_and_times_request.d.ts +2 -2
  479. package/dist/lib/requests/pvt_generate_velocities_and_times_request.d.ts.map +1 -1
  480. package/dist/lib/requests/pvt_generate_velocities_and_times_request.js +14 -6
  481. package/dist/lib/requests/pvt_generate_velocities_and_times_request.js.map +1 -1
  482. package/dist/lib/requests/pvt_generate_velocities_request.d.ts +2 -6
  483. package/dist/lib/requests/pvt_generate_velocities_request.d.ts.map +1 -1
  484. package/dist/lib/requests/pvt_generate_velocities_request.js +11 -20
  485. package/dist/lib/requests/pvt_generate_velocities_request.js.map +1 -1
  486. package/dist/lib/requests/pvt_items_request.d.ts +20 -0
  487. package/dist/lib/requests/pvt_items_request.d.ts.map +1 -0
  488. package/dist/lib/requests/pvt_items_request.js +66 -0
  489. package/dist/lib/requests/pvt_items_request.js.map +1 -0
  490. package/dist/lib/requests/pvt_partial_convert_time_request.d.ts +15 -0
  491. package/dist/lib/requests/pvt_partial_convert_time_request.d.ts.map +1 -0
  492. package/dist/lib/requests/pvt_partial_convert_time_request.js +45 -0
  493. package/dist/lib/requests/pvt_partial_convert_time_request.js.map +1 -0
  494. package/dist/lib/requests/pvt_partial_convert_time_response.d.ts +14 -0
  495. package/dist/lib/requests/pvt_partial_convert_time_response.d.ts.map +1 -0
  496. package/dist/lib/requests/pvt_partial_convert_time_response.js +39 -0
  497. package/dist/lib/requests/pvt_partial_convert_time_response.js.map +1 -0
  498. package/dist/lib/requests/pvt_point_request.js +2 -2
  499. package/dist/lib/requests/pvt_point_request.js.map +1 -1
  500. package/dist/lib/requests/pvt_points_request.js +2 -2
  501. package/dist/lib/requests/pvt_points_request.js.map +1 -1
  502. package/dist/lib/requests/pvt_save_csv_request.d.ts +2 -2
  503. package/dist/lib/requests/pvt_save_csv_request.d.ts.map +1 -1
  504. package/dist/lib/requests/pvt_save_csv_request.js +14 -7
  505. package/dist/lib/requests/pvt_save_csv_request.js.map +1 -1
  506. package/dist/lib/requests/pvt_submit_sequence_data_request.d.ts +2 -2
  507. package/dist/lib/requests/pvt_submit_sequence_data_request.d.ts.map +1 -1
  508. package/dist/lib/requests/pvt_submit_sequence_data_request.js +14 -6
  509. package/dist/lib/requests/pvt_submit_sequence_data_request.js.map +1 -1
  510. package/dist/lib/requests/set_device_db_layered_sources_request.js +1 -1
  511. package/dist/lib/requests/set_device_db_layered_sources_request.js.map +1 -1
  512. package/dist/lib/requests/set_servo_tuning_request.js +1 -1
  513. package/dist/lib/requests/set_servo_tuning_request.js.map +1 -1
  514. package/dist/lib/requests/set_simple_tuning.js +1 -1
  515. package/dist/lib/requests/set_simple_tuning.js.map +1 -1
  516. package/dist/lib/requests/stream_arc_request.js +2 -2
  517. package/dist/lib/requests/stream_arc_request.js.map +1 -1
  518. package/dist/lib/requests/stream_buffer_erase_request.d.ts +1 -1
  519. package/dist/lib/requests/stream_buffer_erase_request.d.ts.map +1 -1
  520. package/dist/lib/requests/stream_buffer_erase_request.js +4 -4
  521. package/dist/lib/requests/stream_buffer_erase_request.js.map +1 -1
  522. package/dist/lib/requests/stream_buffer_get_content_request.d.ts +1 -1
  523. package/dist/lib/requests/stream_buffer_get_content_request.d.ts.map +1 -1
  524. package/dist/lib/requests/stream_buffer_get_content_request.js +4 -4
  525. package/dist/lib/requests/stream_buffer_get_content_request.js.map +1 -1
  526. package/dist/lib/requests/stream_buffer_get_content_response.js +1 -1
  527. package/dist/lib/requests/stream_buffer_get_content_response.js.map +1 -1
  528. package/dist/lib/requests/stream_cancel_all_outputs_schedule_request.js +1 -1
  529. package/dist/lib/requests/stream_cancel_all_outputs_schedule_request.js.map +1 -1
  530. package/dist/lib/requests/stream_circle_request.js +1 -1
  531. package/dist/lib/requests/stream_circle_request.js.map +1 -1
  532. package/dist/lib/requests/stream_generic_command_batch_request.js +1 -1
  533. package/dist/lib/requests/stream_generic_command_batch_request.js.map +1 -1
  534. package/dist/lib/requests/stream_get_axes_response.js +2 -2
  535. package/dist/lib/requests/stream_get_axes_response.js.map +1 -1
  536. package/dist/lib/requests/stream_line_request.js +2 -2
  537. package/dist/lib/requests/stream_line_request.js.map +1 -1
  538. package/dist/lib/requests/stream_set_all_analog_outputs_request.js +1 -1
  539. package/dist/lib/requests/stream_set_all_analog_outputs_request.js.map +1 -1
  540. package/dist/lib/requests/stream_set_all_analog_outputs_schedule_request.js +2 -2
  541. package/dist/lib/requests/stream_set_all_analog_outputs_schedule_request.js.map +1 -1
  542. package/dist/lib/requests/stream_set_all_digital_outputs_request.js +1 -1
  543. package/dist/lib/requests/stream_set_all_digital_outputs_request.js.map +1 -1
  544. package/dist/lib/requests/stream_set_all_digital_outputs_schedule_request.js +2 -2
  545. package/dist/lib/requests/stream_set_all_digital_outputs_schedule_request.js.map +1 -1
  546. package/dist/lib/requests/stream_setup_live_composite_request.js +2 -2
  547. package/dist/lib/requests/stream_setup_live_composite_request.js.map +1 -1
  548. package/dist/lib/requests/stream_setup_live_request.js +1 -1
  549. package/dist/lib/requests/stream_setup_live_request.js.map +1 -1
  550. package/dist/lib/requests/stream_setup_store_composite_request.js +2 -2
  551. package/dist/lib/requests/stream_setup_store_composite_request.js.map +1 -1
  552. package/dist/lib/requests/stream_setup_store_request.js +1 -1
  553. package/dist/lib/requests/stream_setup_store_request.js.map +1 -1
  554. package/dist/lib/requests/string_array_response.js +1 -1
  555. package/dist/lib/requests/string_array_response.js.map +1 -1
  556. package/dist/lib/requests/test_dto_with_variants.js +1 -1
  557. package/dist/lib/requests/test_dto_with_variants.js.map +1 -1
  558. package/dist/lib/requests/test_request_complex.js +1 -1
  559. package/dist/lib/requests/test_request_complex.js.map +1 -1
  560. package/dist/lib/requests/test_response_long.js +1 -1
  561. package/dist/lib/requests/test_response_long.js.map +1 -1
  562. package/dist/lib/requests/tools_list_serial_ports_response.js +1 -1
  563. package/dist/lib/requests/tools_list_serial_ports_response.js.map +1 -1
  564. package/dist/lib/requests/translator_create_from_device_request.js +1 -1
  565. package/dist/lib/requests/translator_create_from_device_request.js.map +1 -1
  566. package/dist/lib/requests/translator_flush_response.js +1 -1
  567. package/dist/lib/requests/translator_flush_response.js.map +1 -1
  568. package/dist/lib/requests/trigger_enabled_states.js +1 -1
  569. package/dist/lib/requests/trigger_enabled_states.js.map +1 -1
  570. package/dist/lib/requests/trigger_states.js +1 -1
  571. package/dist/lib/requests/trigger_states.js.map +1 -1
  572. package/dist/lib/requests/unit_convert_native_request.js +1 -1
  573. package/dist/lib/requests/unit_convert_native_request.js.map +1 -1
  574. package/dist/lib/requests/wait_to_clear_warnings_request.js +1 -1
  575. package/dist/lib/requests/wait_to_clear_warnings_request.js.map +1 -1
  576. package/dist/lib/requests/wdi_generic_float_request.js +1 -1
  577. package/dist/lib/requests/wdi_generic_float_request.js.map +1 -1
  578. package/dist/lib/requests/wdi_generic_request.js +1 -1
  579. package/dist/lib/requests/wdi_generic_request.js.map +1 -1
  580. package/dist/lib/tools.d.ts +1 -0
  581. package/dist/lib/tools.d.ts.map +1 -1
  582. package/dist/lib/tools.js +2 -0
  583. package/dist/lib/tools.js.map +1 -1
  584. package/dist/lib/unit_table.d.ts +15 -11
  585. package/dist/lib/unit_table.d.ts.map +1 -1
  586. package/dist/lib/unit_table.js +19 -14
  587. package/dist/lib/unit_table.js.map +1 -1
  588. package/dist/lib/variant_test_api.d.ts +4 -0
  589. package/dist/lib/variant_test_api.d.ts.map +1 -1
  590. package/dist/lib/variant_test_api.js +5 -0
  591. package/dist/lib/variant_test_api.js.map +1 -1
  592. package/package.json +37 -37
  593. package/dist/lib/ascii/optional_measurement_sequence.d.ts +0 -24
  594. package/dist/lib/ascii/optional_measurement_sequence.d.ts.map +0 -1
  595. package/dist/lib/ascii/optional_measurement_sequence.js +0 -38
  596. package/dist/lib/ascii/optional_measurement_sequence.js.map +0 -1
  597. package/dist/lib/ascii/pvt_sequence_data.d.ts +0 -28
  598. package/dist/lib/ascii/pvt_sequence_data.d.ts.map +0 -1
  599. package/dist/lib/ascii/pvt_sequence_data.js +0 -42
  600. package/dist/lib/ascii/pvt_sequence_data.js.map +0 -1
  601. package/dist/lib/ascii/storage.d.ts.map +0 -1
  602. package/dist/lib/ascii/storage.js.map +0 -1
  603. package/dist/lib/exceptions/setting_not_found_exception.d.ts +0 -8
  604. package/dist/lib/exceptions/setting_not_found_exception.d.ts.map +0 -1
  605. package/dist/lib/exceptions/setting_not_found_exception.js +0 -17
  606. package/dist/lib/exceptions/setting_not_found_exception.js.map +0 -1
  607. package/dist/lib/requests/pvt_csv_request.d.ts +0 -12
  608. package/dist/lib/requests/pvt_csv_request.d.ts.map +0 -1
  609. package/dist/lib/requests/pvt_csv_request.js +0 -28
  610. package/dist/lib/requests/pvt_csv_request.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"connection.js","sourceRoot":"","sources":["../../../src/ascii/connection.ts"],"names":[],"mappings":"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","sourcesContent":["// ==== THIS FILE IS GENERATED FROM A TEMPLATE ==== //\n// ============= DO NOT EDIT DIRECTLY ============= //\n\nimport { Observable, ReplaySubject } from 'rxjs';\nimport { map, filter, takeUntil, take } from 'rxjs/operators';\nimport * as gateway from '../gateway';\nimport { events, filterEvent } from '../gateway';\nimport * as requests from '../requests';\nimport { Transport } from './transport';\nimport { Device } from './device';\nimport { Response } from './response';\nimport { UnknownResponseEvent } from './unknown_response_event';\nimport { AlertEvent } from './alert_event';\nimport { MotionLibException } from '../exceptions';\nimport { registerForFinalization } from '../finalizer';\nimport { MockDevice } from './mock_device';\n\n/**\n * Class representing access to particular connection (serial port, TCP connection).\n */\nexport class Connection {\n /**\n * Event invoked when a response from a device cannot be matched to any known request.\n */\n public unknownResponse!: Observable<UnknownResponseEvent>;\n\n /**\n * Event invoked when an alert is received from a device.\n */\n public alert!: Observable<AlertEvent>;\n\n /**\n * Default baud rate for serial connections.\n */\n public static readonly DEFAULT_BAUD_RATE: number = 115200;\n\n /**\n * Commands sent over this port are forwarded to the device chain.\n * The bandwidth may be limited as the commands are forwarded over a serial connection.\n */\n public static readonly TCP_PORT_CHAIN: number = 55550;\n\n /**\n * Local area network share port.\n */\n public static readonly NETWORK_SHARE_PORT: number = 11421;\n\n /**\n * Commands send over this port are processed only by the device\n * and not forwarded to the rest of the chain.\n * Using this port typically makes the communication faster.\n */\n public static readonly TCP_PORT_DEVICE_ONLY: number = 55551;\n\n /**\n * The interface ID identifies this Connection instance with the underlying library.\n */\n public get interfaceId(): number {\n return this._interfaceId;\n }\n private _interfaceId: number;\n\n /**\n * The default timeout, in milliseconds, for a device to respond to a request.\n * Setting the timeout to a too low value may cause request timeout exceptions.\n * The initial value is 1000 (one second).\n */\n public get defaultRequestTimeout(): number {\n return this._retrieveTimeout();\n }\n\n public set defaultRequestTimeout(value: number) {\n this._changeTimeout(value);\n }\n\n /**\n * Controls whether outgoing messages contain checksum.\n */\n public get checksumEnabled(): boolean {\n return this._retrieveChecksumEnabled();\n }\n\n public set checksumEnabled(value: boolean) {\n this._changeChecksumEnabled(value);\n }\n\n /**\n * Returns whether the connection is open.\n * Does not guarantee that subsequent requests will succeed.\n */\n public get isOpen(): boolean {\n return this._retrieveIsOpen();\n }\n\n constructor(interfaceId: number) {\n this._interfaceId = interfaceId;\n registerForFinalization(this, Connection._free.bind(null, interfaceId));\n this._subscribe(0);\n }\n\n /**\n * Opens a serial port, if Zaber Launcher controls the port, the port will be opened through Zaber Launcher.\n * Zaber Launcher allows sharing of the port between multiple applications,\n * If port sharing is not desirable, use the `direct` parameter.\n * @param portName Name of the port to open.\n * @param [options.baudRate=Connection.DEFAULT_BAUD_RATE] Optional baud rate (defaults to 115200).\n * @param [options.direct=false] If true will connect to the serial port directly,\n * failing if the connection is already opened by a message router instance.\n * @param [options.testPort=false] Some operating systems may allow opening a serial port that is not writable.\n * Tests if the serial port is writable, and throws an exception if it is not.\n * @returns An object representing the port.\n */\n public static async openSerialPort(\n portName: string,\n options: Connection.OpenSerialPortOptions = {}\n ): Promise<Connection> {\n const {\n baudRate = Connection.DEFAULT_BAUD_RATE,\n direct = false,\n testPort = false,\n } = options;\n const request: requests.OpenInterfaceRequest & gateway.Message = {\n ...requests.OpenInterfaceRequest.DEFAULT,\n interfaceType: requests.InterfaceType.SERIAL_PORT,\n portName: portName,\n baudRate: baudRate,\n rejectRoutedConnection: direct,\n testPort: testPort,\n toBinary() {\n return requests.OpenInterfaceRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.OpenInterfaceResponse>(\n 'interface/open',\n request,\n requests.OpenInterfaceResponse.fromBinary);\n return new Connection(response.interfaceId);\n }\n\n /**\n * Opens a TCP connection.\n * @param hostName Hostname or IP address.\n * @param [port=Connection.TCP_PORT_CHAIN] Optional port number (defaults to 55550).\n * @returns An object representing the connection.\n */\n public static async openTcp(\n hostName: string,\n port: number = Connection.TCP_PORT_CHAIN\n ): Promise<Connection> {\n const request: requests.OpenInterfaceRequest & gateway.Message = {\n ...requests.OpenInterfaceRequest.DEFAULT,\n interfaceType: requests.InterfaceType.TCP,\n hostName: hostName,\n port: port,\n toBinary() {\n return requests.OpenInterfaceRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.OpenInterfaceResponse>(\n 'interface/open',\n request,\n requests.OpenInterfaceResponse.fromBinary);\n return new Connection(response.interfaceId);\n }\n\n /**\n * Opens a connection using a custom transport.\n * @param transport The custom connection transport.\n * @returns An object representing the connection.\n */\n public static async openCustom(\n transport: Transport\n ): Promise<Connection> {\n const request: requests.OpenInterfaceRequest & gateway.Message = {\n ...requests.OpenInterfaceRequest.DEFAULT,\n interfaceType: requests.InterfaceType.CUSTOM,\n transport: transport.transportId,\n toBinary() {\n return requests.OpenInterfaceRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.OpenInterfaceResponse>(\n 'interface/open',\n request,\n requests.OpenInterfaceResponse.fromBinary);\n return new Connection(response.interfaceId);\n }\n\n /**\n * Opens a secured connection to a cloud connected device chain.\n * Use this method to connect to devices on your account.\n * @param cloudId The cloud ID to connect to.\n * @param [options.token='unauthenticated'] The token to authenticate with. By default the connection will be unauthenticated.\n * @param options.connectionName The name of the connection to open.\n * Can be left empty to default to the only connection present.\n * Otherwise, use serial port name for serial port connection or hostname:port for TCP connection.\n * @param options.realm The realm to connect to.\n * Can be left empty for the default account realm.\n * @param [options.api='https://api.zaber.io'] The URL of the API to receive connection info from.\n * @returns An object representing the connection.\n */\n public static async openIot(\n cloudId: string,\n options: Connection.OpenIotOptions = {}\n ): Promise<Connection> {\n const {\n token = 'unauthenticated',\n connectionName,\n realm,\n api = 'https://api.zaber.io',\n } = options;\n const request: requests.OpenInterfaceRequest & gateway.Message = {\n ...requests.OpenInterfaceRequest.DEFAULT,\n interfaceType: requests.InterfaceType.IOT,\n cloudId: cloudId,\n token: token,\n connectionName: connectionName,\n realm: realm,\n api: api,\n toBinary() {\n return requests.OpenInterfaceRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.OpenInterfaceResponse>(\n 'interface/open',\n request,\n requests.OpenInterfaceResponse.fromBinary);\n return new Connection(response.interfaceId);\n }\n\n /**\n * Opens a connection to Zaber Launcher in your Local Area Network.\n * The connection is not secured.\n * @param hostName Hostname or IP address.\n * @param [port=Connection.NETWORK_SHARE_PORT] Port number.\n * @param connectionName The name of the connection to open.\n * Can be left empty to default to the only connection present.\n * Otherwise, use serial port name for serial port connection or hostname:port for TCP connection.\n * @returns An object representing the connection.\n */\n public static async openNetworkShare(\n hostName: string,\n port: number = Connection.NETWORK_SHARE_PORT,\n connectionName?: string\n ): Promise<Connection> {\n const request: requests.OpenInterfaceRequest & gateway.Message = {\n ...requests.OpenInterfaceRequest.DEFAULT,\n interfaceType: requests.InterfaceType.NETWORK_SHARE,\n hostName: hostName,\n port: port,\n connectionName: connectionName,\n toBinary() {\n return requests.OpenInterfaceRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.OpenInterfaceResponse>(\n 'interface/open',\n request,\n requests.OpenInterfaceResponse.fromBinary);\n return new Connection(response.interfaceId);\n }\n\n /**\n * Opens a mock connection with mock devices for testing purposes.\n * The mock connection cannot be used for communication with mock devices.\n * @param devices List of mock devices.\n * @returns An object representing the mock connection.\n */\n public static async openMock(\n devices: MockDevice[]\n ): Promise<Connection> {\n const request: requests.OpenInterfaceRequest & gateway.Message = {\n ...requests.OpenInterfaceRequest.DEFAULT,\n interfaceType: requests.InterfaceType.MOCK,\n mockDevices: devices,\n toBinary() {\n return requests.OpenInterfaceRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.OpenInterfaceResponse>(\n 'interface/open',\n request,\n requests.OpenInterfaceResponse.fromBinary);\n return new Connection(response.interfaceId);\n }\n\n /**\n * Reopens the connection.\n * To continue using events on the connection, you must resubscribe to event observables.\n * Throws an exception if the connection is already open.\n */\n public async reopen(): Promise<void> {\n const request: requests.InterfaceEmptyRequest & gateway.Message = {\n ...requests.InterfaceEmptyRequest.DEFAULT,\n interfaceId: this.interfaceId,\n toBinary() {\n return requests.InterfaceEmptyRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.IntResponse>(\n 'interface/reopen',\n request,\n requests.IntResponse.fromBinary);\n this._subscribe(response.value);\n }\n\n /**\n * Sends a generic ASCII command to this connection.\n * For more information refer to the [ASCII Protocol Manual](https://www.zaber.com/protocol-manual#topic_commands).\n * @param command Command and its parameters.\n * @param [options.device=0] Optional device address to send the command to.\n * @param [options.axis=0] Optional axis number to send the command to.\n * @param [options.checkErrors=true] Controls whether to throw an exception when the device rejects the command.\n * @param [options.timeout=0] The timeout, in milliseconds, for a device to respond to the command.\n * Overrides the connection default request timeout.\n * @returns A response to the command.\n */\n public async genericCommand(\n command: string,\n options: Connection.GenericCommandOptions = {}\n ): Promise<Response> {\n const {\n device = 0,\n axis = 0,\n checkErrors = true,\n timeout = 0,\n } = options;\n const request: requests.GenericCommandRequest & gateway.Message = {\n ...requests.GenericCommandRequest.DEFAULT,\n interfaceId: this.interfaceId,\n command: command,\n device: device,\n axis: axis,\n checkErrors: checkErrors,\n timeout: timeout,\n toBinary() {\n return requests.GenericCommandRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<Response>(\n 'interface/generic_command',\n request,\n Response.fromBinary);\n return response;\n }\n\n /**\n * Sends a generic ASCII command to this connection without expecting a response and without adding a message ID.\n * For more information refer to the [ASCII Protocol Manual](https://www.zaber.com/protocol-manual#topic_commands).\n * @param command Command and its parameters.\n * @param [options.device=0] Optional device address to send the command to.\n * Specifying -1 omits the number completely.\n * @param [options.axis=0] Optional axis number to send the command to.\n * Specifying -1 omits the number completely.\n */\n public async genericCommandNoResponse(\n command: string,\n options: Connection.GenericCommandNoResponseOptions = {}\n ): Promise<void> {\n const {\n device = 0,\n axis = 0,\n } = options;\n const request: requests.GenericCommandRequest & gateway.Message = {\n ...requests.GenericCommandRequest.DEFAULT,\n interfaceId: this.interfaceId,\n command: command,\n device: device,\n axis: axis,\n toBinary() {\n return requests.GenericCommandRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('interface/generic_command_no_response', request);\n }\n\n /**\n * Sends a generic ASCII command to this connection and expect multiple responses,\n * either from one device or from many devices.\n * Responses are returned in order of arrival.\n * For more information refer to the [ASCII Protocol Manual](https://www.zaber.com/protocol-manual#topic_commands).\n * @param command Command and its parameters.\n * @param [options.device=0] Optional device address to send the command to.\n * @param [options.axis=0] Optional axis number to send the command to.\n * @param [options.checkErrors=true] Controls whether to throw an exception when a device rejects the command.\n * @param [options.timeout=0] The timeout, in milliseconds, for a device to respond to the command.\n * Overrides the connection default request timeout.\n * @returns All responses to the command.\n */\n public async genericCommandMultiResponse(\n command: string,\n options: Connection.GenericCommandMultiResponseOptions = {}\n ): Promise<Response[]> {\n const {\n device = 0,\n axis = 0,\n checkErrors = true,\n timeout = 0,\n } = options;\n const request: requests.GenericCommandRequest & gateway.Message = {\n ...requests.GenericCommandRequest.DEFAULT,\n interfaceId: this.interfaceId,\n command: command,\n device: device,\n axis: axis,\n checkErrors: checkErrors,\n timeout: timeout,\n toBinary() {\n return requests.GenericCommandRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.GenericCommandResponseCollection>(\n 'interface/generic_command_multi_response',\n request,\n requests.GenericCommandResponseCollection.fromBinary);\n return response.responses;\n }\n\n /**\n * Enables alerts for all devices on the connection.\n * This will change the \"comm.alert\" setting to 1 on all supported devices.\n */\n public async enableAlerts(): Promise<void> {\n const request: requests.GenericCommandRequest & gateway.Message = {\n ...requests.GenericCommandRequest.DEFAULT,\n interfaceId: this.interfaceId,\n command: 'set comm.alert 1',\n toBinary() {\n return requests.GenericCommandRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('interface/generic_command_no_response', request);\n }\n\n /**\n * Disables alerts for all devices on the connection.\n * This will change the \"comm.alert\" setting to 0 on all supported devices.\n */\n public async disableAlerts(): Promise<void> {\n const request: requests.GenericCommandRequest & gateway.Message = {\n ...requests.GenericCommandRequest.DEFAULT,\n interfaceId: this.interfaceId,\n command: 'set comm.alert 0',\n toBinary() {\n return requests.GenericCommandRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('interface/generic_command_no_response', request);\n }\n\n /**\n * Resets ASCII protocol message IDs. Only for testing purposes.\n */\n public resetIds(): void {\n const request: requests.InterfaceEmptyRequest & gateway.Message = {\n ...requests.InterfaceEmptyRequest.DEFAULT,\n interfaceId: this.interfaceId,\n toBinary() {\n return requests.InterfaceEmptyRequest.toBinary(this);\n },\n };\n\n gateway.callSync('interface/reset_ids', request);\n }\n\n /**\n * Close the connection.\n */\n public async close(): Promise<void> {\n const request: requests.InterfaceEmptyRequest & gateway.Message = {\n ...requests.InterfaceEmptyRequest.DEFAULT,\n interfaceId: this.interfaceId,\n toBinary() {\n return requests.InterfaceEmptyRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('interface/close', request);\n }\n\n /**\n * Gets a Device class instance which allows you to control a particular device on this connection.\n * Devices are numbered from 1.\n * @param deviceAddress Address of device intended to control. Address is configured for each device.\n * @returns Device instance.\n */\n public getDevice(\n deviceAddress: number\n ): Device {\n if (deviceAddress <= 0) {\n throw new TypeError('Invalid value; physical devices are numbered from 1.');\n }\n return new Device(this, deviceAddress);\n }\n\n /**\n * Renumbers devices present on this connection. After renumbering, devices need to be identified again.\n * @param [options.firstAddress=1] This is the address that the device closest to the computer is given.\n * Remaining devices are numbered consecutively.\n * @returns Total number of devices that responded to the renumber.\n */\n public async renumberDevices(\n options: Connection.RenumberDevicesOptions = {}\n ): Promise<number> {\n const {\n firstAddress = 1,\n } = options;\n if (firstAddress <= 0) {\n throw new TypeError('Invalid value; device addresses are numbered from 1.');\n }\n const request: requests.RenumberRequest & gateway.Message = {\n ...requests.RenumberRequest.DEFAULT,\n interfaceId: this.interfaceId,\n address: firstAddress,\n toBinary() {\n return requests.RenumberRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.IntResponse>(\n 'device/renumber_all',\n request,\n requests.IntResponse.fromBinary);\n return response.value;\n }\n\n /**\n * Attempts to detect any devices present on this connection.\n * @param [options.identifyDevices=true] Determines whether device identification should be performed as well.\n * @returns Array of detected devices.\n */\n public async detectDevices(\n options: Connection.DetectDevicesOptions = {}\n ): Promise<Device[]> {\n const {\n identifyDevices = true,\n } = options;\n const request: requests.DeviceDetectRequest & gateway.Message = {\n ...requests.DeviceDetectRequest.DEFAULT,\n interfaceId: this.interfaceId,\n identifyDevices: identifyDevices,\n toBinary() {\n return requests.DeviceDetectRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.DeviceDetectResponse>(\n 'device/detect',\n request,\n requests.DeviceDetectResponse.fromBinary);\n return response.devices.map(deviceAddress => this.getDevice(deviceAddress));\n }\n\n /**\n * Forgets all the information associated with devices on the connection.\n * Useful when devices are removed from the chain indefinitely.\n * @param [exceptDevices=[]] Addresses of devices that should not be forgotten.\n */\n public forgetDevices(\n exceptDevices: number[] = []\n ): void {\n const request: requests.ForgetDevicesRequest & gateway.Message = {\n ...requests.ForgetDevicesRequest.DEFAULT,\n interfaceId: this.interfaceId,\n exceptDevices: exceptDevices,\n toBinary() {\n return requests.ForgetDevicesRequest.toBinary(this);\n },\n };\n\n gateway.callSync('device/forget', request);\n }\n\n /**\n * Stops all of the devices on this connection.\n * @param [options.waitUntilIdle=true] Determines whether the function should return immediately\n * or wait until the devices are stopped.\n * @returns The addresses of the devices that were stopped by this command.\n */\n public async stopAll(\n options: Connection.StopAllOptions = {}\n ): Promise<number[]> {\n const {\n waitUntilIdle = true,\n } = options;\n const request: requests.DeviceOnAllRequest & gateway.Message = {\n ...requests.DeviceOnAllRequest.DEFAULT,\n interfaceId: this.interfaceId,\n waitUntilIdle: waitUntilIdle,\n toBinary() {\n return requests.DeviceOnAllRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.DeviceOnAllResponse>(\n 'device/stop_all',\n request,\n requests.DeviceOnAllResponse.fromBinary);\n return response.deviceAddresses;\n }\n\n /**\n * Homes all of the devices on this connection.\n * @param [options.waitUntilIdle=true] Determines whether the function should return immediately\n * or wait until the devices are homed.\n * @returns The addresses of the devices that were homed by this command.\n */\n public async homeAll(\n options: Connection.HomeAllOptions = {}\n ): Promise<number[]> {\n const {\n waitUntilIdle = true,\n } = options;\n const request: requests.DeviceOnAllRequest & gateway.Message = {\n ...requests.DeviceOnAllRequest.DEFAULT,\n interfaceId: this.interfaceId,\n waitUntilIdle: waitUntilIdle,\n toBinary() {\n return requests.DeviceOnAllRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.DeviceOnAllResponse>(\n 'device/home_all',\n request,\n requests.DeviceOnAllResponse.fromBinary);\n return response.deviceAddresses;\n }\n\n /**\n * Returns a string that represents the connection.\n * @returns A string that represents the connection.\n */\n public toString(): string {\n const request: requests.InterfaceEmptyRequest & gateway.Message = {\n ...requests.InterfaceEmptyRequest.DEFAULT,\n interfaceId: this.interfaceId,\n toBinary() {\n return requests.InterfaceEmptyRequest.toBinary(this);\n },\n };\n\n const response = gateway.callSync<requests.StringResponse>(\n 'interface/to_string',\n request,\n requests.StringResponse.fromBinary);\n return response.value;\n }\n\n /**\n * Returns default request timeout.\n * @returns Default request timeout.\n */\n private _retrieveTimeout(): number {\n const request: requests.InterfaceEmptyRequest & gateway.Message = {\n ...requests.InterfaceEmptyRequest.DEFAULT,\n interfaceId: this.interfaceId,\n toBinary() {\n return requests.InterfaceEmptyRequest.toBinary(this);\n },\n };\n\n const response = gateway.callSync<requests.IntResponse>(\n 'interface/get_timeout',\n request,\n requests.IntResponse.fromBinary);\n return response.value;\n }\n\n /**\n * Sets default request timeout.\n * @param timeout Default request timeout.\n */\n private _changeTimeout(\n timeout: number\n ): void {\n const request: requests.SetInterfaceTimeoutRequest & gateway.Message = {\n ...requests.SetInterfaceTimeoutRequest.DEFAULT,\n interfaceId: this.interfaceId,\n timeout: timeout,\n toBinary() {\n return requests.SetInterfaceTimeoutRequest.toBinary(this);\n },\n };\n\n gateway.callSync('interface/set_timeout', request);\n }\n\n /**\n * Returns checksum enabled.\n * @returns Checksum enabled.\n */\n private _retrieveChecksumEnabled(): boolean {\n const request: requests.InterfaceEmptyRequest & gateway.Message = {\n ...requests.InterfaceEmptyRequest.DEFAULT,\n interfaceId: this.interfaceId,\n toBinary() {\n return requests.InterfaceEmptyRequest.toBinary(this);\n },\n };\n\n const response = gateway.callSync<requests.BoolResponse>(\n 'interface/get_checksum_enabled',\n request,\n requests.BoolResponse.fromBinary);\n return response.value;\n }\n\n /**\n * Sets checksum enabled.\n * @param isEnabled Checksum enabled.\n */\n private _changeChecksumEnabled(\n isEnabled: boolean\n ): void {\n const request: requests.SetInterfaceChecksumEnabledRequest & gateway.Message = {\n ...requests.SetInterfaceChecksumEnabledRequest.DEFAULT,\n interfaceId: this.interfaceId,\n isEnabled: isEnabled,\n toBinary() {\n return requests.SetInterfaceChecksumEnabledRequest.toBinary(this);\n },\n };\n\n gateway.callSync('interface/set_checksum_enabled', request);\n }\n\n /**\n * Returns is open.\n * @returns Is open.\n */\n private _retrieveIsOpen(): boolean {\n const request: requests.InterfaceEmptyRequest & gateway.Message = {\n ...requests.InterfaceEmptyRequest.DEFAULT,\n interfaceId: this.interfaceId,\n toBinary() {\n return requests.InterfaceEmptyRequest.toBinary(this);\n },\n };\n\n const response = gateway.callSync<requests.BoolResponse>(\n 'interface/get_is_open',\n request,\n requests.BoolResponse.fromBinary);\n return response.value;\n }\n\n /**\n * Releases native resources of the connection.\n * @param interfaceId The ID of the connection.\n */\n private static _free(\n interfaceId: number\n ): void {\n const request: requests.InterfaceEmptyRequest & gateway.Message = {\n ...requests.InterfaceEmptyRequest.DEFAULT,\n interfaceId: interfaceId,\n toBinary() {\n return requests.InterfaceEmptyRequest.toBinary(this);\n },\n };\n\n gateway.callSync('interface/free', request);\n }\n\n private _disconnected!: ReplaySubject<MotionLibException>;\n\n /**\n * Event invoked when connection is interrupted or closed.\n */\n public get disconnected(): Observable<MotionLibException> {\n return this._disconnected;\n }\n\n private _subscribe(sessionId: number): void {\n this._disconnected = new ReplaySubject<MotionLibException>();\n\n const filterLocalEvent = <TEvent extends { interfaceId: number; sessionId: number }>(event: TEvent): boolean =>\n event.interfaceId === this.interfaceId && event.sessionId === sessionId;\n\n this.unknownResponse = events.pipe(\n takeUntil(this._disconnected),\n filterEvent<requests.UnknownResponseEventWrapper>('interface/unknown_response'),\n filter(filterLocalEvent),\n map(event => event.unknownResponse)\n );\n\n this.alert = events.pipe(\n takeUntil(this._disconnected),\n filterEvent<requests.AlertEventWrapper>('interface/alert'),\n filter(filterLocalEvent),\n map(event => event.alert)\n );\n\n events.pipe(\n filterEvent<requests.DisconnectedEvent>('interface/disconnected'),\n filter(filterLocalEvent),\n take(1),\n map(({ errorMessage, errorType }) => gateway.convertToException(errorType, errorMessage))\n ).subscribe(this._disconnected);\n }\n\n /**\n * Releases the native resources of the connection.\n * Should only be called if your environment does not support FinalizationRegistry.\n * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/FinalizationRegistry\n */\n public free(): void {\n Connection._free(this.interfaceId);\n }\n}\n\nnamespace Connection {\n export interface OpenSerialPortOptions {\n /**\n * Optional baud rate (defaults to 115200).\n */\n baudRate?: number;\n /**\n * If true will connect to the serial port directly,\n * failing if the connection is already opened by a message router instance.\n */\n direct?: boolean;\n /**\n * Some operating systems may allow opening a serial port that is not writable.\n * Tests if the serial port is writable, and throws an exception if it is not.\n */\n testPort?: boolean;\n }\n export interface OpenIotOptions {\n /**\n * The token to authenticate with. By default the connection will be unauthenticated.\n */\n token?: string;\n /**\n * The name of the connection to open.\n * Can be left empty to default to the only connection present.\n * Otherwise, use serial port name for serial port connection or hostname:port for TCP connection.\n */\n connectionName?: string;\n /**\n * The realm to connect to.\n * Can be left empty for the default account realm.\n */\n realm?: string;\n /**\n * The URL of the API to receive connection info from.\n */\n api?: string;\n }\n export interface GenericCommandOptions {\n /**\n * Optional device address to send the command to.\n */\n device?: number;\n /**\n * Optional axis number to send the command to.\n */\n axis?: number;\n /**\n * Controls whether to throw an exception when the device rejects the command.\n */\n checkErrors?: boolean;\n /**\n * The timeout, in milliseconds, for a device to respond to the command.\n * Overrides the connection default request timeout.\n */\n timeout?: number;\n }\n export interface GenericCommandNoResponseOptions {\n /**\n * Optional device address to send the command to.\n * Specifying -1 omits the number completely.\n */\n device?: number;\n /**\n * Optional axis number to send the command to.\n * Specifying -1 omits the number completely.\n */\n axis?: number;\n }\n export interface GenericCommandMultiResponseOptions {\n /**\n * Optional device address to send the command to.\n */\n device?: number;\n /**\n * Optional axis number to send the command to.\n */\n axis?: number;\n /**\n * Controls whether to throw an exception when a device rejects the command.\n */\n checkErrors?: boolean;\n /**\n * The timeout, in milliseconds, for a device to respond to the command.\n * Overrides the connection default request timeout.\n */\n timeout?: number;\n }\n export interface RenumberDevicesOptions {\n /**\n * This is the address that the device closest to the computer is given.\n * Remaining devices are numbered consecutively.\n */\n firstAddress?: number;\n }\n export interface DetectDevicesOptions {\n /**\n * Determines whether device identification should be performed as well.\n */\n identifyDevices?: boolean;\n }\n export interface StopAllOptions {\n /**\n * Determines whether the function should return immediately\n * or wait until the devices are stopped.\n */\n waitUntilIdle?: boolean;\n }\n export interface HomeAllOptions {\n /**\n * Determines whether the function should return immediately\n * or wait until the devices are homed.\n */\n waitUntilIdle?: boolean;\n }\n}\n"]}
1
+ {"version":3,"file":"connection.js","sourceRoot":"","sources":["../../../src/ascii/connection.ts"],"names":[],"mappings":"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","sourcesContent":["// ==== THIS FILE IS GENERATED FROM A TEMPLATE ==== //\n// ============= DO NOT EDIT DIRECTLY ============= //\n\nimport { Observable, ReplaySubject } from 'rxjs';\nimport { map, filter, takeUntil, take } from 'rxjs/operators';\nimport { MotionLibException } from '../exceptions';\nimport { registerForFinalization } from '../finalizer';\nimport * as gateway from '../gateway';\nimport { events, filterEvent } from '../gateway';\nimport * as requests from '../requests';\nimport { AlertEvent } from './alert_event';\nimport { Device } from './device';\nimport { MockDevice } from './mock_device';\nimport { Response } from './response';\nimport { Transport } from './transport';\nimport { UnknownResponseEvent } from './unknown_response_event';\n\n/**\n * Class representing access to particular connection (serial port, TCP connection).\n */\nexport class Connection {\n /**\n * Event invoked when a response from a device cannot be matched to any known request.\n */\n public unknownResponse!: Observable<UnknownResponseEvent>;\n\n /**\n * Event invoked when an alert is received from a device.\n */\n public alert!: Observable<AlertEvent>;\n\n private _disconnected!: ReplaySubject<MotionLibException>;\n\n /**\n * Event invoked when connection is interrupted or closed.\n */\n public get disconnected(): Observable<MotionLibException> {\n return this._disconnected;\n }\n\n /**\n * Default baud rate for serial connections.\n */\n public static readonly DEFAULT_BAUD_RATE: number = 115200;\n\n /**\n * Commands sent over this port are forwarded to the device chain.\n * The bandwidth may be limited as the commands are forwarded over a serial connection.\n */\n public static readonly TCP_PORT_CHAIN: number = 55550;\n\n /**\n * Local area network share port.\n */\n public static readonly NETWORK_SHARE_PORT: number = 11421;\n\n /**\n * Commands send over this port are processed only by the device\n * and not forwarded to the rest of the chain.\n * Using this port typically makes the communication faster.\n */\n public static readonly TCP_PORT_DEVICE_ONLY: number = 55551;\n\n /**\n * The interface ID identifies this Connection instance with the underlying library.\n */\n public get interfaceId(): number {\n return this._interfaceId;\n }\n private _interfaceId: number;\n\n /**\n * The default timeout, in milliseconds, for a device to respond to a request.\n * Setting the timeout to a too low value may cause request timeout exceptions.\n * The initial value is 1000 (one second).\n */\n public get defaultRequestTimeout(): number {\n return this._retrieveTimeout();\n }\n\n public set defaultRequestTimeout(value: number) {\n this._changeTimeout(value);\n }\n\n /**\n * Controls whether outgoing messages contain checksum.\n */\n public get checksumEnabled(): boolean {\n return this._retrieveChecksumEnabled();\n }\n\n public set checksumEnabled(value: boolean) {\n this._changeChecksumEnabled(value);\n }\n\n /**\n * Returns whether the connection is open.\n * Does not guarantee that subsequent requests will succeed.\n */\n public get isOpen(): boolean {\n return this._retrieveIsOpen();\n }\n\n constructor(interfaceId: number) {\n this._interfaceId = interfaceId;\n registerForFinalization(this, Connection._free.bind(null, interfaceId));\n this._subscribe(0);\n }\n\n /**\n * Opens a serial port, if Zaber Launcher controls the port, the port will be opened through Zaber Launcher.\n * Zaber Launcher allows sharing of the port between multiple applications,\n * If port sharing is not desirable, use the `direct` parameter.\n * @param portName Name of the port to open.\n * @param [options.baudRate=Connection.DEFAULT_BAUD_RATE] Optional baud rate (defaults to 115200).\n * @param [options.direct=false] If true will connect to the serial port directly,\n * failing if the connection is already opened by a message router instance.\n * @param [options.testPort=false] Some operating systems may allow opening a serial port that is not writable.\n * Tests if the serial port is writable, and throws an exception if it is not.\n * @returns An object representing the port.\n */\n public static async openSerialPort(\n portName: string,\n options: Connection.OpenSerialPortOptions = {}\n ): Promise<Connection> {\n const {\n baudRate = Connection.DEFAULT_BAUD_RATE,\n direct = false,\n testPort = false,\n } = options;\n const request: requests.OpenInterfaceRequest & gateway.Message = {\n ...requests.OpenInterfaceRequest.DEFAULT,\n interfaceType: requests.InterfaceType.SERIAL_PORT,\n portName: portName,\n baudRate: baudRate,\n rejectRoutedConnection: direct,\n testPort: testPort,\n toBinary() {\n return requests.OpenInterfaceRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.OpenInterfaceResponse>(\n 'interface/open',\n request,\n requests.OpenInterfaceResponse.fromBinary);\n return new Connection(response.interfaceId);\n }\n\n /**\n * Opens a TCP connection.\n * @param hostName Hostname or IP address.\n * @param [port=Connection.TCP_PORT_CHAIN] Optional port number (defaults to 55550).\n * @returns An object representing the connection.\n */\n public static async openTcp(\n hostName: string,\n port: number = Connection.TCP_PORT_CHAIN\n ): Promise<Connection> {\n const request: requests.OpenInterfaceRequest & gateway.Message = {\n ...requests.OpenInterfaceRequest.DEFAULT,\n interfaceType: requests.InterfaceType.TCP,\n hostName: hostName,\n port: port,\n toBinary() {\n return requests.OpenInterfaceRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.OpenInterfaceResponse>(\n 'interface/open',\n request,\n requests.OpenInterfaceResponse.fromBinary);\n return new Connection(response.interfaceId);\n }\n\n /**\n * Opens a connection using a custom transport.\n * @param transport The custom connection transport.\n * @returns An object representing the connection.\n */\n public static async openCustom(\n transport: Transport\n ): Promise<Connection> {\n const request: requests.OpenInterfaceRequest & gateway.Message = {\n ...requests.OpenInterfaceRequest.DEFAULT,\n interfaceType: requests.InterfaceType.CUSTOM,\n transport: transport.transportId,\n toBinary() {\n return requests.OpenInterfaceRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.OpenInterfaceResponse>(\n 'interface/open',\n request,\n requests.OpenInterfaceResponse.fromBinary);\n return new Connection(response.interfaceId);\n }\n\n /**\n * Opens a secured connection to a cloud connected device chain.\n * Use this method to connect to devices on your account.\n * @param cloudId The cloud ID to connect to.\n * @param [options.token='unauthenticated'] The token to authenticate with. By default the connection will be unauthenticated.\n * @param options.connectionName The name of the connection to open.\n * Can be left empty to default to the only connection present.\n * Otherwise, use serial port name for serial port connection or hostname:port for TCP connection.\n * @param options.realm The realm to connect to.\n * Can be left empty for the default account realm.\n * @param [options.api='https://api.zaber.io'] The URL of the API to receive connection info from.\n * @returns An object representing the connection.\n */\n public static async openIot(\n cloudId: string,\n options: Connection.OpenIotOptions = {}\n ): Promise<Connection> {\n const {\n token = 'unauthenticated',\n connectionName,\n realm,\n api = 'https://api.zaber.io',\n } = options;\n const request: requests.OpenInterfaceRequest & gateway.Message = {\n ...requests.OpenInterfaceRequest.DEFAULT,\n interfaceType: requests.InterfaceType.IOT,\n cloudId: cloudId,\n token: token,\n connectionName: connectionName,\n realm: realm,\n api: api,\n toBinary() {\n return requests.OpenInterfaceRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.OpenInterfaceResponse>(\n 'interface/open',\n request,\n requests.OpenInterfaceResponse.fromBinary);\n return new Connection(response.interfaceId);\n }\n\n /**\n * Opens a connection to Zaber Launcher in your Local Area Network.\n * The connection is not secured.\n * @param hostName Hostname or IP address.\n * @param [port=Connection.NETWORK_SHARE_PORT] Port number.\n * @param connectionName The name of the connection to open.\n * Can be left empty to default to the only connection present.\n * Otherwise, use serial port name for serial port connection or hostname:port for TCP connection.\n * @returns An object representing the connection.\n */\n public static async openNetworkShare(\n hostName: string,\n port: number = Connection.NETWORK_SHARE_PORT,\n connectionName?: string\n ): Promise<Connection> {\n const request: requests.OpenInterfaceRequest & gateway.Message = {\n ...requests.OpenInterfaceRequest.DEFAULT,\n interfaceType: requests.InterfaceType.NETWORK_SHARE,\n hostName: hostName,\n port: port,\n connectionName: connectionName,\n toBinary() {\n return requests.OpenInterfaceRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.OpenInterfaceResponse>(\n 'interface/open',\n request,\n requests.OpenInterfaceResponse.fromBinary);\n return new Connection(response.interfaceId);\n }\n\n /**\n * Opens a mock connection with mock devices for testing purposes.\n * The mock connection cannot be used for communication with mock devices.\n * @param devices List of mock devices.\n * @returns An object representing the mock connection.\n */\n public static async openMock(\n devices: MockDevice[]\n ): Promise<Connection> {\n const request: requests.OpenInterfaceRequest & gateway.Message = {\n ...requests.OpenInterfaceRequest.DEFAULT,\n interfaceType: requests.InterfaceType.MOCK,\n mockDevices: devices,\n toBinary() {\n return requests.OpenInterfaceRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.OpenInterfaceResponse>(\n 'interface/open',\n request,\n requests.OpenInterfaceResponse.fromBinary);\n return new Connection(response.interfaceId);\n }\n\n /**\n * Reopens the connection.\n * To continue using events on the connection, you must resubscribe to event observables.\n * Throws an exception if the connection is already open.\n */\n public async reopen(): Promise<void> {\n const request: requests.InterfaceEmptyRequest & gateway.Message = {\n ...requests.InterfaceEmptyRequest.DEFAULT,\n interfaceId: this.interfaceId,\n toBinary() {\n return requests.InterfaceEmptyRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.IntResponse>(\n 'interface/reopen',\n request,\n requests.IntResponse.fromBinary);\n this._subscribe(response.value);\n }\n\n /**\n * Sends a generic ASCII command to this connection.\n * For more information refer to the [ASCII Protocol Manual](https://www.zaber.com/protocol-manual#topic_commands).\n * @param command Command and its parameters.\n * @param [options.device=0] Optional device address to send the command to.\n * @param [options.axis=0] Optional axis number to send the command to.\n * @param [options.checkErrors=true] Controls whether to throw an exception when the device rejects the command.\n * @param [options.timeout=0] The timeout, in milliseconds, for a device to respond to the command.\n * Overrides the connection default request timeout.\n * @returns A response to the command.\n */\n public async genericCommand(\n command: string,\n options: Connection.GenericCommandOptions = {}\n ): Promise<Response> {\n const {\n device = 0,\n axis = 0,\n checkErrors = true,\n timeout = 0,\n } = options;\n const request: requests.GenericCommandRequest & gateway.Message = {\n ...requests.GenericCommandRequest.DEFAULT,\n interfaceId: this.interfaceId,\n command: command,\n device: device,\n axis: axis,\n checkErrors: checkErrors,\n timeout: timeout,\n toBinary() {\n return requests.GenericCommandRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<Response>(\n 'interface/generic_command',\n request,\n Response.fromBinary);\n return response;\n }\n\n /**\n * Sends a generic ASCII command to this connection without expecting a response and without adding a message ID.\n * For more information refer to the [ASCII Protocol Manual](https://www.zaber.com/protocol-manual#topic_commands).\n * @param command Command and its parameters.\n * @param [options.device=0] Optional device address to send the command to.\n * Specifying -1 omits the number completely.\n * @param [options.axis=0] Optional axis number to send the command to.\n * Specifying -1 omits the number completely.\n */\n public async genericCommandNoResponse(\n command: string,\n options: Connection.GenericCommandNoResponseOptions = {}\n ): Promise<void> {\n const {\n device = 0,\n axis = 0,\n } = options;\n const request: requests.GenericCommandRequest & gateway.Message = {\n ...requests.GenericCommandRequest.DEFAULT,\n interfaceId: this.interfaceId,\n command: command,\n device: device,\n axis: axis,\n toBinary() {\n return requests.GenericCommandRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('interface/generic_command_no_response', request);\n }\n\n /**\n * Sends a generic ASCII command to this connection and expect multiple responses,\n * either from one device or from many devices.\n * Responses are returned in order of arrival.\n * For more information refer to the [ASCII Protocol Manual](https://www.zaber.com/protocol-manual#topic_commands).\n * @param command Command and its parameters.\n * @param [options.device=0] Optional device address to send the command to.\n * @param [options.axis=0] Optional axis number to send the command to.\n * @param [options.checkErrors=true] Controls whether to throw an exception when a device rejects the command.\n * @param [options.timeout=0] The timeout, in milliseconds, for a device to respond to the command.\n * Overrides the connection default request timeout.\n * @returns All responses to the command.\n */\n public async genericCommandMultiResponse(\n command: string,\n options: Connection.GenericCommandMultiResponseOptions = {}\n ): Promise<Response[]> {\n const {\n device = 0,\n axis = 0,\n checkErrors = true,\n timeout = 0,\n } = options;\n const request: requests.GenericCommandRequest & gateway.Message = {\n ...requests.GenericCommandRequest.DEFAULT,\n interfaceId: this.interfaceId,\n command: command,\n device: device,\n axis: axis,\n checkErrors: checkErrors,\n timeout: timeout,\n toBinary() {\n return requests.GenericCommandRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.GenericCommandResponseCollection>(\n 'interface/generic_command_multi_response',\n request,\n requests.GenericCommandResponseCollection.fromBinary);\n return response.responses;\n }\n\n /**\n * Enables alerts for all devices on the connection.\n * This will change the \"comm.alert\" setting to 1 on all supported devices.\n */\n public async enableAlerts(): Promise<void> {\n const request: requests.GenericCommandRequest & gateway.Message = {\n ...requests.GenericCommandRequest.DEFAULT,\n interfaceId: this.interfaceId,\n command: 'set comm.alert 1',\n toBinary() {\n return requests.GenericCommandRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('interface/generic_command_no_response', request);\n }\n\n /**\n * Disables alerts for all devices on the connection.\n * This will change the \"comm.alert\" setting to 0 on all supported devices.\n */\n public async disableAlerts(): Promise<void> {\n const request: requests.GenericCommandRequest & gateway.Message = {\n ...requests.GenericCommandRequest.DEFAULT,\n interfaceId: this.interfaceId,\n command: 'set comm.alert 0',\n toBinary() {\n return requests.GenericCommandRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('interface/generic_command_no_response', request);\n }\n\n /**\n * Resets ASCII protocol message IDs. Only for testing purposes.\n */\n public resetIds(): void {\n const request: requests.InterfaceEmptyRequest & gateway.Message = {\n ...requests.InterfaceEmptyRequest.DEFAULT,\n interfaceId: this.interfaceId,\n toBinary() {\n return requests.InterfaceEmptyRequest.toBinary(this);\n },\n };\n\n gateway.callSync('interface/reset_ids', request);\n }\n\n /**\n * Close the connection.\n */\n public async close(): Promise<void> {\n const request: requests.InterfaceEmptyRequest & gateway.Message = {\n ...requests.InterfaceEmptyRequest.DEFAULT,\n interfaceId: this.interfaceId,\n toBinary() {\n return requests.InterfaceEmptyRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('interface/close', request);\n }\n\n /**\n * Gets a Device class instance which allows you to control a particular device on this connection.\n * Devices are numbered from 1.\n * @param deviceAddress Address of device intended to control. Address is configured for each device.\n * @returns Device instance.\n */\n public getDevice(\n deviceAddress: number\n ): Device {\n if (deviceAddress <= 0) {\n throw new TypeError('Invalid value; physical devices are numbered from 1.');\n }\n return new Device(this, deviceAddress);\n }\n\n /**\n * Renumbers devices present on this connection. After renumbering, devices need to be identified again.\n * @param [options.firstAddress=1] This is the address that the device closest to the computer is given.\n * Remaining devices are numbered consecutively.\n * @returns Total number of devices that responded to the renumber.\n */\n public async renumberDevices(\n options: Connection.RenumberDevicesOptions = {}\n ): Promise<number> {\n const {\n firstAddress = 1,\n } = options;\n if (firstAddress <= 0) {\n throw new TypeError('Invalid value; device addresses are numbered from 1.');\n }\n const request: requests.RenumberRequest & gateway.Message = {\n ...requests.RenumberRequest.DEFAULT,\n interfaceId: this.interfaceId,\n address: firstAddress,\n toBinary() {\n return requests.RenumberRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.IntResponse>(\n 'device/renumber_all',\n request,\n requests.IntResponse.fromBinary);\n return response.value;\n }\n\n /**\n * Attempts to detect any devices present on this connection.\n * @param [options.identifyDevices=true] Determines whether device identification should be performed as well.\n * @returns Array of detected devices.\n */\n public async detectDevices(\n options: Connection.DetectDevicesOptions = {}\n ): Promise<Device[]> {\n const {\n identifyDevices = true,\n } = options;\n const request: requests.DeviceDetectRequest & gateway.Message = {\n ...requests.DeviceDetectRequest.DEFAULT,\n interfaceId: this.interfaceId,\n identifyDevices: identifyDevices,\n toBinary() {\n return requests.DeviceDetectRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.DeviceDetectResponse>(\n 'device/detect',\n request,\n requests.DeviceDetectResponse.fromBinary);\n return response.devices.map(deviceAddress => this.getDevice(deviceAddress));\n }\n\n /**\n * Forgets all the information associated with devices on the connection.\n * Useful when devices are removed from the chain indefinitely.\n * @param [exceptDevices=[]] Addresses of devices that should not be forgotten.\n */\n public forgetDevices(\n exceptDevices: number[] = []\n ): void {\n const request: requests.ForgetDevicesRequest & gateway.Message = {\n ...requests.ForgetDevicesRequest.DEFAULT,\n interfaceId: this.interfaceId,\n exceptDevices: exceptDevices,\n toBinary() {\n return requests.ForgetDevicesRequest.toBinary(this);\n },\n };\n\n gateway.callSync('device/forget', request);\n }\n\n /**\n * Stops all of the devices on this connection.\n * @param [options.waitUntilIdle=true] Determines whether the function should return immediately\n * or wait until the devices are stopped.\n * @returns The addresses of the devices that were stopped by this command.\n */\n public async stopAll(\n options: Connection.StopAllOptions = {}\n ): Promise<number[]> {\n const {\n waitUntilIdle = true,\n } = options;\n const request: requests.DeviceOnAllRequest & gateway.Message = {\n ...requests.DeviceOnAllRequest.DEFAULT,\n interfaceId: this.interfaceId,\n waitUntilIdle: waitUntilIdle,\n toBinary() {\n return requests.DeviceOnAllRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.DeviceOnAllResponse>(\n 'device/stop_all',\n request,\n requests.DeviceOnAllResponse.fromBinary);\n return response.deviceAddresses;\n }\n\n /**\n * Homes all of the devices on this connection.\n * @param [options.waitUntilIdle=true] Determines whether the function should return immediately\n * or wait until the devices are homed.\n * @returns The addresses of the devices that were homed by this command.\n */\n public async homeAll(\n options: Connection.HomeAllOptions = {}\n ): Promise<number[]> {\n const {\n waitUntilIdle = true,\n } = options;\n const request: requests.DeviceOnAllRequest & gateway.Message = {\n ...requests.DeviceOnAllRequest.DEFAULT,\n interfaceId: this.interfaceId,\n waitUntilIdle: waitUntilIdle,\n toBinary() {\n return requests.DeviceOnAllRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.DeviceOnAllResponse>(\n 'device/home_all',\n request,\n requests.DeviceOnAllResponse.fromBinary);\n return response.deviceAddresses;\n }\n\n /**\n * Returns a string that represents the connection.\n * @returns A string that represents the connection.\n */\n public toString(): string {\n const request: requests.InterfaceEmptyRequest & gateway.Message = {\n ...requests.InterfaceEmptyRequest.DEFAULT,\n interfaceId: this.interfaceId,\n toBinary() {\n return requests.InterfaceEmptyRequest.toBinary(this);\n },\n };\n\n const response = gateway.callSync<requests.StringResponse>(\n 'interface/to_string',\n request,\n requests.StringResponse.fromBinary);\n return response.value;\n }\n\n /**\n * Returns default request timeout.\n * @returns Default request timeout.\n */\n private _retrieveTimeout(): number {\n const request: requests.InterfaceEmptyRequest & gateway.Message = {\n ...requests.InterfaceEmptyRequest.DEFAULT,\n interfaceId: this.interfaceId,\n toBinary() {\n return requests.InterfaceEmptyRequest.toBinary(this);\n },\n };\n\n const response = gateway.callSync<requests.IntResponse>(\n 'interface/get_timeout',\n request,\n requests.IntResponse.fromBinary);\n return response.value;\n }\n\n /**\n * Sets default request timeout.\n * @param timeout Default request timeout.\n */\n private _changeTimeout(\n timeout: number\n ): void {\n const request: requests.SetInterfaceTimeoutRequest & gateway.Message = {\n ...requests.SetInterfaceTimeoutRequest.DEFAULT,\n interfaceId: this.interfaceId,\n timeout: timeout,\n toBinary() {\n return requests.SetInterfaceTimeoutRequest.toBinary(this);\n },\n };\n\n gateway.callSync('interface/set_timeout', request);\n }\n\n /**\n * Returns checksum enabled.\n * @returns Checksum enabled.\n */\n private _retrieveChecksumEnabled(): boolean {\n const request: requests.InterfaceEmptyRequest & gateway.Message = {\n ...requests.InterfaceEmptyRequest.DEFAULT,\n interfaceId: this.interfaceId,\n toBinary() {\n return requests.InterfaceEmptyRequest.toBinary(this);\n },\n };\n\n const response = gateway.callSync<requests.BoolResponse>(\n 'interface/get_checksum_enabled',\n request,\n requests.BoolResponse.fromBinary);\n return response.value;\n }\n\n /**\n * Sets checksum enabled.\n * @param isEnabled Checksum enabled.\n */\n private _changeChecksumEnabled(\n isEnabled: boolean\n ): void {\n const request: requests.SetInterfaceChecksumEnabledRequest & gateway.Message = {\n ...requests.SetInterfaceChecksumEnabledRequest.DEFAULT,\n interfaceId: this.interfaceId,\n isEnabled: isEnabled,\n toBinary() {\n return requests.SetInterfaceChecksumEnabledRequest.toBinary(this);\n },\n };\n\n gateway.callSync('interface/set_checksum_enabled', request);\n }\n\n /**\n * Returns is open.\n * @returns Is open.\n */\n private _retrieveIsOpen(): boolean {\n const request: requests.InterfaceEmptyRequest & gateway.Message = {\n ...requests.InterfaceEmptyRequest.DEFAULT,\n interfaceId: this.interfaceId,\n toBinary() {\n return requests.InterfaceEmptyRequest.toBinary(this);\n },\n };\n\n const response = gateway.callSync<requests.BoolResponse>(\n 'interface/get_is_open',\n request,\n requests.BoolResponse.fromBinary);\n return response.value;\n }\n\n /**\n * Releases native resources of the connection.\n * @param interfaceId The ID of the connection.\n */\n private static _free(\n interfaceId: number\n ): void {\n const request: requests.InterfaceEmptyRequest & gateway.Message = {\n ...requests.InterfaceEmptyRequest.DEFAULT,\n interfaceId: interfaceId,\n toBinary() {\n return requests.InterfaceEmptyRequest.toBinary(this);\n },\n };\n\n gateway.callSync('interface/free', request);\n }\n\n private _subscribe(sessionId: number): void {\n this._disconnected = new ReplaySubject<MotionLibException>();\n\n const filterLocalEvent = <TEvent extends { interfaceId: number; sessionId: number }>(event: TEvent): boolean =>\n event.interfaceId === this.interfaceId && event.sessionId === sessionId;\n\n this.unknownResponse = events.pipe(\n takeUntil(this._disconnected),\n filterEvent<requests.UnknownResponseEventWrapper>('interface/unknown_response'),\n filter(filterLocalEvent),\n map(event => event.unknownResponse)\n );\n\n this.alert = events.pipe(\n takeUntil(this._disconnected),\n filterEvent<requests.AlertEventWrapper>('interface/alert'),\n filter(filterLocalEvent),\n map(event => event.alert)\n );\n\n events.pipe(\n filterEvent<requests.DisconnectedEvent>('interface/disconnected'),\n filter(filterLocalEvent),\n take(1),\n map(({ errorMessage, errorType }) => gateway.convertToException(errorType, errorMessage))\n ).subscribe(this._disconnected);\n }\n\n /**\n * Releases the native resources of the connection.\n * Should only be called if your environment does not support FinalizationRegistry.\n * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/FinalizationRegistry\n */\n public free(): void {\n Connection._free(this.interfaceId);\n }\n}\n\nnamespace Connection {\n export interface OpenSerialPortOptions {\n /**\n * Optional baud rate (defaults to 115200).\n */\n baudRate?: number;\n /**\n * If true will connect to the serial port directly,\n * failing if the connection is already opened by a message router instance.\n */\n direct?: boolean;\n /**\n * Some operating systems may allow opening a serial port that is not writable.\n * Tests if the serial port is writable, and throws an exception if it is not.\n */\n testPort?: boolean;\n }\n export interface OpenIotOptions {\n /**\n * The token to authenticate with. By default the connection will be unauthenticated.\n */\n token?: string;\n /**\n * The name of the connection to open.\n * Can be left empty to default to the only connection present.\n * Otherwise, use serial port name for serial port connection or hostname:port for TCP connection.\n */\n connectionName?: string;\n /**\n * The realm to connect to.\n * Can be left empty for the default account realm.\n */\n realm?: string;\n /**\n * The URL of the API to receive connection info from.\n */\n api?: string;\n }\n export interface GenericCommandOptions {\n /**\n * Optional device address to send the command to.\n */\n device?: number;\n /**\n * Optional axis number to send the command to.\n */\n axis?: number;\n /**\n * Controls whether to throw an exception when the device rejects the command.\n */\n checkErrors?: boolean;\n /**\n * The timeout, in milliseconds, for a device to respond to the command.\n * Overrides the connection default request timeout.\n */\n timeout?: number;\n }\n export interface GenericCommandNoResponseOptions {\n /**\n * Optional device address to send the command to.\n * Specifying -1 omits the number completely.\n */\n device?: number;\n /**\n * Optional axis number to send the command to.\n * Specifying -1 omits the number completely.\n */\n axis?: number;\n }\n export interface GenericCommandMultiResponseOptions {\n /**\n * Optional device address to send the command to.\n */\n device?: number;\n /**\n * Optional axis number to send the command to.\n */\n axis?: number;\n /**\n * Controls whether to throw an exception when a device rejects the command.\n */\n checkErrors?: boolean;\n /**\n * The timeout, in milliseconds, for a device to respond to the command.\n * Overrides the connection default request timeout.\n */\n timeout?: number;\n }\n export interface RenumberDevicesOptions {\n /**\n * This is the address that the device closest to the computer is given.\n * Remaining devices are numbered consecutively.\n */\n firstAddress?: number;\n }\n export interface DetectDevicesOptions {\n /**\n * Determines whether device identification should be performed as well.\n */\n identifyDevices?: boolean;\n }\n export interface StopAllOptions {\n /**\n * Determines whether the function should return immediately\n * or wait until the devices are stopped.\n */\n waitUntilIdle?: boolean;\n }\n export interface HomeAllOptions {\n /**\n * Determines whether the function should return immediately\n * or wait until the devices are homed.\n */\n waitUntilIdle?: boolean;\n }\n}\n"]}
@@ -1,22 +1,22 @@
1
- import { Connection } from './connection';
2
- import { DeviceSettings } from './device_settings';
3
- import { Axis } from './axis';
1
+ import { FirmwareVersion } from '../firmware_version';
2
+ import { Measurement } from '../measurement';
3
+ import { UnitConversionDescriptor } from '../unit_conversion_descriptor';
4
4
  import { AllAxes } from './all_axes';
5
- import { Warnings } from './warnings';
6
- import { DeviceIdentity } from './device_identity';
5
+ import { Axis } from './axis';
6
+ import { CanSetStateDeviceResponse } from './can_set_state_device_response';
7
+ import { Connection } from './connection';
7
8
  import { DeviceIO } from './device_io';
8
- import { Response } from './response';
9
+ import { DeviceIdentity } from './device_identity';
10
+ import { DeviceSettings } from './device_settings';
11
+ import { DeviceStorage } from './device_storage';
9
12
  import { Lockstep } from './lockstep';
10
13
  import { Oscilloscope } from './oscilloscope';
11
- import { CanSetStateDeviceResponse } from './can_set_state_device_response';
12
14
  import { Pvt } from './pvt';
13
- import { Measurement } from '../measurement';
14
- import { FirmwareVersion } from '../firmware_version';
15
- import { UnitConversionDescriptor } from '../unit_conversion_descriptor';
16
- import { DeviceStorage } from './storage';
17
- import { Triggers } from './triggers';
18
- import { Streams } from './streams';
15
+ import { Response } from './response';
19
16
  import { SetStateDeviceResponse } from './set_state_device_response';
17
+ import { Streams } from './streams';
18
+ import { Triggers } from './triggers';
19
+ import { Warnings } from './warnings';
20
20
  /**
21
21
  * Represents the controller part of one device - may be either a standalone controller or an integrated controller.
22
22
  */
@@ -1 +1 @@
1
- {"version":3,"file":"device.d.ts","sourceRoot":"","sources":["../../../src/ascii/device.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"device.d.ts","sourceRoot":"","sources":["../../../src/ascii/device.ts"],"names":[],"mappings":"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"}
@@ -26,23 +26,23 @@ var __importStar = (this && this.__importStar) || function (mod) {
26
26
  };
27
27
  Object.defineProperty(exports, "__esModule", { value: true });
28
28
  exports.Device = void 0;
29
- const device_settings_1 = require("./device_settings");
30
- const axis_1 = require("./axis");
29
+ const gateway = __importStar(require("../gateway"));
30
+ const requests = __importStar(require("../requests"));
31
31
  const all_axes_1 = require("./all_axes");
32
- const warnings_1 = require("./warnings");
33
- const device_identity_1 = require("./device_identity");
32
+ const axis_1 = require("./axis");
33
+ const can_set_state_device_response_1 = require("./can_set_state_device_response");
34
34
  const device_io_1 = require("./device_io");
35
- const response_1 = require("./response");
35
+ const device_identity_1 = require("./device_identity");
36
+ const device_settings_1 = require("./device_settings");
37
+ const device_storage_1 = require("./device_storage");
36
38
  const lockstep_1 = require("./lockstep");
37
39
  const oscilloscope_1 = require("./oscilloscope");
38
- const can_set_state_device_response_1 = require("./can_set_state_device_response");
39
40
  const pvt_1 = require("./pvt");
40
- const gateway = __importStar(require("../gateway"));
41
- const requests = __importStar(require("../requests"));
42
- const storage_1 = require("./storage");
43
- const triggers_1 = require("./triggers");
44
- const streams_1 = require("./streams");
41
+ const response_1 = require("./response");
45
42
  const set_state_device_response_1 = require("./set_state_device_response");
43
+ const streams_1 = require("./streams");
44
+ const triggers_1 = require("./triggers");
45
+ const warnings_1 = require("./warnings");
46
46
  /**
47
47
  * Represents the controller part of one device - may be either a standalone controller or an integrated controller.
48
48
  */
@@ -178,7 +178,7 @@ class Device {
178
178
  this._connection = connection;
179
179
  this._deviceAddress = deviceAddress;
180
180
  this._settings = new device_settings_1.DeviceSettings(this);
181
- this._storage = new storage_1.DeviceStorage(this);
181
+ this._storage = new device_storage_1.DeviceStorage(this);
182
182
  this._io = new device_io_1.DeviceIO(this);
183
183
  this._allAxes = new all_axes_1.AllAxes(this);
184
184
  this._warnings = new warnings_1.Warnings(this, 0);
@@ -1 +1 @@
1
- {"version":3,"file":"device.js","sourceRoot":"","sources":["../../../src/ascii/device.ts"],"names":[],"mappings":"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","sourcesContent":["// ==== THIS FILE IS GENERATED FROM A TEMPLATE ==== //\n// ============= DO NOT EDIT DIRECTLY ============= //\n\nimport { Connection } from './connection';\nimport { DeviceSettings } from './device_settings';\nimport { Axis } from './axis';\nimport { AllAxes } from './all_axes';\nimport { Warnings } from './warnings';\nimport { DeviceIdentity } from './device_identity';\nimport { DeviceIO } from './device_io';\nimport { Response } from './response';\nimport { Lockstep } from './lockstep';\nimport { Oscilloscope } from './oscilloscope';\nimport { CanSetStateDeviceResponse } from './can_set_state_device_response';\nimport { Pvt } from './pvt';\nimport { Measurement } from '../measurement';\nimport { FirmwareVersion } from '../firmware_version';\nimport * as gateway from '../gateway';\nimport * as requests from '../requests';\nimport { UnitConversionDescriptor } from '../unit_conversion_descriptor';\nimport { DeviceStorage } from './storage';\nimport { Triggers } from './triggers';\nimport { Streams } from './streams';\nimport { SetStateDeviceResponse } from './set_state_device_response';\n\n/**\n * Represents the controller part of one device - may be either a standalone controller or an integrated controller.\n */\nexport class Device {\n /**\n * Connection of this device.\n */\n public get connection(): Connection {\n return this._connection;\n }\n private _connection: Connection;\n\n /**\n * The device address uniquely identifies the device on the connection.\n * It can be configured or automatically assigned by the renumber command.\n */\n public get deviceAddress(): number {\n return this._deviceAddress;\n }\n private _deviceAddress: number;\n\n /**\n * Settings and properties of this device.\n */\n public get settings(): DeviceSettings {\n return this._settings;\n }\n private _settings: DeviceSettings;\n\n /**\n * Key-value storage of this device.\n */\n public get storage(): DeviceStorage {\n return this._storage;\n }\n private _storage: DeviceStorage;\n\n /**\n * I/O channels of this device.\n */\n public get io(): DeviceIO {\n return this._io;\n }\n private _io: DeviceIO;\n\n /**\n * Virtual axis which allows you to target all axes of this device.\n */\n public get allAxes(): AllAxes {\n return this._allAxes;\n }\n private _allAxes: AllAxes;\n\n /**\n * Warnings and faults of this device and all its axes.\n */\n public get warnings(): Warnings {\n return this._warnings;\n }\n private _warnings: Warnings;\n\n /**\n * Identity of the device.\n */\n public get identity(): DeviceIdentity {\n return this._retrieveIdentity();\n }\n\n /**\n * Indicates whether or not the device has been identified.\n */\n public get isIdentified(): boolean {\n return this._retrieveIsIdentified();\n }\n\n /**\n * Oscilloscope recording helper for this device.\n * Requires at least Firmware 7.00.\n */\n public get oscilloscope(): Oscilloscope {\n return this._oscilloscope;\n }\n private _oscilloscope: Oscilloscope;\n\n /**\n * Unique ID of the device hardware.\n */\n public get deviceId(): number {\n return this.identity.deviceId;\n }\n\n /**\n * Serial number of the device.\n */\n public get serialNumber(): number {\n return this.identity.serialNumber;\n }\n\n /**\n * Name of the product.\n */\n public get name(): string {\n return this.identity.name;\n }\n\n /**\n * Number of axes this device has.\n */\n public get axisCount(): number {\n return this.identity.axisCount;\n }\n\n /**\n * Version of the firmware.\n */\n public get firmwareVersion(): FirmwareVersion {\n return this.identity.firmwareVersion;\n }\n\n /**\n * The device is an integrated product.\n */\n public get isIntegrated(): boolean {\n return this.identity.isIntegrated;\n }\n\n /**\n * User-assigned label of the device.\n */\n public get label(): string {\n return this._retrieveLabel();\n }\n\n /**\n * Triggers for this device.\n * Requires at least Firmware 7.06.\n */\n public get triggers(): Triggers {\n return this._triggers;\n }\n private _triggers: Triggers;\n\n /**\n * Gets an object that provides access to Streams on this device.\n * Requires at least Firmware 7.05.\n */\n public get streams(): Streams {\n return this._streams;\n }\n private _streams: Streams;\n\n /**\n * Gets an object that provides access to PVT functions of this device.\n * Note that as of ZML v5.0.0, this returns a Pvt object and NOT a PvtSequence object.\n * The PvtSequence can now be obtained from the Pvt object.\n * Requires at least Firmware 7.33.\n */\n public get pvt(): Pvt {\n return this._pvt;\n }\n private _pvt: Pvt;\n\n constructor(connection: Connection, deviceAddress: number) {\n this._connection = connection;\n this._deviceAddress = deviceAddress;\n this._settings = new DeviceSettings(this);\n this._storage = new DeviceStorage(this);\n this._io = new DeviceIO(this);\n this._allAxes = new AllAxes(this);\n this._warnings = new Warnings(this, 0);\n this._oscilloscope = new Oscilloscope(this);\n this._triggers = new Triggers(this);\n this._streams = new Streams(this);\n this._pvt = new Pvt(this);\n }\n\n /**\n * Queries the device and the database, gathering information about the product.\n * Without this information features such as unit conversions will not work.\n * Usually, called automatically by detect devices method.\n * @param options.assumeVersion The identification assumes the specified firmware version\n * instead of the version queried from the device.\n * Providing this argument can lead to unexpected compatibility issues.\n * @returns Device identification data.\n */\n public async identify(\n options: Device.IdentifyOptions = {}\n ): Promise<DeviceIdentity> {\n const {\n assumeVersion,\n } = options;\n const request: requests.DeviceIdentifyRequest & gateway.Message = {\n ...requests.DeviceIdentifyRequest.DEFAULT,\n interfaceId: this.connection.interfaceId,\n device: this.deviceAddress,\n assumeVersion: assumeVersion,\n toBinary() {\n return requests.DeviceIdentifyRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<DeviceIdentity>(\n 'device/identify',\n request,\n DeviceIdentity.fromBinary);\n return response;\n }\n\n /**\n * Sends a generic ASCII command to this device.\n * For more information refer to: [ASCII Protocol Manual](https://www.zaber.com/protocol-manual#topic_commands).\n * @param command Command and its parameters.\n * @param [options.axis=0] Optional axis number to send the command to.\n * @param [options.checkErrors=true] Controls whether to throw an exception when the device rejects the command.\n * @param [options.timeout=0] The timeout, in milliseconds, for a device to respond to the command.\n * Overrides the connection default request timeout.\n * @returns A response to the command.\n */\n public async genericCommand(\n command: string,\n options: Device.GenericCommandOptions = {}\n ): Promise<Response> {\n const {\n axis = 0,\n checkErrors = true,\n timeout = 0,\n } = options;\n const request: requests.GenericCommandRequest & gateway.Message = {\n ...requests.GenericCommandRequest.DEFAULT,\n interfaceId: this.connection.interfaceId,\n device: this.deviceAddress,\n command: command,\n axis: axis,\n checkErrors: checkErrors,\n timeout: timeout,\n toBinary() {\n return requests.GenericCommandRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<Response>(\n 'interface/generic_command',\n request,\n Response.fromBinary);\n return response;\n }\n\n /**\n * Sends a generic ASCII command to this device and expect multiple responses.\n * Responses are returned in order of arrival.\n * For more information refer to: [ASCII Protocol Manual](https://www.zaber.com/protocol-manual#topic_commands).\n * @param command Command and its parameters.\n * @param [options.axis=0] Optional axis number to send the command to.\n * @param [options.checkErrors=true] Controls whether to throw an exception when a device rejects the command.\n * @param [options.timeout=0] The timeout, in milliseconds, for a device to respond to the command.\n * Overrides the connection default request timeout.\n * @returns All responses to the command.\n */\n public async genericCommandMultiResponse(\n command: string,\n options: Device.GenericCommandMultiResponseOptions = {}\n ): Promise<Response[]> {\n const {\n axis = 0,\n checkErrors = true,\n timeout = 0,\n } = options;\n const request: requests.GenericCommandRequest & gateway.Message = {\n ...requests.GenericCommandRequest.DEFAULT,\n interfaceId: this.connection.interfaceId,\n device: this.deviceAddress,\n command: command,\n axis: axis,\n checkErrors: checkErrors,\n timeout: timeout,\n toBinary() {\n return requests.GenericCommandRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.GenericCommandResponseCollection>(\n 'interface/generic_command_multi_response',\n request,\n requests.GenericCommandResponseCollection.fromBinary);\n return response.responses;\n }\n\n /**\n * Sends a generic ASCII command to this device without expecting a response and without adding a message ID\n * For more information refer to: [ASCII Protocol Manual](https://www.zaber.com/protocol-manual#topic_commands).\n * @param command Command and its parameters.\n * @param [options.axis=0] Optional axis number to send the command to.\n * Specifying -1 omits the number completely.\n */\n public async genericCommandNoResponse(\n command: string,\n options: Device.GenericCommandNoResponseOptions = {}\n ): Promise<void> {\n const {\n axis = 0,\n } = options;\n const request: requests.GenericCommandRequest & gateway.Message = {\n ...requests.GenericCommandRequest.DEFAULT,\n interfaceId: this.connection.interfaceId,\n device: this.deviceAddress,\n command: command,\n axis: axis,\n toBinary() {\n return requests.GenericCommandRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('interface/generic_command_no_response', request);\n }\n\n /**\n * Gets an Axis class instance which allows you to control a particular axis on this device.\n * Axes are numbered from 1.\n * @param axisNumber Number of axis intended to control.\n * @returns Axis instance.\n */\n public getAxis(\n axisNumber: number\n ): Axis {\n if (axisNumber <= 0) {\n throw new TypeError('Invalid value; physical axes are numbered from 1.');\n }\n return new Axis(this, axisNumber);\n }\n\n /**\n * Gets a Lockstep class instance which allows you to control a particular lockstep group on the device.\n * Requires at least Firmware 6.15 or 7.11.\n * @param lockstepGroupId The ID of the lockstep group to control. Lockstep group IDs start at one.\n * @returns Lockstep instance.\n */\n public getLockstep(\n lockstepGroupId: number\n ): Lockstep {\n if (lockstepGroupId <= 0) {\n throw new TypeError('Invalid value; lockstep groups are numbered from 1.');\n }\n return new Lockstep(this, lockstepGroupId);\n }\n\n /**\n * Formats parameters into a command and performs unit conversions.\n * Parameters in the command template are denoted by a question mark.\n * Command returned is only valid for this device.\n * Unit conversion is not supported for commands where axes can be remapped, such as stream and PVT commands.\n * For more information refer to: [ASCII Protocol Manual](https://www.zaber.com/protocol-manual#topic_commands).\n * @param commandTemplate Template of a command to prepare. Parameters are denoted by question marks.\n * @param parameters Variable number of command parameters.\n * @returns Command with converted parameters.\n */\n public prepareCommand(\n commandTemplate: string,\n ...parameters: Measurement[]\n ): string {\n const request: requests.PrepareCommandRequest & gateway.Message = {\n ...requests.PrepareCommandRequest.DEFAULT,\n interfaceId: this.connection.interfaceId,\n device: this.deviceAddress,\n commandTemplate: commandTemplate,\n parameters: parameters,\n toBinary() {\n return requests.PrepareCommandRequest.toBinary(this);\n },\n };\n\n const response = gateway.callSync<requests.StringResponse>(\n 'device/prepare_command',\n request,\n requests.StringResponse.fromBinary);\n return response.value;\n }\n\n /**\n * Retrieves unit conversion descriptors for a command, allowing unit conversion without a device.\n * The descriptors can be used with the ConvertTo/FromNativeUnits methods of the UnitTable class.\n * Parameters in the command template are denoted by a question mark.\n * For more information refer to: [ASCII Protocol Manual](https://www.zaber.com/protocol-manual#topic_commands).\n * @param commandTemplate Template of the command. Parameters are denoted by question marks.\n * @returns Unit conversion descriptor for each parameter in the command. Nil if a parameter does not have conversion.\n */\n public getCommandUnitConversionDescriptors(\n commandTemplate: string\n ): (UnitConversionDescriptor | null)[] {\n const request: requests.PrepareCommandRequest & gateway.Message = {\n ...requests.PrepareCommandRequest.DEFAULT,\n interfaceId: this.connection.interfaceId,\n device: this.deviceAddress,\n commandTemplate: commandTemplate,\n toBinary() {\n return requests.PrepareCommandRequest.toBinary(this);\n },\n };\n\n const response = gateway.callSync<requests.GetCommandUnitConversionResponse>(\n 'device/get_command_unit_conversion',\n request,\n requests.GetCommandUnitConversionResponse.fromBinary);\n return response.value;\n }\n\n /**\n * Sets the user-assigned device label.\n * The label is stored on the controller and recognized by other software.\n * @param label Label to set.\n */\n public async setLabel(\n label: string\n ): Promise<void> {\n const request: requests.DeviceSetStorageRequest & gateway.Message = {\n ...requests.DeviceSetStorageRequest.DEFAULT,\n interfaceId: this.connection.interfaceId,\n device: this.deviceAddress,\n value: label,\n toBinary() {\n return requests.DeviceSetStorageRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/set_label', request);\n }\n\n /**\n * Gets the device name.\n * @returns The label.\n */\n private _retrieveLabel(): string {\n const request: requests.AxisEmptyRequest & gateway.Message = {\n ...requests.AxisEmptyRequest.DEFAULT,\n interfaceId: this.connection.interfaceId,\n device: this.deviceAddress,\n toBinary() {\n return requests.AxisEmptyRequest.toBinary(this);\n },\n };\n\n const response = gateway.callSync<requests.StringResponse>(\n 'device/get_label',\n request,\n requests.StringResponse.fromBinary);\n return response.value;\n }\n\n /**\n * Returns a string that represents the device.\n * @returns A string that represents the device.\n */\n public toString(): string {\n const request: requests.AxisToStringRequest & gateway.Message = {\n ...requests.AxisToStringRequest.DEFAULT,\n interfaceId: this.connection.interfaceId,\n device: this.deviceAddress,\n toBinary() {\n return requests.AxisToStringRequest.toBinary(this);\n },\n };\n\n const response = gateway.callSync<requests.StringResponse>(\n 'device/device_to_string',\n request,\n requests.StringResponse.fromBinary);\n return response.value;\n }\n\n /**\n * Returns a serialization of the current device state that can be saved and reapplied.\n * @returns A serialization of the current state of the device.\n */\n public async getState(): Promise<string> {\n const request: requests.AxisEmptyRequest & gateway.Message = {\n ...requests.AxisEmptyRequest.DEFAULT,\n interfaceId: this.connection.interfaceId,\n device: this.deviceAddress,\n toBinary() {\n return requests.AxisEmptyRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.StringResponse>(\n 'device/get_state',\n request,\n requests.StringResponse.fromBinary);\n return response.value;\n }\n\n /**\n * Applies a saved state to this device.\n * @param state The state object to apply to this device.\n * @param [options.deviceOnly=false] If true, only device scope settings and features will be set.\n * @returns Reports of any issues that were handled, but caused the state to not be exactly restored.\n */\n public async setState(\n state: string,\n options: Device.SetStateOptions = {}\n ): Promise<SetStateDeviceResponse> {\n const {\n deviceOnly = false,\n } = options;\n const request: requests.SetStateRequest & gateway.Message = {\n ...requests.SetStateRequest.DEFAULT,\n interfaceId: this.connection.interfaceId,\n device: this.deviceAddress,\n state: state,\n deviceOnly: deviceOnly,\n toBinary() {\n return requests.SetStateRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<SetStateDeviceResponse>(\n 'device/set_device_state',\n request,\n SetStateDeviceResponse.fromBinary);\n return response;\n }\n\n /**\n * Checks if a state can be applied to this device.\n * This only covers exceptions that can be determined statically such as mismatches of ID or version,\n * the process of applying the state can still fail when running.\n * @param state The state object to check against.\n * @param options.firmwareVersion The firmware version of the device to apply the state to.\n * Use this to ensure the state will still be compatible after an update.\n * @returns An object listing errors that come up when trying to set the state.\n */\n public async canSetState(\n state: string,\n options: Device.CanSetStateOptions = {}\n ): Promise<CanSetStateDeviceResponse> {\n const {\n firmwareVersion,\n } = options;\n const request: requests.CanSetStateRequest & gateway.Message = {\n ...requests.CanSetStateRequest.DEFAULT,\n interfaceId: this.connection.interfaceId,\n device: this.deviceAddress,\n state: state,\n firmwareVersion: firmwareVersion,\n toBinary() {\n return requests.CanSetStateRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<CanSetStateDeviceResponse>(\n 'device/can_set_state',\n request,\n CanSetStateDeviceResponse.fromBinary);\n return response;\n }\n\n /**\n * Waits for the device to start responding to messages.\n * Useful to call after resetting the device.\n * Throws RequestTimeoutException upon timeout.\n * @param timeout For how long to wait in milliseconds for the device to start responding.\n */\n public async waitToRespond(\n timeout: number\n ): Promise<void> {\n const request: requests.WaitToRespondRequest & gateway.Message = {\n ...requests.WaitToRespondRequest.DEFAULT,\n interfaceId: this.connection.interfaceId,\n device: this.deviceAddress,\n timeout: timeout,\n toBinary() {\n return requests.WaitToRespondRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/wait_to_respond', request);\n }\n\n /**\n * Changes the address of this device.\n * After the address is successfully changed, the existing device class instance no longer represents the device.\n * Instead, use the new device instance returned by this method.\n * @param address The new address to assign to the device.\n * @returns New device instance with the new address.\n */\n public async renumber(\n address: number\n ): Promise<Device> {\n if (address < 1 || address > 99) {\n throw new TypeError('Invalid value; device addresses are numbered from 1 to 99.');\n }\n const request: requests.RenumberRequest & gateway.Message = {\n ...requests.RenumberRequest.DEFAULT,\n interfaceId: this.connection.interfaceId,\n device: this.deviceAddress,\n address: address,\n toBinary() {\n return requests.RenumberRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.IntResponse>(\n 'device/renumber',\n request,\n requests.IntResponse.fromBinary);\n return new Device(this.connection, response.value);\n }\n\n /**\n * Restores most of the settings to their default values.\n * Deletes all triggers, stream and PVT buffers, servo tunings.\n * Deletes all zaber storage keys.\n * Disables locksteps, unparks axes.\n * Preserves storage, communication settings, peripherals (unless hard is specified).\n * The device needs to be identified again after the restore.\n * @param [hard=false] If true, completely erases device's memory. The device also resets.\n */\n public async restore(\n hard: boolean = false\n ): Promise<void> {\n const request: requests.DeviceRestoreRequest & gateway.Message = {\n ...requests.DeviceRestoreRequest.DEFAULT,\n interfaceId: this.connection.interfaceId,\n device: this.deviceAddress,\n hard: hard,\n toBinary() {\n return requests.DeviceRestoreRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/restore', request);\n }\n\n /**\n * Returns identity.\n * @returns Device identity.\n */\n private _retrieveIdentity(): DeviceIdentity {\n const request: requests.DeviceEmptyRequest & gateway.Message = {\n ...requests.DeviceEmptyRequest.DEFAULT,\n interfaceId: this.connection.interfaceId,\n device: this.deviceAddress,\n toBinary() {\n return requests.DeviceEmptyRequest.toBinary(this);\n },\n };\n\n const response = gateway.callSync<DeviceIdentity>(\n 'device/get_identity',\n request,\n DeviceIdentity.fromBinary);\n return response;\n }\n\n /**\n * Returns whether or not the device have been identified.\n * @returns True if the device has already been identified. False otherwise.\n */\n private _retrieveIsIdentified(): boolean {\n const request: requests.DeviceEmptyRequest & gateway.Message = {\n ...requests.DeviceEmptyRequest.DEFAULT,\n interfaceId: this.connection.interfaceId,\n device: this.deviceAddress,\n toBinary() {\n return requests.DeviceEmptyRequest.toBinary(this);\n },\n };\n\n const response = gateway.callSync<requests.BoolResponse>(\n 'device/get_is_identified',\n request,\n requests.BoolResponse.fromBinary);\n return response.value;\n }\n}\n\nnamespace Device {\n export interface IdentifyOptions {\n /**\n * The identification assumes the specified firmware version\n * instead of the version queried from the device.\n * Providing this argument can lead to unexpected compatibility issues.\n */\n assumeVersion?: FirmwareVersion;\n }\n export interface GenericCommandOptions {\n /**\n * Optional axis number to send the command to.\n */\n axis?: number;\n /**\n * Controls whether to throw an exception when the device rejects the command.\n */\n checkErrors?: boolean;\n /**\n * The timeout, in milliseconds, for a device to respond to the command.\n * Overrides the connection default request timeout.\n */\n timeout?: number;\n }\n export interface GenericCommandMultiResponseOptions {\n /**\n * Optional axis number to send the command to.\n */\n axis?: number;\n /**\n * Controls whether to throw an exception when a device rejects the command.\n */\n checkErrors?: boolean;\n /**\n * The timeout, in milliseconds, for a device to respond to the command.\n * Overrides the connection default request timeout.\n */\n timeout?: number;\n }\n export interface GenericCommandNoResponseOptions {\n /**\n * Optional axis number to send the command to.\n * Specifying -1 omits the number completely.\n */\n axis?: number;\n }\n export interface SetStateOptions {\n /**\n * If true, only device scope settings and features will be set.\n */\n deviceOnly?: boolean;\n }\n export interface CanSetStateOptions {\n /**\n * The firmware version of the device to apply the state to.\n * Use this to ensure the state will still be compatible after an update.\n */\n firmwareVersion?: FirmwareVersion;\n }\n}\n"]}
1
+ {"version":3,"file":"device.js","sourceRoot":"","sources":["../../../src/ascii/device.ts"],"names":[],"mappings":"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","sourcesContent":["// ==== THIS FILE IS GENERATED FROM A TEMPLATE ==== //\n// ============= DO NOT EDIT DIRECTLY ============= //\n\nimport { FirmwareVersion } from '../firmware_version';\nimport * as gateway from '../gateway';\nimport { Measurement } from '../measurement';\nimport * as requests from '../requests';\nimport { UnitConversionDescriptor } from '../unit_conversion_descriptor';\nimport { AllAxes } from './all_axes';\nimport { Axis } from './axis';\nimport { CanSetStateDeviceResponse } from './can_set_state_device_response';\nimport { Connection } from './connection';\nimport { DeviceIO } from './device_io';\nimport { DeviceIdentity } from './device_identity';\nimport { DeviceSettings } from './device_settings';\nimport { DeviceStorage } from './device_storage';\nimport { Lockstep } from './lockstep';\nimport { Oscilloscope } from './oscilloscope';\nimport { Pvt } from './pvt';\nimport { Response } from './response';\nimport { SetStateDeviceResponse } from './set_state_device_response';\nimport { Streams } from './streams';\nimport { Triggers } from './triggers';\nimport { Warnings } from './warnings';\n\n/**\n * Represents the controller part of one device - may be either a standalone controller or an integrated controller.\n */\nexport class Device {\n /**\n * Connection of this device.\n */\n public get connection(): Connection {\n return this._connection;\n }\n private _connection: Connection;\n\n /**\n * The device address uniquely identifies the device on the connection.\n * It can be configured or automatically assigned by the renumber command.\n */\n public get deviceAddress(): number {\n return this._deviceAddress;\n }\n private _deviceAddress: number;\n\n /**\n * Settings and properties of this device.\n */\n public get settings(): DeviceSettings {\n return this._settings;\n }\n private _settings: DeviceSettings;\n\n /**\n * Key-value storage of this device.\n */\n public get storage(): DeviceStorage {\n return this._storage;\n }\n private _storage: DeviceStorage;\n\n /**\n * I/O channels of this device.\n */\n public get io(): DeviceIO {\n return this._io;\n }\n private _io: DeviceIO;\n\n /**\n * Virtual axis which allows you to target all axes of this device.\n */\n public get allAxes(): AllAxes {\n return this._allAxes;\n }\n private _allAxes: AllAxes;\n\n /**\n * Warnings and faults of this device and all its axes.\n */\n public get warnings(): Warnings {\n return this._warnings;\n }\n private _warnings: Warnings;\n\n /**\n * Identity of the device.\n */\n public get identity(): DeviceIdentity {\n return this._retrieveIdentity();\n }\n\n /**\n * Indicates whether or not the device has been identified.\n */\n public get isIdentified(): boolean {\n return this._retrieveIsIdentified();\n }\n\n /**\n * Oscilloscope recording helper for this device.\n * Requires at least Firmware 7.00.\n */\n public get oscilloscope(): Oscilloscope {\n return this._oscilloscope;\n }\n private _oscilloscope: Oscilloscope;\n\n /**\n * Unique ID of the device hardware.\n */\n public get deviceId(): number {\n return this.identity.deviceId;\n }\n\n /**\n * Serial number of the device.\n */\n public get serialNumber(): number {\n return this.identity.serialNumber;\n }\n\n /**\n * Name of the product.\n */\n public get name(): string {\n return this.identity.name;\n }\n\n /**\n * Number of axes this device has.\n */\n public get axisCount(): number {\n return this.identity.axisCount;\n }\n\n /**\n * Version of the firmware.\n */\n public get firmwareVersion(): FirmwareVersion {\n return this.identity.firmwareVersion;\n }\n\n /**\n * The device is an integrated product.\n */\n public get isIntegrated(): boolean {\n return this.identity.isIntegrated;\n }\n\n /**\n * User-assigned label of the device.\n */\n public get label(): string {\n return this._retrieveLabel();\n }\n\n /**\n * Triggers for this device.\n * Requires at least Firmware 7.06.\n */\n public get triggers(): Triggers {\n return this._triggers;\n }\n private _triggers: Triggers;\n\n /**\n * Gets an object that provides access to Streams on this device.\n * Requires at least Firmware 7.05.\n */\n public get streams(): Streams {\n return this._streams;\n }\n private _streams: Streams;\n\n /**\n * Gets an object that provides access to PVT functions of this device.\n * Note that as of ZML v5.0.0, this returns a Pvt object and NOT a PvtSequence object.\n * The PvtSequence can now be obtained from the Pvt object.\n * Requires at least Firmware 7.33.\n */\n public get pvt(): Pvt {\n return this._pvt;\n }\n private _pvt: Pvt;\n\n constructor(connection: Connection, deviceAddress: number) {\n this._connection = connection;\n this._deviceAddress = deviceAddress;\n this._settings = new DeviceSettings(this);\n this._storage = new DeviceStorage(this);\n this._io = new DeviceIO(this);\n this._allAxes = new AllAxes(this);\n this._warnings = new Warnings(this, 0);\n this._oscilloscope = new Oscilloscope(this);\n this._triggers = new Triggers(this);\n this._streams = new Streams(this);\n this._pvt = new Pvt(this);\n }\n\n /**\n * Queries the device and the database, gathering information about the product.\n * Without this information features such as unit conversions will not work.\n * Usually, called automatically by detect devices method.\n * @param options.assumeVersion The identification assumes the specified firmware version\n * instead of the version queried from the device.\n * Providing this argument can lead to unexpected compatibility issues.\n * @returns Device identification data.\n */\n public async identify(\n options: Device.IdentifyOptions = {}\n ): Promise<DeviceIdentity> {\n const {\n assumeVersion,\n } = options;\n const request: requests.DeviceIdentifyRequest & gateway.Message = {\n ...requests.DeviceIdentifyRequest.DEFAULT,\n interfaceId: this.connection.interfaceId,\n device: this.deviceAddress,\n assumeVersion: assumeVersion,\n toBinary() {\n return requests.DeviceIdentifyRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<DeviceIdentity>(\n 'device/identify',\n request,\n DeviceIdentity.fromBinary);\n return response;\n }\n\n /**\n * Sends a generic ASCII command to this device.\n * For more information refer to: [ASCII Protocol Manual](https://www.zaber.com/protocol-manual#topic_commands).\n * @param command Command and its parameters.\n * @param [options.axis=0] Optional axis number to send the command to.\n * @param [options.checkErrors=true] Controls whether to throw an exception when the device rejects the command.\n * @param [options.timeout=0] The timeout, in milliseconds, for a device to respond to the command.\n * Overrides the connection default request timeout.\n * @returns A response to the command.\n */\n public async genericCommand(\n command: string,\n options: Device.GenericCommandOptions = {}\n ): Promise<Response> {\n const {\n axis = 0,\n checkErrors = true,\n timeout = 0,\n } = options;\n const request: requests.GenericCommandRequest & gateway.Message = {\n ...requests.GenericCommandRequest.DEFAULT,\n interfaceId: this.connection.interfaceId,\n device: this.deviceAddress,\n command: command,\n axis: axis,\n checkErrors: checkErrors,\n timeout: timeout,\n toBinary() {\n return requests.GenericCommandRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<Response>(\n 'interface/generic_command',\n request,\n Response.fromBinary);\n return response;\n }\n\n /**\n * Sends a generic ASCII command to this device and expect multiple responses.\n * Responses are returned in order of arrival.\n * For more information refer to: [ASCII Protocol Manual](https://www.zaber.com/protocol-manual#topic_commands).\n * @param command Command and its parameters.\n * @param [options.axis=0] Optional axis number to send the command to.\n * @param [options.checkErrors=true] Controls whether to throw an exception when a device rejects the command.\n * @param [options.timeout=0] The timeout, in milliseconds, for a device to respond to the command.\n * Overrides the connection default request timeout.\n * @returns All responses to the command.\n */\n public async genericCommandMultiResponse(\n command: string,\n options: Device.GenericCommandMultiResponseOptions = {}\n ): Promise<Response[]> {\n const {\n axis = 0,\n checkErrors = true,\n timeout = 0,\n } = options;\n const request: requests.GenericCommandRequest & gateway.Message = {\n ...requests.GenericCommandRequest.DEFAULT,\n interfaceId: this.connection.interfaceId,\n device: this.deviceAddress,\n command: command,\n axis: axis,\n checkErrors: checkErrors,\n timeout: timeout,\n toBinary() {\n return requests.GenericCommandRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.GenericCommandResponseCollection>(\n 'interface/generic_command_multi_response',\n request,\n requests.GenericCommandResponseCollection.fromBinary);\n return response.responses;\n }\n\n /**\n * Sends a generic ASCII command to this device without expecting a response and without adding a message ID\n * For more information refer to: [ASCII Protocol Manual](https://www.zaber.com/protocol-manual#topic_commands).\n * @param command Command and its parameters.\n * @param [options.axis=0] Optional axis number to send the command to.\n * Specifying -1 omits the number completely.\n */\n public async genericCommandNoResponse(\n command: string,\n options: Device.GenericCommandNoResponseOptions = {}\n ): Promise<void> {\n const {\n axis = 0,\n } = options;\n const request: requests.GenericCommandRequest & gateway.Message = {\n ...requests.GenericCommandRequest.DEFAULT,\n interfaceId: this.connection.interfaceId,\n device: this.deviceAddress,\n command: command,\n axis: axis,\n toBinary() {\n return requests.GenericCommandRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('interface/generic_command_no_response', request);\n }\n\n /**\n * Gets an Axis class instance which allows you to control a particular axis on this device.\n * Axes are numbered from 1.\n * @param axisNumber Number of axis intended to control.\n * @returns Axis instance.\n */\n public getAxis(\n axisNumber: number\n ): Axis {\n if (axisNumber <= 0) {\n throw new TypeError('Invalid value; physical axes are numbered from 1.');\n }\n return new Axis(this, axisNumber);\n }\n\n /**\n * Gets a Lockstep class instance which allows you to control a particular lockstep group on the device.\n * Requires at least Firmware 6.15 or 7.11.\n * @param lockstepGroupId The ID of the lockstep group to control. Lockstep group IDs start at one.\n * @returns Lockstep instance.\n */\n public getLockstep(\n lockstepGroupId: number\n ): Lockstep {\n if (lockstepGroupId <= 0) {\n throw new TypeError('Invalid value; lockstep groups are numbered from 1.');\n }\n return new Lockstep(this, lockstepGroupId);\n }\n\n /**\n * Formats parameters into a command and performs unit conversions.\n * Parameters in the command template are denoted by a question mark.\n * Command returned is only valid for this device.\n * Unit conversion is not supported for commands where axes can be remapped, such as stream and PVT commands.\n * For more information refer to: [ASCII Protocol Manual](https://www.zaber.com/protocol-manual#topic_commands).\n * @param commandTemplate Template of a command to prepare. Parameters are denoted by question marks.\n * @param parameters Variable number of command parameters.\n * @returns Command with converted parameters.\n */\n public prepareCommand(\n commandTemplate: string,\n ...parameters: Measurement[]\n ): string {\n const request: requests.PrepareCommandRequest & gateway.Message = {\n ...requests.PrepareCommandRequest.DEFAULT,\n interfaceId: this.connection.interfaceId,\n device: this.deviceAddress,\n commandTemplate: commandTemplate,\n parameters: parameters,\n toBinary() {\n return requests.PrepareCommandRequest.toBinary(this);\n },\n };\n\n const response = gateway.callSync<requests.StringResponse>(\n 'device/prepare_command',\n request,\n requests.StringResponse.fromBinary);\n return response.value;\n }\n\n /**\n * Retrieves unit conversion descriptors for a command, allowing unit conversion without a device.\n * The descriptors can be used with the ConvertTo/FromNativeUnits methods of the UnitTable class.\n * Parameters in the command template are denoted by a question mark.\n * For more information refer to: [ASCII Protocol Manual](https://www.zaber.com/protocol-manual#topic_commands).\n * @param commandTemplate Template of the command. Parameters are denoted by question marks.\n * @returns Unit conversion descriptor for each parameter in the command. Nil if a parameter does not have conversion.\n */\n public getCommandUnitConversionDescriptors(\n commandTemplate: string\n ): (UnitConversionDescriptor | null)[] {\n const request: requests.PrepareCommandRequest & gateway.Message = {\n ...requests.PrepareCommandRequest.DEFAULT,\n interfaceId: this.connection.interfaceId,\n device: this.deviceAddress,\n commandTemplate: commandTemplate,\n toBinary() {\n return requests.PrepareCommandRequest.toBinary(this);\n },\n };\n\n const response = gateway.callSync<requests.GetCommandUnitConversionResponse>(\n 'device/get_command_unit_conversion',\n request,\n requests.GetCommandUnitConversionResponse.fromBinary);\n return response.value;\n }\n\n /**\n * Sets the user-assigned device label.\n * The label is stored on the controller and recognized by other software.\n * @param label Label to set.\n */\n public async setLabel(\n label: string\n ): Promise<void> {\n const request: requests.DeviceSetStorageRequest & gateway.Message = {\n ...requests.DeviceSetStorageRequest.DEFAULT,\n interfaceId: this.connection.interfaceId,\n device: this.deviceAddress,\n value: label,\n toBinary() {\n return requests.DeviceSetStorageRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/set_label', request);\n }\n\n /**\n * Gets the device name.\n * @returns The label.\n */\n private _retrieveLabel(): string {\n const request: requests.AxisEmptyRequest & gateway.Message = {\n ...requests.AxisEmptyRequest.DEFAULT,\n interfaceId: this.connection.interfaceId,\n device: this.deviceAddress,\n toBinary() {\n return requests.AxisEmptyRequest.toBinary(this);\n },\n };\n\n const response = gateway.callSync<requests.StringResponse>(\n 'device/get_label',\n request,\n requests.StringResponse.fromBinary);\n return response.value;\n }\n\n /**\n * Returns a string that represents the device.\n * @returns A string that represents the device.\n */\n public toString(): string {\n const request: requests.AxisToStringRequest & gateway.Message = {\n ...requests.AxisToStringRequest.DEFAULT,\n interfaceId: this.connection.interfaceId,\n device: this.deviceAddress,\n toBinary() {\n return requests.AxisToStringRequest.toBinary(this);\n },\n };\n\n const response = gateway.callSync<requests.StringResponse>(\n 'device/device_to_string',\n request,\n requests.StringResponse.fromBinary);\n return response.value;\n }\n\n /**\n * Returns a serialization of the current device state that can be saved and reapplied.\n * @returns A serialization of the current state of the device.\n */\n public async getState(): Promise<string> {\n const request: requests.AxisEmptyRequest & gateway.Message = {\n ...requests.AxisEmptyRequest.DEFAULT,\n interfaceId: this.connection.interfaceId,\n device: this.deviceAddress,\n toBinary() {\n return requests.AxisEmptyRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.StringResponse>(\n 'device/get_state',\n request,\n requests.StringResponse.fromBinary);\n return response.value;\n }\n\n /**\n * Applies a saved state to this device.\n * @param state The state object to apply to this device.\n * @param [options.deviceOnly=false] If true, only device scope settings and features will be set.\n * @returns Reports of any issues that were handled, but caused the state to not be exactly restored.\n */\n public async setState(\n state: string,\n options: Device.SetStateOptions = {}\n ): Promise<SetStateDeviceResponse> {\n const {\n deviceOnly = false,\n } = options;\n const request: requests.SetStateRequest & gateway.Message = {\n ...requests.SetStateRequest.DEFAULT,\n interfaceId: this.connection.interfaceId,\n device: this.deviceAddress,\n state: state,\n deviceOnly: deviceOnly,\n toBinary() {\n return requests.SetStateRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<SetStateDeviceResponse>(\n 'device/set_device_state',\n request,\n SetStateDeviceResponse.fromBinary);\n return response;\n }\n\n /**\n * Checks if a state can be applied to this device.\n * This only covers exceptions that can be determined statically such as mismatches of ID or version,\n * the process of applying the state can still fail when running.\n * @param state The state object to check against.\n * @param options.firmwareVersion The firmware version of the device to apply the state to.\n * Use this to ensure the state will still be compatible after an update.\n * @returns An object listing errors that come up when trying to set the state.\n */\n public async canSetState(\n state: string,\n options: Device.CanSetStateOptions = {}\n ): Promise<CanSetStateDeviceResponse> {\n const {\n firmwareVersion,\n } = options;\n const request: requests.CanSetStateRequest & gateway.Message = {\n ...requests.CanSetStateRequest.DEFAULT,\n interfaceId: this.connection.interfaceId,\n device: this.deviceAddress,\n state: state,\n firmwareVersion: firmwareVersion,\n toBinary() {\n return requests.CanSetStateRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<CanSetStateDeviceResponse>(\n 'device/can_set_state',\n request,\n CanSetStateDeviceResponse.fromBinary);\n return response;\n }\n\n /**\n * Waits for the device to start responding to messages.\n * Useful to call after resetting the device.\n * Throws RequestTimeoutException upon timeout.\n * @param timeout For how long to wait in milliseconds for the device to start responding.\n */\n public async waitToRespond(\n timeout: number\n ): Promise<void> {\n const request: requests.WaitToRespondRequest & gateway.Message = {\n ...requests.WaitToRespondRequest.DEFAULT,\n interfaceId: this.connection.interfaceId,\n device: this.deviceAddress,\n timeout: timeout,\n toBinary() {\n return requests.WaitToRespondRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/wait_to_respond', request);\n }\n\n /**\n * Changes the address of this device.\n * After the address is successfully changed, the existing device class instance no longer represents the device.\n * Instead, use the new device instance returned by this method.\n * @param address The new address to assign to the device.\n * @returns New device instance with the new address.\n */\n public async renumber(\n address: number\n ): Promise<Device> {\n if (address < 1 || address > 99) {\n throw new TypeError('Invalid value; device addresses are numbered from 1 to 99.');\n }\n const request: requests.RenumberRequest & gateway.Message = {\n ...requests.RenumberRequest.DEFAULT,\n interfaceId: this.connection.interfaceId,\n device: this.deviceAddress,\n address: address,\n toBinary() {\n return requests.RenumberRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.IntResponse>(\n 'device/renumber',\n request,\n requests.IntResponse.fromBinary);\n return new Device(this.connection, response.value);\n }\n\n /**\n * Restores most of the settings to their default values.\n * Deletes all triggers, stream and PVT buffers, servo tunings.\n * Deletes all zaber storage keys.\n * Disables locksteps, unparks axes.\n * Preserves storage, communication settings, peripherals (unless hard is specified).\n * The device needs to be identified again after the restore.\n * @param [hard=false] If true, completely erases device's memory. The device also resets.\n */\n public async restore(\n hard: boolean = false\n ): Promise<void> {\n const request: requests.DeviceRestoreRequest & gateway.Message = {\n ...requests.DeviceRestoreRequest.DEFAULT,\n interfaceId: this.connection.interfaceId,\n device: this.deviceAddress,\n hard: hard,\n toBinary() {\n return requests.DeviceRestoreRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/restore', request);\n }\n\n /**\n * Returns identity.\n * @returns Device identity.\n */\n private _retrieveIdentity(): DeviceIdentity {\n const request: requests.DeviceEmptyRequest & gateway.Message = {\n ...requests.DeviceEmptyRequest.DEFAULT,\n interfaceId: this.connection.interfaceId,\n device: this.deviceAddress,\n toBinary() {\n return requests.DeviceEmptyRequest.toBinary(this);\n },\n };\n\n const response = gateway.callSync<DeviceIdentity>(\n 'device/get_identity',\n request,\n DeviceIdentity.fromBinary);\n return response;\n }\n\n /**\n * Returns whether or not the device have been identified.\n * @returns True if the device has already been identified. False otherwise.\n */\n private _retrieveIsIdentified(): boolean {\n const request: requests.DeviceEmptyRequest & gateway.Message = {\n ...requests.DeviceEmptyRequest.DEFAULT,\n interfaceId: this.connection.interfaceId,\n device: this.deviceAddress,\n toBinary() {\n return requests.DeviceEmptyRequest.toBinary(this);\n },\n };\n\n const response = gateway.callSync<requests.BoolResponse>(\n 'device/get_is_identified',\n request,\n requests.BoolResponse.fromBinary);\n return response.value;\n }\n}\n\nnamespace Device {\n export interface IdentifyOptions {\n /**\n * The identification assumes the specified firmware version\n * instead of the version queried from the device.\n * Providing this argument can lead to unexpected compatibility issues.\n */\n assumeVersion?: FirmwareVersion;\n }\n export interface GenericCommandOptions {\n /**\n * Optional axis number to send the command to.\n */\n axis?: number;\n /**\n * Controls whether to throw an exception when the device rejects the command.\n */\n checkErrors?: boolean;\n /**\n * The timeout, in milliseconds, for a device to respond to the command.\n * Overrides the connection default request timeout.\n */\n timeout?: number;\n }\n export interface GenericCommandMultiResponseOptions {\n /**\n * Optional axis number to send the command to.\n */\n axis?: number;\n /**\n * Controls whether to throw an exception when a device rejects the command.\n */\n checkErrors?: boolean;\n /**\n * The timeout, in milliseconds, for a device to respond to the command.\n * Overrides the connection default request timeout.\n */\n timeout?: number;\n }\n export interface GenericCommandNoResponseOptions {\n /**\n * Optional axis number to send the command to.\n * Specifying -1 omits the number completely.\n */\n axis?: number;\n }\n export interface SetStateOptions {\n /**\n * If true, only device scope settings and features will be set.\n */\n deviceOnly?: boolean;\n }\n export interface CanSetStateOptions {\n /**\n * The firmware version of the device to apply the state to.\n * Use this to ensure the state will still be compatible after an update.\n */\n firmwareVersion?: FirmwareVersion;\n }\n}\n"]}
@@ -1,9 +1,9 @@
1
- import { Device } from './device';
2
1
  import { Native, Time, Frequency } from '../units';
2
+ import { Device } from './device';
3
3
  import { DeviceIOInfo } from './device_io_info';
4
4
  import { DigitalOutputAction } from './digital_output_action';
5
- import { IoPortType } from './io_port_type';
6
5
  import { IoPortLabel } from './io_port_label';
6
+ import { IoPortType } from './io_port_type';
7
7
  /**
8
8
  * Class providing access to the I/O channels of the device.
9
9
  */
@@ -1 +1 @@
1
- {"version":3,"file":"device_io.d.ts","sourceRoot":"","sources":["../../../src/ascii/device_io.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"device_io.d.ts","sourceRoot":"","sources":["../../../src/ascii/device_io.ts"],"names":[],"mappings":"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"}