@zaber/motion 8.3.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 +329 -142
  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":"autofocus.js","sourceRoot":"","sources":["../../../src/microscopy/autofocus.ts"],"names":[],"mappings":"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","sourcesContent":["// ==== THIS FILE IS GENERATED FROM A TEMPLATE ==== //\n// ============= DO NOT EDIT DIRECTLY ============= //\n\nimport * as gateway from '../gateway';\nimport * as requests from '../requests';\nimport { Device } from '../ascii/device';\nimport { Axis } from '../ascii/axis';\nimport { Angle, Length, Native, Units } from '../units';\nimport { NamedParameter } from '../named_parameter';\nimport { AutofocusStatus } from './autofocus_status';\n\n\n/**\n * A generic autofocus device.\n */\nexport class Autofocus {\n /**\n * The identification of external device providing the capability.\n */\n public get providerId(): number {\n return this._providerId;\n }\n private _providerId: number;\n\n /**\n * The focus axis.\n */\n public get focusAxis(): Axis {\n return this._focusAxis;\n }\n private _focusAxis: Axis;\n\n /**\n * The objective turret device if the microscope has one.\n */\n public get objectiveTurret(): Device | undefined {\n return this._objectiveTurret;\n }\n private _objectiveTurret: Device | undefined;\n\n /**\n * Creates instance of `Autofocus` based on the given provider id.\n */\n constructor(providerId: number, focusAxis: Axis, objectiveTurret?: Device) {\n this._providerId = providerId;\n this._focusAxis = focusAxis;\n this._objectiveTurret = objectiveTurret;\n }\n\n /**\n * Sets the current focus to be target for the autofocus control loop.\n */\n public async setFocusZero(): Promise<void> {\n const request: requests.EmptyAutofocusRequest & gateway.Message = {\n ...requests.EmptyAutofocusRequest.DEFAULT,\n providerId: this.providerId,\n interfaceId: this.focusAxis.device.connection.interfaceId,\n focusAddress: this.focusAxis.device.deviceAddress,\n focusAxis: this.focusAxis.axisNumber,\n turretAddress: this.objectiveTurret?.deviceAddress ?? 0,\n toBinary() {\n return requests.EmptyAutofocusRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('autofocus/set_zero', request);\n }\n\n /**\n * Returns the status of the autofocus.\n * @returns The status of the autofocus.\n */\n public async getStatus(): Promise<AutofocusStatus> {\n const request: requests.EmptyAutofocusRequest & gateway.Message = {\n ...requests.EmptyAutofocusRequest.DEFAULT,\n providerId: this.providerId,\n interfaceId: this.focusAxis.device.connection.interfaceId,\n focusAddress: this.focusAxis.device.deviceAddress,\n focusAxis: this.focusAxis.axisNumber,\n turretAddress: this.objectiveTurret?.deviceAddress ?? 0,\n toBinary() {\n return requests.EmptyAutofocusRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.AutofocusGetStatusResponse>(\n 'autofocus/get_status',\n request,\n requests.AutofocusGetStatusResponse.fromBinary);\n return response.status;\n }\n\n /**\n * Moves the device until it's in focus.\n * @param [scan=false] If true, the autofocus will approach from the limit moving until it's in range.\n * @param [timeout=-1] Sets autofocus timeout duration in milliseconds.\n */\n public async focusOnce(\n scan: boolean = false,\n timeout: number = -1\n ): Promise<void> {\n const request: requests.AutofocusFocusRequest & gateway.Message = {\n ...requests.AutofocusFocusRequest.DEFAULT,\n providerId: this.providerId,\n interfaceId: this.focusAxis.device.connection.interfaceId,\n focusAddress: this.focusAxis.device.deviceAddress,\n focusAxis: this.focusAxis.axisNumber,\n turretAddress: this.objectiveTurret?.deviceAddress ?? 0,\n once: true,\n scan: scan,\n timeout: timeout,\n toBinary() {\n return requests.AutofocusFocusRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('autofocus/focus_once', request);\n }\n\n /**\n * Moves the focus axis continuously maintaining focus.\n * Starts the autofocus control loop.\n * Note that the control loop may stop if the autofocus comes out of range or a movement error occurs.\n * Use WaitUntilIdle of the focus axis to wait for the loop to stop and handle potential errors.\n */\n public async startFocusLoop(): Promise<void> {\n const request: requests.AutofocusFocusRequest & gateway.Message = {\n ...requests.AutofocusFocusRequest.DEFAULT,\n providerId: this.providerId,\n interfaceId: this.focusAxis.device.connection.interfaceId,\n focusAddress: this.focusAxis.device.deviceAddress,\n focusAxis: this.focusAxis.axisNumber,\n turretAddress: this.objectiveTurret?.deviceAddress ?? 0,\n toBinary() {\n return requests.AutofocusFocusRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('autofocus/start_focus_loop', request);\n }\n\n /**\n * Stops autofocus control loop.\n * If the focus axis already stopped moving because of an error, an exception will be thrown.\n */\n public async stopFocusLoop(): Promise<void> {\n const request: requests.EmptyAutofocusRequest & gateway.Message = {\n ...requests.EmptyAutofocusRequest.DEFAULT,\n providerId: this.providerId,\n interfaceId: this.focusAxis.device.connection.interfaceId,\n focusAddress: this.focusAxis.device.deviceAddress,\n focusAxis: this.focusAxis.axisNumber,\n turretAddress: this.objectiveTurret?.deviceAddress ?? 0,\n toBinary() {\n return requests.EmptyAutofocusRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('autofocus/stop_focus_loop', request);\n }\n\n /**\n * Returns bool indicating whether the focus axis is busy.\n * Can be used to determine if the focus loop is running.\n * @returns True if the axis is currently executing a motion command.\n */\n public async isBusy(): Promise<boolean> {\n const request: requests.AxisEmptyRequest & gateway.Message = {\n ...requests.AxisEmptyRequest.DEFAULT,\n interfaceId: this.focusAxis.device.connection.interfaceId,\n device: this.focusAxis.device.deviceAddress,\n axis: this.focusAxis.axisNumber,\n toBinary() {\n return requests.AxisEmptyRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.BoolResponse>(\n 'device/is_busy',\n request,\n requests.BoolResponse.fromBinary);\n return response.value;\n }\n\n /**\n * Gets the lower motion limit for the autofocus control loop.\n * Gets motion.tracking.limit.min setting of the focus axis.\n * @param [unit=Units.NATIVE] The units of the limit.\n * @returns Limit value.\n */\n public async getLimitMin(\n unit: Length | Angle | Native = Units.NATIVE\n ): Promise<number> {\n const request: requests.DeviceGetSettingRequest & gateway.Message = {\n ...requests.DeviceGetSettingRequest.DEFAULT,\n interfaceId: this.focusAxis.device.connection.interfaceId,\n device: this.focusAxis.device.deviceAddress,\n axis: this.focusAxis.axisNumber,\n setting: 'motion.tracking.limit.min',\n unit: unit,\n toBinary() {\n return requests.DeviceGetSettingRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.DoubleResponse>(\n 'device/get_setting',\n request,\n requests.DoubleResponse.fromBinary);\n return response.value;\n }\n\n /**\n * Gets the upper motion limit for the autofocus control loop.\n * Gets motion.tracking.limit.max setting of the focus axis.\n * @param [unit=Units.NATIVE] The units of the limit.\n * @returns Limit value.\n */\n public async getLimitMax(\n unit: Length | Angle | Native = Units.NATIVE\n ): Promise<number> {\n const request: requests.DeviceGetSettingRequest & gateway.Message = {\n ...requests.DeviceGetSettingRequest.DEFAULT,\n interfaceId: this.focusAxis.device.connection.interfaceId,\n device: this.focusAxis.device.deviceAddress,\n axis: this.focusAxis.axisNumber,\n setting: 'motion.tracking.limit.max',\n unit: unit,\n toBinary() {\n return requests.DeviceGetSettingRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.DoubleResponse>(\n 'device/get_setting',\n request,\n requests.DoubleResponse.fromBinary);\n return response.value;\n }\n\n /**\n * Sets the lower motion limit for the autofocus control loop.\n * Use the limits to prevent the focus axis from crashing into the sample.\n * Changes motion.tracking.limit.min setting of the focus axis.\n * @param limit The lower limit of the focus axis.\n * @param [unit=Units.NATIVE] The units of the limit.\n */\n public async setLimitMin(\n limit: number,\n unit: Length | Angle | Native = Units.NATIVE\n ): Promise<void> {\n const request: requests.DeviceSetSettingRequest & gateway.Message = {\n ...requests.DeviceSetSettingRequest.DEFAULT,\n interfaceId: this.focusAxis.device.connection.interfaceId,\n device: this.focusAxis.device.deviceAddress,\n axis: this.focusAxis.axisNumber,\n setting: 'motion.tracking.limit.min',\n value: limit,\n unit: unit,\n toBinary() {\n return requests.DeviceSetSettingRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/set_setting', request);\n }\n\n /**\n * Sets the upper motion limit for the autofocus control loop.\n * Use the limits to prevent the focus axis from crashing into the sample.\n * Changes motion.tracking.limit.max setting of the focus axis.\n * @param limit The upper limit of the focus axis.\n * @param [unit=Units.NATIVE] The units of the limit.\n */\n public async setLimitMax(\n limit: number,\n unit: Length | Angle | Native = Units.NATIVE\n ): Promise<void> {\n const request: requests.DeviceSetSettingRequest & gateway.Message = {\n ...requests.DeviceSetSettingRequest.DEFAULT,\n interfaceId: this.focusAxis.device.connection.interfaceId,\n device: this.focusAxis.device.deviceAddress,\n axis: this.focusAxis.axisNumber,\n setting: 'motion.tracking.limit.max',\n value: limit,\n unit: unit,\n toBinary() {\n return requests.DeviceSetSettingRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/set_setting', request);\n }\n\n /**\n * Typically, the control loop parameters and objective are kept synchronized by the library.\n * If the parameters or current objective changes outside of the library, call this method to synchronize them.\n */\n public async synchronizeParameters(): Promise<void> {\n const request: requests.EmptyAutofocusRequest & gateway.Message = {\n ...requests.EmptyAutofocusRequest.DEFAULT,\n providerId: this.providerId,\n interfaceId: this.focusAxis.device.connection.interfaceId,\n focusAddress: this.focusAxis.device.deviceAddress,\n focusAxis: this.focusAxis.axisNumber,\n turretAddress: this.objectiveTurret?.deviceAddress ?? 0,\n toBinary() {\n return requests.EmptyAutofocusRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('autofocus/sync_params', request);\n }\n\n /**\n * Sets the parameters for the autofocus objective.\n * Note that the method temporarily switches current objective to set the parameters.\n * @param objective The objective (numbered from 1) to set the parameters for.\n * If your microscope has only one objective, use value of 1.\n * @param parameters The parameters for the autofocus objective.\n */\n public async setObjectiveParameters(\n objective: number,\n parameters: NamedParameter[]\n ): Promise<void> {\n const request: requests.AutofocusSetObjectiveParamsRequest & gateway.Message = {\n ...requests.AutofocusSetObjectiveParamsRequest.DEFAULT,\n providerId: this.providerId,\n interfaceId: this.focusAxis.device.connection.interfaceId,\n focusAddress: this.focusAxis.device.deviceAddress,\n focusAxis: this.focusAxis.axisNumber,\n turretAddress: this.objectiveTurret?.deviceAddress ?? 0,\n objective: objective,\n parameters: parameters,\n toBinary() {\n return requests.AutofocusSetObjectiveParamsRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('autofocus/set_objective_params', request);\n }\n\n /**\n * Returns the parameters for the autofocus objective.\n * @param objective The objective (numbered from 1) to get the parameters for.\n * If your microscope has only one objective, use value of 1.\n * Note that the method temporarily switches current objective to get the parameters.\n * @returns The parameters for the autofocus objective.\n */\n public async getObjectiveParameters(\n objective: number\n ): Promise<NamedParameter[]> {\n const request: requests.AutofocusGetObjectiveParamsRequest & gateway.Message = {\n ...requests.AutofocusGetObjectiveParamsRequest.DEFAULT,\n providerId: this.providerId,\n interfaceId: this.focusAxis.device.connection.interfaceId,\n focusAddress: this.focusAxis.device.deviceAddress,\n focusAxis: this.focusAxis.axisNumber,\n turretAddress: this.objectiveTurret?.deviceAddress ?? 0,\n objective: objective,\n toBinary() {\n return requests.AutofocusGetObjectiveParamsRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.AutofocusGetObjectiveParamsResponse>(\n 'autofocus/get_objective_params',\n request,\n requests.AutofocusGetObjectiveParamsResponse.fromBinary);\n return response.parameters;\n }\n\n /**\n * Returns a string that represents the autofocus.\n * @returns A string that represents the autofocus.\n */\n public toString(): string {\n const request: requests.EmptyAutofocusRequest & gateway.Message = {\n ...requests.EmptyAutofocusRequest.DEFAULT,\n providerId: this.providerId,\n interfaceId: this.focusAxis.device.connection.interfaceId,\n focusAddress: this.focusAxis.device.deviceAddress,\n focusAxis: this.focusAxis.axisNumber,\n turretAddress: this.objectiveTurret?.deviceAddress ?? 0,\n toBinary() {\n return requests.EmptyAutofocusRequest.toBinary(this);\n },\n };\n\n const response = gateway.callSync<requests.StringResponse>(\n 'autofocus/to_string',\n request,\n requests.StringResponse.fromBinary);\n return response.value;\n }\n}\n\nnamespace Autofocus {\n}\n"]}
1
+ {"version":3,"file":"autofocus.js","sourceRoot":"","sources":["../../../src/microscopy/autofocus.ts"],"names":[],"mappings":"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","sourcesContent":["// ==== THIS FILE IS GENERATED FROM A TEMPLATE ==== //\n// ============= DO NOT EDIT DIRECTLY ============= //\n\nimport { Axis } from '../ascii/axis';\nimport { Device } from '../ascii/device';\nimport * as gateway from '../gateway';\nimport { NamedParameter } from '../named_parameter';\nimport * as requests from '../requests';\nimport { Angle, Length, Native, Units } from '../units';\nimport { AutofocusStatus } from './autofocus_status';\n\n/**\n * A generic autofocus device.\n */\nexport class Autofocus {\n /**\n * The identification of external device providing the capability.\n */\n public get providerId(): number {\n return this._providerId;\n }\n private _providerId: number;\n\n /**\n * The focus axis.\n */\n public get focusAxis(): Axis {\n return this._focusAxis;\n }\n private _focusAxis: Axis;\n\n /**\n * The objective turret device if the microscope has one.\n */\n public get objectiveTurret(): Device | undefined {\n return this._objectiveTurret;\n }\n private _objectiveTurret: Device | undefined;\n\n /**\n * Creates instance of `Autofocus` based on the given provider id.\n */\n constructor(providerId: number, focusAxis: Axis, objectiveTurret?: Device) {\n this._providerId = providerId;\n this._focusAxis = focusAxis;\n this._objectiveTurret = objectiveTurret;\n }\n\n /**\n * Sets the current focus to be target for the autofocus control loop.\n */\n public async setFocusZero(): Promise<void> {\n const request: requests.EmptyAutofocusRequest & gateway.Message = {\n ...requests.EmptyAutofocusRequest.DEFAULT,\n providerId: this.providerId,\n interfaceId: this.focusAxis.device.connection.interfaceId,\n focusAddress: this.focusAxis.device.deviceAddress,\n focusAxis: this.focusAxis.axisNumber,\n turretAddress: this.objectiveTurret?.deviceAddress ?? 0,\n toBinary() {\n return requests.EmptyAutofocusRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('autofocus/set_zero', request);\n }\n\n /**\n * Returns the status of the autofocus.\n * @returns The status of the autofocus.\n */\n public async getStatus(): Promise<AutofocusStatus> {\n const request: requests.EmptyAutofocusRequest & gateway.Message = {\n ...requests.EmptyAutofocusRequest.DEFAULT,\n providerId: this.providerId,\n interfaceId: this.focusAxis.device.connection.interfaceId,\n focusAddress: this.focusAxis.device.deviceAddress,\n focusAxis: this.focusAxis.axisNumber,\n turretAddress: this.objectiveTurret?.deviceAddress ?? 0,\n toBinary() {\n return requests.EmptyAutofocusRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.AutofocusGetStatusResponse>(\n 'autofocus/get_status',\n request,\n requests.AutofocusGetStatusResponse.fromBinary);\n return response.status;\n }\n\n /**\n * Moves the device until it's in focus.\n * @param [scan=false] If true, the autofocus will approach from the limit moving until it's in range.\n * @param [timeout=-1] Sets autofocus timeout duration in milliseconds.\n */\n public async focusOnce(\n scan: boolean = false,\n timeout: number = -1\n ): Promise<void> {\n const request: requests.AutofocusFocusRequest & gateway.Message = {\n ...requests.AutofocusFocusRequest.DEFAULT,\n providerId: this.providerId,\n interfaceId: this.focusAxis.device.connection.interfaceId,\n focusAddress: this.focusAxis.device.deviceAddress,\n focusAxis: this.focusAxis.axisNumber,\n turretAddress: this.objectiveTurret?.deviceAddress ?? 0,\n once: true,\n scan: scan,\n timeout: timeout,\n toBinary() {\n return requests.AutofocusFocusRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('autofocus/focus_once', request);\n }\n\n /**\n * Moves the focus axis continuously maintaining focus.\n * Starts the autofocus control loop.\n * Note that the control loop may stop if the autofocus comes out of range or a movement error occurs.\n * Use WaitUntilIdle of the focus axis to wait for the loop to stop and handle potential errors.\n */\n public async startFocusLoop(): Promise<void> {\n const request: requests.AutofocusFocusRequest & gateway.Message = {\n ...requests.AutofocusFocusRequest.DEFAULT,\n providerId: this.providerId,\n interfaceId: this.focusAxis.device.connection.interfaceId,\n focusAddress: this.focusAxis.device.deviceAddress,\n focusAxis: this.focusAxis.axisNumber,\n turretAddress: this.objectiveTurret?.deviceAddress ?? 0,\n toBinary() {\n return requests.AutofocusFocusRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('autofocus/start_focus_loop', request);\n }\n\n /**\n * Stops autofocus control loop.\n * If the focus axis already stopped moving because of an error, an exception will be thrown.\n */\n public async stopFocusLoop(): Promise<void> {\n const request: requests.EmptyAutofocusRequest & gateway.Message = {\n ...requests.EmptyAutofocusRequest.DEFAULT,\n providerId: this.providerId,\n interfaceId: this.focusAxis.device.connection.interfaceId,\n focusAddress: this.focusAxis.device.deviceAddress,\n focusAxis: this.focusAxis.axisNumber,\n turretAddress: this.objectiveTurret?.deviceAddress ?? 0,\n toBinary() {\n return requests.EmptyAutofocusRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('autofocus/stop_focus_loop', request);\n }\n\n /**\n * Returns bool indicating whether the focus axis is busy.\n * Can be used to determine if the focus loop is running.\n * @returns True if the axis is currently executing a motion command.\n */\n public async isBusy(): Promise<boolean> {\n const request: requests.AxisEmptyRequest & gateway.Message = {\n ...requests.AxisEmptyRequest.DEFAULT,\n interfaceId: this.focusAxis.device.connection.interfaceId,\n device: this.focusAxis.device.deviceAddress,\n axis: this.focusAxis.axisNumber,\n toBinary() {\n return requests.AxisEmptyRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.BoolResponse>(\n 'device/is_busy',\n request,\n requests.BoolResponse.fromBinary);\n return response.value;\n }\n\n /**\n * Gets the lower motion limit for the autofocus control loop.\n * Gets motion.tracking.limit.min setting of the focus axis.\n * @param [unit=Units.NATIVE] The units of the limit.\n * @returns Limit value.\n */\n public async getLimitMin(\n unit: Length | Angle | Native = Units.NATIVE\n ): Promise<number> {\n const request: requests.DeviceGetSettingRequest & gateway.Message = {\n ...requests.DeviceGetSettingRequest.DEFAULT,\n interfaceId: this.focusAxis.device.connection.interfaceId,\n device: this.focusAxis.device.deviceAddress,\n axis: this.focusAxis.axisNumber,\n setting: 'motion.tracking.limit.min',\n unit: unit,\n toBinary() {\n return requests.DeviceGetSettingRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.DoubleResponse>(\n 'device/get_setting',\n request,\n requests.DoubleResponse.fromBinary);\n return response.value;\n }\n\n /**\n * Gets the upper motion limit for the autofocus control loop.\n * Gets motion.tracking.limit.max setting of the focus axis.\n * @param [unit=Units.NATIVE] The units of the limit.\n * @returns Limit value.\n */\n public async getLimitMax(\n unit: Length | Angle | Native = Units.NATIVE\n ): Promise<number> {\n const request: requests.DeviceGetSettingRequest & gateway.Message = {\n ...requests.DeviceGetSettingRequest.DEFAULT,\n interfaceId: this.focusAxis.device.connection.interfaceId,\n device: this.focusAxis.device.deviceAddress,\n axis: this.focusAxis.axisNumber,\n setting: 'motion.tracking.limit.max',\n unit: unit,\n toBinary() {\n return requests.DeviceGetSettingRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.DoubleResponse>(\n 'device/get_setting',\n request,\n requests.DoubleResponse.fromBinary);\n return response.value;\n }\n\n /**\n * Sets the lower motion limit for the autofocus control loop.\n * Use the limits to prevent the focus axis from crashing into the sample.\n * Changes motion.tracking.limit.min setting of the focus axis.\n * @param limit The lower limit of the focus axis.\n * @param [unit=Units.NATIVE] The units of the limit.\n */\n public async setLimitMin(\n limit: number,\n unit: Length | Angle | Native = Units.NATIVE\n ): Promise<void> {\n const request: requests.DeviceSetSettingRequest & gateway.Message = {\n ...requests.DeviceSetSettingRequest.DEFAULT,\n interfaceId: this.focusAxis.device.connection.interfaceId,\n device: this.focusAxis.device.deviceAddress,\n axis: this.focusAxis.axisNumber,\n setting: 'motion.tracking.limit.min',\n value: limit,\n unit: unit,\n toBinary() {\n return requests.DeviceSetSettingRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/set_setting', request);\n }\n\n /**\n * Sets the upper motion limit for the autofocus control loop.\n * Use the limits to prevent the focus axis from crashing into the sample.\n * Changes motion.tracking.limit.max setting of the focus axis.\n * @param limit The upper limit of the focus axis.\n * @param [unit=Units.NATIVE] The units of the limit.\n */\n public async setLimitMax(\n limit: number,\n unit: Length | Angle | Native = Units.NATIVE\n ): Promise<void> {\n const request: requests.DeviceSetSettingRequest & gateway.Message = {\n ...requests.DeviceSetSettingRequest.DEFAULT,\n interfaceId: this.focusAxis.device.connection.interfaceId,\n device: this.focusAxis.device.deviceAddress,\n axis: this.focusAxis.axisNumber,\n setting: 'motion.tracking.limit.max',\n value: limit,\n unit: unit,\n toBinary() {\n return requests.DeviceSetSettingRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/set_setting', request);\n }\n\n /**\n * Typically, the control loop parameters and objective are kept synchronized by the library.\n * If the parameters or current objective changes outside of the library, call this method to synchronize them.\n */\n public async synchronizeParameters(): Promise<void> {\n const request: requests.EmptyAutofocusRequest & gateway.Message = {\n ...requests.EmptyAutofocusRequest.DEFAULT,\n providerId: this.providerId,\n interfaceId: this.focusAxis.device.connection.interfaceId,\n focusAddress: this.focusAxis.device.deviceAddress,\n focusAxis: this.focusAxis.axisNumber,\n turretAddress: this.objectiveTurret?.deviceAddress ?? 0,\n toBinary() {\n return requests.EmptyAutofocusRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('autofocus/sync_params', request);\n }\n\n /**\n * Sets the parameters for the autofocus objective.\n * Note that the method temporarily switches current objective to set the parameters.\n * @param objective The objective (numbered from 1) to set the parameters for.\n * If your microscope has only one objective, use value of 1.\n * @param parameters The parameters for the autofocus objective.\n */\n public async setObjectiveParameters(\n objective: number,\n parameters: NamedParameter[]\n ): Promise<void> {\n const request: requests.AutofocusSetObjectiveParamsRequest & gateway.Message = {\n ...requests.AutofocusSetObjectiveParamsRequest.DEFAULT,\n providerId: this.providerId,\n interfaceId: this.focusAxis.device.connection.interfaceId,\n focusAddress: this.focusAxis.device.deviceAddress,\n focusAxis: this.focusAxis.axisNumber,\n turretAddress: this.objectiveTurret?.deviceAddress ?? 0,\n objective: objective,\n parameters: parameters,\n toBinary() {\n return requests.AutofocusSetObjectiveParamsRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('autofocus/set_objective_params', request);\n }\n\n /**\n * Returns the parameters for the autofocus objective.\n * @param objective The objective (numbered from 1) to get the parameters for.\n * If your microscope has only one objective, use value of 1.\n * Note that the method temporarily switches current objective to get the parameters.\n * @returns The parameters for the autofocus objective.\n */\n public async getObjectiveParameters(\n objective: number\n ): Promise<NamedParameter[]> {\n const request: requests.AutofocusGetObjectiveParamsRequest & gateway.Message = {\n ...requests.AutofocusGetObjectiveParamsRequest.DEFAULT,\n providerId: this.providerId,\n interfaceId: this.focusAxis.device.connection.interfaceId,\n focusAddress: this.focusAxis.device.deviceAddress,\n focusAxis: this.focusAxis.axisNumber,\n turretAddress: this.objectiveTurret?.deviceAddress ?? 0,\n objective: objective,\n toBinary() {\n return requests.AutofocusGetObjectiveParamsRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.AutofocusGetObjectiveParamsResponse>(\n 'autofocus/get_objective_params',\n request,\n requests.AutofocusGetObjectiveParamsResponse.fromBinary);\n return response.parameters;\n }\n\n /**\n * Returns a string that represents the autofocus.\n * @returns A string that represents the autofocus.\n */\n public toString(): string {\n const request: requests.EmptyAutofocusRequest & gateway.Message = {\n ...requests.EmptyAutofocusRequest.DEFAULT,\n providerId: this.providerId,\n interfaceId: this.focusAxis.device.connection.interfaceId,\n focusAddress: this.focusAxis.device.deviceAddress,\n focusAxis: this.focusAxis.axisNumber,\n turretAddress: this.objectiveTurret?.deviceAddress ?? 0,\n toBinary() {\n return requests.EmptyAutofocusRequest.toBinary(this);\n },\n };\n\n const response = gateway.callSync<requests.StringResponse>(\n 'autofocus/to_string',\n request,\n requests.StringResponse.fromBinary);\n return response.value;\n }\n}\n"]}
@@ -1,5 +1,5 @@
1
- import { Time, Native } from '../units';
2
1
  import { Device } from '../ascii/device';
2
+ import { Time, Native } from '../units';
3
3
  /**
4
4
  * An abstraction over a device and it's digital output channel.
5
5
  */
@@ -1 +1 @@
1
- {"version":3,"file":"camera_trigger.d.ts","sourceRoot":"","sources":["../../../src/microscopy/camera_trigger.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,IAAI,EAAE,MAAM,EAAS,MAAM,UAAU,CAAC;AAC/C,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAEzC;;GAEG;AACH,qBAAa,aAAa;IACxB;;OAEG;IACH,IAAW,MAAM,IAAI,MAAM,CAE1B;IACD,OAAO,CAAC,OAAO,CAAS;IAExB;;OAEG;IACH,IAAW,OAAO,IAAI,MAAM,CAE3B;IACD,OAAO,CAAC,QAAQ,CAAS;IAEzB;;OAEG;gBACS,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;IAK3C;;;;;;;;OAQG;IACU,OAAO,CAClB,UAAU,EAAE,MAAM,EAClB,IAAI,GAAE,IAAI,GAAG,MAAqB,EAClC,OAAO,GAAE,aAAa,CAAC,cAAmB,GACzC,OAAO,CAAC,IAAI,CAAC;IAoBhB;;;OAGG;IACI,QAAQ,IAAI,MAAM;CAgB1B;AAED,kBAAU,aAAa,CAAC;IACtB,UAAiB,cAAc;QAC3B;;WAEG;QACH,IAAI,CAAC,EAAE,OAAO,CAAC;KAClB;CACF"}
1
+ {"version":3,"file":"camera_trigger.d.ts","sourceRoot":"","sources":["../../../src/microscopy/camera_trigger.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAGzC,OAAO,EAAE,IAAI,EAAE,MAAM,EAAS,MAAM,UAAU,CAAC;AAE/C;;GAEG;AACH,qBAAa,aAAa;IACxB;;OAEG;IACH,IAAW,MAAM,IAAI,MAAM,CAE1B;IACD,OAAO,CAAC,OAAO,CAAS;IAExB;;OAEG;IACH,IAAW,OAAO,IAAI,MAAM,CAE3B;IACD,OAAO,CAAC,QAAQ,CAAS;IAEzB;;OAEG;gBACS,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;IAK3C;;;;;;;;OAQG;IACU,OAAO,CAClB,UAAU,EAAE,MAAM,EAClB,IAAI,GAAE,IAAI,GAAG,MAAqB,EAClC,OAAO,GAAE,aAAa,CAAC,cAAmB,GACzC,OAAO,CAAC,IAAI,CAAC;IAoBhB;;;OAGG;IACI,QAAQ,IAAI,MAAM;CAgB1B;AAED,kBAAU,aAAa,CAAC;IACtB,UAAiB,cAAc;QAC3B;;WAEG;QACH,IAAI,CAAC,EAAE,OAAO,CAAC;KAClB;CACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"camera_trigger.js","sourceRoot":"","sources":["../../../src/microscopy/camera_trigger.ts"],"names":[],"mappings":";AAAA,sDAAsD;AACtD,sDAAsD;;;;;;;;;;;;;;;;;;;;;;;;;;AAEtD,oDAAsC;AACtC,sDAAwC;AACxC,oCAA+C;AAG/C;;GAEG;AACH,MAAa,aAAa;IACxB;;OAEG;IACH,IAAW,MAAM;QACf,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAGD;;OAEG;IACH,IAAW,OAAO;QAChB,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAGD;;OAEG;IACH,YAAY,MAAc,EAAE,OAAe;QACzC,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QACtB,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;IAC1B,CAAC;IAED;;;;;;;;OAQG;IACI,KAAK,CAAC,OAAO,CAClB,UAAkB,EAClB,OAAsB,aAAK,CAAC,MAAM,EAClC,UAAwC,EAAE;QAE1C,MAAM,EACJ,IAAI,GAAG,IAAI,GACZ,GAAG,OAAO,CAAC;QACZ,MAAM,OAAO,GAA8D;YACzE,GAAG,QAAQ,CAAC,8BAA8B,CAAC,OAAO;YAClD,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,WAAW;YAC/C,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,aAAa;YACjC,aAAa,EAAE,IAAI,CAAC,OAAO;YAC3B,KAAK,EAAE,UAAU;YACjB,IAAI,EAAE,IAAI;YACV,IAAI,EAAE,IAAI;YACV,QAAQ;gBACN,OAAO,QAAQ,CAAC,8BAA8B,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YAChE,CAAC;SACF,CAAC;QAEF,MAAM,OAAO,CAAC,SAAS,CAAC,2BAA2B,EAAE,OAAO,CAAC,CAAC;IAChE,CAAC;IAED;;;OAGG;IACI,QAAQ;QACb,MAAM,OAAO,GAAmD;YAC9D,GAAG,QAAQ,CAAC,mBAAmB,CAAC,OAAO;YACvC,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,WAAW;YAC/C,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,aAAa;YACjC,QAAQ;gBACN,OAAO,QAAQ,CAAC,mBAAmB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YACrD,CAAC;SACF,CAAC;QAEF,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAC/B,yBAAyB,EACzB,OAAO,EACP,QAAQ,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;QACtC,OAAO,QAAQ,CAAC,KAAK,CAAC;IACxB,CAAC;CACF;AA9ED,sCA8EC","sourcesContent":["// ==== THIS FILE IS GENERATED FROM A TEMPLATE ==== //\n// ============= DO NOT EDIT DIRECTLY ============= //\n\nimport * as gateway from '../gateway';\nimport * as requests from '../requests';\nimport { Time, Native, Units } from '../units';\nimport { Device } from '../ascii/device';\n\n/**\n * An abstraction over a device and it's digital output channel.\n */\nexport class CameraTrigger {\n /**\n * The device whose digital output triggers the camera.\n */\n public get device(): Device {\n return this._device;\n }\n private _device: Device;\n\n /**\n * The digital output channel that triggers the camera.\n */\n public get channel(): number {\n return this._channel;\n }\n private _channel: number;\n\n /**\n * Creates instance of `CameraTrigger` based on the given device and digital output channel.\n */\n constructor(device: Device, channel: number) {\n this._device = device;\n this._channel = channel;\n }\n\n /**\n * Triggers the camera.\n * Schedules trigger pulse on the digital output channel.\n * By default, the method waits until the trigger pulse is finished.\n * @param pulseWidth The time duration of the trigger pulse.\n * Depending on the camera setting, the argument can be use to specify exposure.\n * @param [unit=Units.NATIVE] Units of time.\n * @param [options.wait=true] If false, the method does not wait until the trigger pulse is finished.\n */\n public async trigger(\n pulseWidth: number,\n unit: Time | Native = Units.NATIVE,\n options: CameraTrigger.TriggerOptions = {}\n ): Promise<void> {\n const {\n wait = true,\n } = options;\n const request: requests.MicroscopeTriggerCameraRequest & gateway.Message = {\n ...requests.MicroscopeTriggerCameraRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n channelNumber: this.channel,\n delay: pulseWidth,\n unit: unit,\n wait: wait,\n toBinary() {\n return requests.MicroscopeTriggerCameraRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('microscope/trigger_camera', request);\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.device.connection.interfaceId,\n device: this.device.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\nnamespace CameraTrigger {\n export interface TriggerOptions {\n /**\n * If false, the method does not wait until the trigger pulse is finished.\n */\n wait?: boolean;\n }\n}\n"]}
1
+ {"version":3,"file":"camera_trigger.js","sourceRoot":"","sources":["../../../src/microscopy/camera_trigger.ts"],"names":[],"mappings":";AAAA,sDAAsD;AACtD,sDAAsD;;;;;;;;;;;;;;;;;;;;;;;;;;AAGtD,oDAAsC;AACtC,sDAAwC;AACxC,oCAA+C;AAE/C;;GAEG;AACH,MAAa,aAAa;IACxB;;OAEG;IACH,IAAW,MAAM;QACf,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAGD;;OAEG;IACH,IAAW,OAAO;QAChB,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAGD;;OAEG;IACH,YAAY,MAAc,EAAE,OAAe;QACzC,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QACtB,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;IAC1B,CAAC;IAED;;;;;;;;OAQG;IACI,KAAK,CAAC,OAAO,CAClB,UAAkB,EAClB,OAAsB,aAAK,CAAC,MAAM,EAClC,UAAwC,EAAE;QAE1C,MAAM,EACJ,IAAI,GAAG,IAAI,GACZ,GAAG,OAAO,CAAC;QACZ,MAAM,OAAO,GAA8D;YACzE,GAAG,QAAQ,CAAC,8BAA8B,CAAC,OAAO;YAClD,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,WAAW;YAC/C,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,aAAa;YACjC,aAAa,EAAE,IAAI,CAAC,OAAO;YAC3B,KAAK,EAAE,UAAU;YACjB,IAAI,EAAE,IAAI;YACV,IAAI,EAAE,IAAI;YACV,QAAQ;gBACN,OAAO,QAAQ,CAAC,8BAA8B,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YAChE,CAAC;SACF,CAAC;QAEF,MAAM,OAAO,CAAC,SAAS,CAAC,2BAA2B,EAAE,OAAO,CAAC,CAAC;IAChE,CAAC;IAED;;;OAGG;IACI,QAAQ;QACb,MAAM,OAAO,GAAmD;YAC9D,GAAG,QAAQ,CAAC,mBAAmB,CAAC,OAAO;YACvC,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,WAAW;YAC/C,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,aAAa;YACjC,QAAQ;gBACN,OAAO,QAAQ,CAAC,mBAAmB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YACrD,CAAC;SACF,CAAC;QAEF,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAC/B,yBAAyB,EACzB,OAAO,EACP,QAAQ,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;QACtC,OAAO,QAAQ,CAAC,KAAK,CAAC;IACxB,CAAC;CACF;AA9ED,sCA8EC","sourcesContent":["// ==== THIS FILE IS GENERATED FROM A TEMPLATE ==== //\n// ============= DO NOT EDIT DIRECTLY ============= //\n\nimport { Device } from '../ascii/device';\nimport * as gateway from '../gateway';\nimport * as requests from '../requests';\nimport { Time, Native, Units } from '../units';\n\n/**\n * An abstraction over a device and it's digital output channel.\n */\nexport class CameraTrigger {\n /**\n * The device whose digital output triggers the camera.\n */\n public get device(): Device {\n return this._device;\n }\n private _device: Device;\n\n /**\n * The digital output channel that triggers the camera.\n */\n public get channel(): number {\n return this._channel;\n }\n private _channel: number;\n\n /**\n * Creates instance of `CameraTrigger` based on the given device and digital output channel.\n */\n constructor(device: Device, channel: number) {\n this._device = device;\n this._channel = channel;\n }\n\n /**\n * Triggers the camera.\n * Schedules trigger pulse on the digital output channel.\n * By default, the method waits until the trigger pulse is finished.\n * @param pulseWidth The time duration of the trigger pulse.\n * Depending on the camera setting, the argument can be use to specify exposure.\n * @param [unit=Units.NATIVE] Units of time.\n * @param [options.wait=true] If false, the method does not wait until the trigger pulse is finished.\n */\n public async trigger(\n pulseWidth: number,\n unit: Time | Native = Units.NATIVE,\n options: CameraTrigger.TriggerOptions = {}\n ): Promise<void> {\n const {\n wait = true,\n } = options;\n const request: requests.MicroscopeTriggerCameraRequest & gateway.Message = {\n ...requests.MicroscopeTriggerCameraRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n channelNumber: this.channel,\n delay: pulseWidth,\n unit: unit,\n wait: wait,\n toBinary() {\n return requests.MicroscopeTriggerCameraRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('microscope/trigger_camera', request);\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.device.connection.interfaceId,\n device: this.device.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\nnamespace CameraTrigger {\n export interface TriggerOptions {\n /**\n * If false, the method does not wait until the trigger pulse is finished.\n */\n wait?: boolean;\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"filter_changer.d.ts","sourceRoot":"","sources":["../../../src/microscopy/filter_changer.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAEzC;;GAEG;AACH,qBAAa,aAAa;IACxB;;OAEG;IACH,IAAW,MAAM,IAAI,MAAM,CAE1B;IACD,OAAO,CAAC,OAAO,CAAS;IAExB;;OAEG;gBACS,MAAM,EAAE,MAAM;IAI1B;;;OAGG;IACU,kBAAkB,IAAI,OAAO,CAAC,MAAM,CAAC;IAkBlD;;;;OAIG;IACU,gBAAgB,IAAI,OAAO,CAAC,MAAM,CAAC;IAkBhD;;;OAGG;IACU,MAAM,CACjB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,IAAI,CAAC;IAiBhB;;;OAGG;IACI,QAAQ,IAAI,MAAM;CAgB1B"}
1
+ {"version":3,"file":"filter_changer.d.ts","sourceRoot":"","sources":["../../../src/microscopy/filter_changer.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAIzC;;GAEG;AACH,qBAAa,aAAa;IACxB;;OAEG;IACH,IAAW,MAAM,IAAI,MAAM,CAE1B;IACD,OAAO,CAAC,OAAO,CAAS;IAExB;;OAEG;gBACS,MAAM,EAAE,MAAM;IAI1B;;;OAGG;IACU,kBAAkB,IAAI,OAAO,CAAC,MAAM,CAAC;IAkBlD;;;;OAIG;IACU,gBAAgB,IAAI,OAAO,CAAC,MAAM,CAAC;IAkBhD;;;OAGG;IACU,MAAM,CACjB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,IAAI,CAAC;IAiBhB;;;OAGG;IACI,QAAQ,IAAI,MAAM;CAgB1B"}
@@ -1 +1 @@
1
- {"version":3,"file":"filter_changer.js","sourceRoot":"","sources":["../../../src/microscopy/filter_changer.ts"],"names":[],"mappings":"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","sourcesContent":["// ==== THIS FILE IS GENERATED FROM A TEMPLATE ==== //\n// ============= DO NOT EDIT DIRECTLY ============= //\n\nimport * as gateway from '../gateway';\nimport * as requests from '../requests';\nimport { Device } from '../ascii/device';\n\n/**\n * A generic turret device.\n */\nexport class FilterChanger {\n /**\n * The base device of this turret.\n */\n public get device(): Device {\n return this._device;\n }\n private _device: Device;\n\n /**\n * Creates instance of `FilterChanger` based on the given device.\n */\n constructor(device: Device) {\n this._device = device;\n }\n\n /**\n * Gets number of filters of the changer.\n * @returns Number of positions.\n */\n public async getNumberOfFilters(): Promise<number> {\n const request: requests.AxisEmptyRequest & gateway.Message = {\n ...requests.AxisEmptyRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n axis: 1,\n toBinary() {\n return requests.AxisEmptyRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.IntResponse>(\n 'device/get_index_count',\n request,\n requests.IntResponse.fromBinary);\n return response.value;\n }\n\n /**\n * Returns the current filter number starting from 1.\n * The value of 0 indicates that the position is either unknown or between two filters.\n * @returns Filter number starting from 1 or 0 if the position cannot be determined.\n */\n public async getCurrentFilter(): Promise<number> {\n const request: requests.AxisEmptyRequest & gateway.Message = {\n ...requests.AxisEmptyRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n axis: 1,\n toBinary() {\n return requests.AxisEmptyRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.IntResponse>(\n 'device/get_index_position',\n request,\n requests.IntResponse.fromBinary);\n return response.value;\n }\n\n /**\n * Changes to the specified filter.\n * @param filter Filter number starting from 1.\n */\n public async change(\n filter: number\n ): Promise<void> {\n const request: requests.DeviceMoveRequest & gateway.Message = {\n ...requests.DeviceMoveRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n axis: 1,\n type: requests.AxisMoveType.INDEX,\n waitUntilIdle: true,\n argInt: filter,\n toBinary() {\n return requests.DeviceMoveRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/move', request);\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.device.connection.interfaceId,\n device: this.device.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\nnamespace FilterChanger {\n}\n"]}
1
+ {"version":3,"file":"filter_changer.js","sourceRoot":"","sources":["../../../src/microscopy/filter_changer.ts"],"names":[],"mappings":"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","sourcesContent":["// ==== THIS FILE IS GENERATED FROM A TEMPLATE ==== //\n// ============= DO NOT EDIT DIRECTLY ============= //\n\nimport { Device } from '../ascii/device';\nimport * as gateway from '../gateway';\nimport * as requests from '../requests';\n\n/**\n * A generic turret device.\n */\nexport class FilterChanger {\n /**\n * The base device of this turret.\n */\n public get device(): Device {\n return this._device;\n }\n private _device: Device;\n\n /**\n * Creates instance of `FilterChanger` based on the given device.\n */\n constructor(device: Device) {\n this._device = device;\n }\n\n /**\n * Gets number of filters of the changer.\n * @returns Number of positions.\n */\n public async getNumberOfFilters(): Promise<number> {\n const request: requests.AxisEmptyRequest & gateway.Message = {\n ...requests.AxisEmptyRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n axis: 1,\n toBinary() {\n return requests.AxisEmptyRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.IntResponse>(\n 'device/get_index_count',\n request,\n requests.IntResponse.fromBinary);\n return response.value;\n }\n\n /**\n * Returns the current filter number starting from 1.\n * The value of 0 indicates that the position is either unknown or between two filters.\n * @returns Filter number starting from 1 or 0 if the position cannot be determined.\n */\n public async getCurrentFilter(): Promise<number> {\n const request: requests.AxisEmptyRequest & gateway.Message = {\n ...requests.AxisEmptyRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n axis: 1,\n toBinary() {\n return requests.AxisEmptyRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.IntResponse>(\n 'device/get_index_position',\n request,\n requests.IntResponse.fromBinary);\n return response.value;\n }\n\n /**\n * Changes to the specified filter.\n * @param filter Filter number starting from 1.\n */\n public async change(\n filter: number\n ): Promise<void> {\n const request: requests.DeviceMoveRequest & gateway.Message = {\n ...requests.DeviceMoveRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n axis: 1,\n type: requests.AxisMoveType.INDEX,\n waitUntilIdle: true,\n argInt: filter,\n toBinary() {\n return requests.DeviceMoveRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/move', request);\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.device.connection.interfaceId,\n device: this.device.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"]}
@@ -1,6 +1,6 @@
1
+ import { Connection } from '../ascii/connection';
1
2
  import { Device } from '../ascii/device';
2
3
  import { DeviceIO } from '../ascii/device_io';
3
- import { Connection } from '../ascii/connection';
4
4
  import { IlluminatorChannel } from './illuminator_channel';
5
5
  /**
6
6
  * Use to manage an LED controller.
@@ -1 +1 @@
1
- {"version":3,"file":"illuminator.d.ts","sourceRoot":"","sources":["../../../src/microscopy/illuminator.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAE3D;;;GAGG;AACH,qBAAa,WAAW;IACtB;;OAEG;IACH,IAAW,MAAM,IAAI,MAAM,CAE1B;IACD,OAAO,CAAC,OAAO,CAAS;IAExB;;OAEG;IACH,IAAW,EAAE,IAAI,QAAQ,CAExB;IACD,OAAO,CAAC,GAAG,CAAW;IAEtB;;;OAGG;gBACS,MAAM,EAAE,MAAM;IAM1B;;;;;OAKG;IACI,UAAU,CACf,aAAa,EAAE,MAAM,GACpB,kBAAkB;IAOrB;;OAEG;IACU,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAarC;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAa5B;;;;;;OAMG;WACiB,IAAI,CACtB,UAAU,EAAE,UAAU,EACtB,OAAO,GAAE,WAAW,CAAC,WAAgB,GACpC,OAAO,CAAC,WAAW,CAAC;IAoBvB;;;OAGG;IACI,QAAQ,IAAI,MAAM;CAgB1B;AAED,kBAAU,WAAW,CAAC;IACpB,UAAiB,WAAW;QACxB;;WAEG;QACH,aAAa,CAAC,EAAE,MAAM,CAAC;KAC1B;CACF"}
1
+ {"version":3,"file":"illuminator.d.ts","sourceRoot":"","sources":["../../../src/microscopy/illuminator.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAG9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAE3D;;;GAGG;AACH,qBAAa,WAAW;IACtB;;OAEG;IACH,IAAW,MAAM,IAAI,MAAM,CAE1B;IACD,OAAO,CAAC,OAAO,CAAS;IAExB;;OAEG;IACH,IAAW,EAAE,IAAI,QAAQ,CAExB;IACD,OAAO,CAAC,GAAG,CAAW;IAEtB;;;OAGG;gBACS,MAAM,EAAE,MAAM;IAM1B;;;;;OAKG;IACI,UAAU,CACf,aAAa,EAAE,MAAM,GACpB,kBAAkB;IAOrB;;OAEG;IACU,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAarC;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAa5B;;;;;;OAMG;WACiB,IAAI,CACtB,UAAU,EAAE,UAAU,EACtB,OAAO,GAAE,WAAW,CAAC,WAAgB,GACpC,OAAO,CAAC,WAAW,CAAC;IAoBvB;;;OAGG;IACI,QAAQ,IAAI,MAAM;CAgB1B;AAED,kBAAU,WAAW,CAAC;IACpB,UAAiB,WAAW;QACxB;;WAEG;QACH,aAAa,CAAC,EAAE,MAAM,CAAC;KAC1B;CACF"}
@@ -26,10 +26,10 @@ var __importStar = (this && this.__importStar) || function (mod) {
26
26
  };
27
27
  Object.defineProperty(exports, "__esModule", { value: true });
28
28
  exports.Illuminator = void 0;
29
- const gateway = __importStar(require("../gateway"));
30
- const requests = __importStar(require("../requests"));
31
29
  const device_1 = require("../ascii/device");
32
30
  const device_io_1 = require("../ascii/device_io");
31
+ const gateway = __importStar(require("../gateway"));
32
+ const requests = __importStar(require("../requests"));
33
33
  const illuminator_channel_1 = require("./illuminator_channel");
34
34
  /**
35
35
  * Use to manage an LED controller.
@@ -1 +1 @@
1
- {"version":3,"file":"illuminator.js","sourceRoot":"","sources":["../../../src/microscopy/illuminator.ts"],"names":[],"mappings":"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","sourcesContent":["// ==== THIS FILE IS GENERATED FROM A TEMPLATE ==== //\n// ============= DO NOT EDIT DIRECTLY ============= //\n\nimport * as gateway from '../gateway';\nimport * as requests from '../requests';\nimport { Device } from '../ascii/device';\nimport { DeviceIO } from '../ascii/device_io';\nimport { Connection } from '../ascii/connection';\nimport { IlluminatorChannel } from './illuminator_channel';\n\n/**\n * Use to manage an LED controller.\n * Requires at least Firmware 7.09.\n */\nexport class Illuminator {\n /**\n * The base device of this illuminator.\n */\n public get device(): Device {\n return this._device;\n }\n private _device: Device;\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 * Creates instance of `Illuminator` based on the given device.\n * If the device is identified, this constructor will ensure it is an illuminator.\n */\n constructor(device: Device) {\n this._device = device;\n this._io = new DeviceIO(device);\n this._verifyIsIlluminator();\n }\n\n /**\n * Gets an IlluminatorChannel class instance that allows control of a particular channel.\n * Channels are numbered from 1.\n * @param channelNumber Number of channel to control.\n * @returns Illuminator channel instance.\n */\n public getChannel(\n channelNumber: number\n ): IlluminatorChannel {\n if (channelNumber <= 0) {\n throw new TypeError('Invalid value; channels are numbered from 1.');\n }\n return new IlluminatorChannel(this, channelNumber);\n }\n\n /**\n * Turns all channels off.\n */\n public async turnOff(): Promise<void> {\n const request: requests.DeviceEmptyRequest & gateway.Message = {\n ...requests.DeviceEmptyRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n toBinary() {\n return requests.DeviceEmptyRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('illuminator/all_off', request);\n }\n\n /**\n * Checks if this is an illuminator or some other type of device and throws an error if it is not.\n */\n private _verifyIsIlluminator(): void {\n const request: requests.DeviceEmptyRequest & gateway.Message = {\n ...requests.DeviceEmptyRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n toBinary() {\n return requests.DeviceEmptyRequest.toBinary(this);\n },\n };\n\n gateway.callSync('illuminator/verify', request);\n }\n\n /**\n * Finds an illuminator on a connection.\n * In case of conflict, specify the optional device address.\n * @param connection Connection on which to detect the illuminator.\n * @param [options.deviceAddress=0] Optional device address of the illuminator.\n * @returns New instance of illuminator.\n */\n public static async find(\n connection: Connection,\n options: Illuminator.FindOptions = {}\n ): Promise<Illuminator> {\n const {\n deviceAddress = 0,\n } = options;\n const request: requests.FindDeviceRequest & gateway.Message = {\n ...requests.FindDeviceRequest.DEFAULT,\n interfaceId: connection.interfaceId,\n deviceAddress: deviceAddress,\n toBinary() {\n return requests.FindDeviceRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.FindDeviceResponse>(\n 'illuminator/detect',\n request,\n requests.FindDeviceResponse.fromBinary);\n return new Illuminator(new Device(connection, response.address));\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.device.connection.interfaceId,\n device: this.device.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\nnamespace Illuminator {\n export interface FindOptions {\n /**\n * Optional device address of the illuminator.\n */\n deviceAddress?: number;\n }\n}\n"]}
1
+ {"version":3,"file":"illuminator.js","sourceRoot":"","sources":["../../../src/microscopy/illuminator.ts"],"names":[],"mappings":"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","sourcesContent":["// ==== THIS FILE IS GENERATED FROM A TEMPLATE ==== //\n// ============= DO NOT EDIT DIRECTLY ============= //\n\nimport { Connection } from '../ascii/connection';\nimport { Device } from '../ascii/device';\nimport { DeviceIO } from '../ascii/device_io';\nimport * as gateway from '../gateway';\nimport * as requests from '../requests';\nimport { IlluminatorChannel } from './illuminator_channel';\n\n/**\n * Use to manage an LED controller.\n * Requires at least Firmware 7.09.\n */\nexport class Illuminator {\n /**\n * The base device of this illuminator.\n */\n public get device(): Device {\n return this._device;\n }\n private _device: Device;\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 * Creates instance of `Illuminator` based on the given device.\n * If the device is identified, this constructor will ensure it is an illuminator.\n */\n constructor(device: Device) {\n this._device = device;\n this._io = new DeviceIO(device);\n this._verifyIsIlluminator();\n }\n\n /**\n * Gets an IlluminatorChannel class instance that allows control of a particular channel.\n * Channels are numbered from 1.\n * @param channelNumber Number of channel to control.\n * @returns Illuminator channel instance.\n */\n public getChannel(\n channelNumber: number\n ): IlluminatorChannel {\n if (channelNumber <= 0) {\n throw new TypeError('Invalid value; channels are numbered from 1.');\n }\n return new IlluminatorChannel(this, channelNumber);\n }\n\n /**\n * Turns all channels off.\n */\n public async turnOff(): Promise<void> {\n const request: requests.DeviceEmptyRequest & gateway.Message = {\n ...requests.DeviceEmptyRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n toBinary() {\n return requests.DeviceEmptyRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('illuminator/all_off', request);\n }\n\n /**\n * Checks if this is an illuminator or some other type of device and throws an error if it is not.\n */\n private _verifyIsIlluminator(): void {\n const request: requests.DeviceEmptyRequest & gateway.Message = {\n ...requests.DeviceEmptyRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n toBinary() {\n return requests.DeviceEmptyRequest.toBinary(this);\n },\n };\n\n gateway.callSync('illuminator/verify', request);\n }\n\n /**\n * Finds an illuminator on a connection.\n * In case of conflict, specify the optional device address.\n * @param connection Connection on which to detect the illuminator.\n * @param [options.deviceAddress=0] Optional device address of the illuminator.\n * @returns New instance of illuminator.\n */\n public static async find(\n connection: Connection,\n options: Illuminator.FindOptions = {}\n ): Promise<Illuminator> {\n const {\n deviceAddress = 0,\n } = options;\n const request: requests.FindDeviceRequest & gateway.Message = {\n ...requests.FindDeviceRequest.DEFAULT,\n interfaceId: connection.interfaceId,\n deviceAddress: deviceAddress,\n toBinary() {\n return requests.FindDeviceRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.FindDeviceResponse>(\n 'illuminator/detect',\n request,\n requests.FindDeviceResponse.fromBinary);\n return new Illuminator(new Device(connection, response.address));\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.device.connection.interfaceId,\n device: this.device.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\nnamespace Illuminator {\n export interface FindOptions {\n /**\n * Optional device address of the illuminator.\n */\n deviceAddress?: number;\n }\n}\n"]}
@@ -1,11 +1,11 @@
1
- import { AxisStorage } from '../ascii/storage';
1
+ import { SetStateAxisResponse } from '../ascii';
2
2
  import { AxisSettings } from '../ascii/axis_settings';
3
- import { Warnings } from '../ascii/warnings';
3
+ import { AxisStorage } from '../ascii/axis_storage';
4
4
  import { Response } from '../ascii/response';
5
- import type { Illuminator } from './illuminator';
6
- import { SetStateAxisResponse } from '../ascii';
5
+ import { Warnings } from '../ascii/warnings';
7
6
  import { FirmwareVersion } from '../firmware_version';
8
7
  import { Measurement } from '../measurement';
8
+ import type { Illuminator } from './illuminator';
9
9
  /**
10
10
  * Use to control a channel (LED lamp) on an illuminator.
11
11
  * Requires at least Firmware 7.09.
@@ -1 +1 @@
1
- {"version":3,"file":"illuminator_channel.d.ts","sourceRoot":"","sources":["../../../src/microscopy/illuminator_channel.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"illuminator_channel.d.ts","sourceRoot":"","sources":["../../../src/microscopy/illuminator_channel.ts"],"names":[],"mappings":"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"}
@@ -26,14 +26,14 @@ var __importStar = (this && this.__importStar) || function (mod) {
26
26
  };
27
27
  Object.defineProperty(exports, "__esModule", { value: true });
28
28
  exports.IlluminatorChannel = void 0;
29
- const gateway = __importStar(require("../gateway"));
30
- const requests = __importStar(require("../requests"));
29
+ const ascii_1 = require("../ascii");
31
30
  const axis_1 = require("../ascii/axis");
32
- const storage_1 = require("../ascii/storage");
33
31
  const axis_settings_1 = require("../ascii/axis_settings");
34
- const warnings_1 = require("../ascii/warnings");
32
+ const axis_storage_1 = require("../ascii/axis_storage");
35
33
  const response_1 = require("../ascii/response");
36
- const ascii_1 = require("../ascii");
34
+ const warnings_1 = require("../ascii/warnings");
35
+ const gateway = __importStar(require("../gateway"));
36
+ const requests = __importStar(require("../requests"));
37
37
  /**
38
38
  * Use to control a channel (LED lamp) on an illuminator.
39
39
  * Requires at least Firmware 7.09.
@@ -74,7 +74,7 @@ class IlluminatorChannel {
74
74
  this._channelNumber = channelNumber;
75
75
  this._axis = new axis_1.Axis(illuminator.device, channelNumber);
76
76
  this._settings = new axis_settings_1.AxisSettings(this._axis);
77
- this._storage = new storage_1.AxisStorage(this._axis);
77
+ this._storage = new axis_storage_1.AxisStorage(this._axis);
78
78
  this._warnings = new warnings_1.Warnings(illuminator.device, channelNumber);
79
79
  }
80
80
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"illuminator_channel.js","sourceRoot":"","sources":["../../../src/microscopy/illuminator_channel.ts"],"names":[],"mappings":"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","sourcesContent":["// ==== THIS FILE IS GENERATED FROM A TEMPLATE ==== //\n// ============= DO NOT EDIT DIRECTLY ============= //\n\nimport * as gateway from '../gateway';\nimport * as requests from '../requests';\nimport { Axis } from '../ascii/axis';\nimport { AxisStorage } from '../ascii/storage';\nimport { AxisSettings } from '../ascii/axis_settings';\nimport { Warnings } from '../ascii/warnings';\nimport { Response } from '../ascii/response';\nimport type { Illuminator } from './illuminator';\nimport { SetStateAxisResponse } from '../ascii';\nimport { FirmwareVersion } from '../firmware_version';\nimport { Measurement } from '../measurement';\n\n/**\n * Use to control a channel (LED lamp) on an illuminator.\n * Requires at least Firmware 7.09.\n */\nexport class IlluminatorChannel {\n /**\n * Illuminator of this channel.\n */\n public get illuminator(): Illuminator {\n return this._illuminator;\n }\n private _illuminator: Illuminator;\n\n /**\n * The channel number identifies the channel on the illuminator.\n */\n public get channelNumber(): number {\n return this._channelNumber;\n }\n private _channelNumber: number;\n\n private _axis: Axis;\n\n /**\n * Settings and properties of this channel.\n */\n public get settings(): AxisSettings {\n return this._settings;\n }\n private _settings: AxisSettings;\n\n /**\n * Key-value storage of this channel.\n */\n public get storage(): AxisStorage {\n return this._storage;\n }\n private _storage: AxisStorage;\n\n /**\n * Warnings and faults of this channel.\n */\n public get warnings(): Warnings {\n return this._warnings;\n }\n private _warnings: Warnings;\n\n constructor(illuminator: Illuminator, channelNumber: number) {\n this._illuminator = illuminator;\n this._channelNumber = channelNumber;\n this._axis = new Axis(illuminator.device, channelNumber);\n this._settings = new AxisSettings(this._axis);\n this._storage = new AxisStorage(this._axis);\n this._warnings = new Warnings(illuminator.device, channelNumber);\n }\n\n /**\n * Turns this channel on.\n * @param duration Duration for which to turn the channel on.\n * If not specified, the channel remains on until turned off.\n */\n public async on(\n duration?: Measurement\n ): Promise<void> {\n const request: requests.ChannelOn & gateway.Message = {\n ...requests.ChannelOn.DEFAULT,\n interfaceId: this.illuminator.device.connection.interfaceId,\n device: this.illuminator.device.deviceAddress,\n axis: this.channelNumber,\n on: true,\n duration: duration,\n toBinary() {\n return requests.ChannelOn.toBinary(this);\n },\n };\n\n await gateway.callAsync('illuminator/on', request);\n }\n\n /**\n * Turns this channel off.\n */\n public async off(): Promise<void> {\n const request: requests.ChannelOn & gateway.Message = {\n ...requests.ChannelOn.DEFAULT,\n interfaceId: this.illuminator.device.connection.interfaceId,\n device: this.illuminator.device.deviceAddress,\n axis: this.channelNumber,\n on: false,\n toBinary() {\n return requests.ChannelOn.toBinary(this);\n },\n };\n\n await gateway.callAsync('illuminator/on', request);\n }\n\n /**\n * Turns this channel on or off.\n * @param on True to turn channel on, false to turn it off.\n */\n public async setOn(\n on: boolean\n ): Promise<void> {\n const request: requests.ChannelOn & gateway.Message = {\n ...requests.ChannelOn.DEFAULT,\n interfaceId: this.illuminator.device.connection.interfaceId,\n device: this.illuminator.device.deviceAddress,\n axis: this.channelNumber,\n on: on,\n toBinary() {\n return requests.ChannelOn.toBinary(this);\n },\n };\n\n await gateway.callAsync('illuminator/on', request);\n }\n\n /**\n * Checks if this channel is on.\n * @returns True if channel is on, false otherwise.\n */\n public async isOn(): Promise<boolean> {\n const request: requests.AxisEmptyRequest & gateway.Message = {\n ...requests.AxisEmptyRequest.DEFAULT,\n interfaceId: this.illuminator.device.connection.interfaceId,\n device: this.illuminator.device.deviceAddress,\n axis: this.channelNumber,\n toBinary() {\n return requests.AxisEmptyRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.BoolResponse>(\n 'illuminator/is_on',\n request,\n requests.BoolResponse.fromBinary);\n return response.value;\n }\n\n /**\n * Sets channel intensity as a fraction of the maximum flux.\n * @param intensity Fraction of intensity to set (between 0 and 1).\n */\n public async setIntensity(\n intensity: number\n ): Promise<void> {\n const request: requests.ChannelSetIntensity & gateway.Message = {\n ...requests.ChannelSetIntensity.DEFAULT,\n interfaceId: this.illuminator.device.connection.interfaceId,\n device: this.illuminator.device.deviceAddress,\n axis: this.channelNumber,\n intensity: intensity,\n toBinary() {\n return requests.ChannelSetIntensity.toBinary(this);\n },\n };\n\n await gateway.callAsync('illuminator/set_intensity', request);\n }\n\n /**\n * Gets the current intensity of this channel.\n * @returns Current intensity as fraction of maximum flux.\n */\n public async getIntensity(): Promise<number> {\n const request: requests.AxisEmptyRequest & gateway.Message = {\n ...requests.AxisEmptyRequest.DEFAULT,\n interfaceId: this.illuminator.device.connection.interfaceId,\n device: this.illuminator.device.deviceAddress,\n axis: this.channelNumber,\n toBinary() {\n return requests.AxisEmptyRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.DoubleResponse>(\n 'illuminator/get_intensity',\n request,\n requests.DoubleResponse.fromBinary);\n return response.value;\n }\n\n /**\n * Sends a generic ASCII command to this channel.\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.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: IlluminatorChannel.GenericCommandOptions = {}\n ): Promise<Response> {\n const {\n checkErrors = true,\n timeout = 0,\n } = options;\n const request: requests.GenericCommandRequest & gateway.Message = {\n ...requests.GenericCommandRequest.DEFAULT,\n interfaceId: this.illuminator.device.connection.interfaceId,\n device: this.illuminator.device.deviceAddress,\n axis: this.channelNumber,\n command: command,\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 channel and expects 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.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: IlluminatorChannel.GenericCommandMultiResponseOptions = {}\n ): Promise<Response[]> {\n const {\n checkErrors = true,\n timeout = 0,\n } = options;\n const request: requests.GenericCommandRequest & gateway.Message = {\n ...requests.GenericCommandRequest.DEFAULT,\n interfaceId: this.illuminator.device.connection.interfaceId,\n device: this.illuminator.device.deviceAddress,\n axis: this.channelNumber,\n command: command,\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 channel 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 */\n public async genericCommandNoResponse(\n command: string\n ): Promise<void> {\n const request: requests.GenericCommandRequest & gateway.Message = {\n ...requests.GenericCommandRequest.DEFAULT,\n interfaceId: this.illuminator.device.connection.interfaceId,\n device: this.illuminator.device.deviceAddress,\n axis: this.channelNumber,\n command: command,\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 * Returns a serialization of the current channel state that can be saved and reapplied.\n * @returns A serialization of the current state of the channel.\n */\n public async getState(): Promise<string> {\n const request: requests.AxisEmptyRequest & gateway.Message = {\n ...requests.AxisEmptyRequest.DEFAULT,\n interfaceId: this.illuminator.device.connection.interfaceId,\n device: this.illuminator.device.deviceAddress,\n axis: this.channelNumber,\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 channel.\n * @param state The state object to apply to this channel.\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 ): Promise<SetStateAxisResponse> {\n const request: requests.SetStateRequest & gateway.Message = {\n ...requests.SetStateRequest.DEFAULT,\n interfaceId: this.illuminator.device.connection.interfaceId,\n device: this.illuminator.device.deviceAddress,\n axis: this.channelNumber,\n state: state,\n toBinary() {\n return requests.SetStateRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<SetStateAxisResponse>(\n 'device/set_axis_state',\n request,\n SetStateAxisResponse.fromBinary);\n return response;\n }\n\n /**\n * Checks if a state can be applied to this channel.\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 explanation of why this state cannot be set to this channel.\n */\n public async canSetState(\n state: string,\n options: IlluminatorChannel.CanSetStateOptions = {}\n ): Promise<string | null> {\n const {\n firmwareVersion,\n } = options;\n const request: requests.CanSetStateRequest & gateway.Message = {\n ...requests.CanSetStateRequest.DEFAULT,\n interfaceId: this.illuminator.device.connection.interfaceId,\n device: this.illuminator.device.deviceAddress,\n axis: this.channelNumber,\n state: state,\n firmwareVersion: firmwareVersion,\n toBinary() {\n return requests.CanSetStateRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.CanSetStateAxisResponse>(\n 'device/can_set_axis_state',\n request,\n requests.CanSetStateAxisResponse.fromBinary);\n return response.error ?? null;\n }\n\n /**\n * Returns a string that represents the channel.\n * @returns A string that represents the channel.\n */\n public toString(): string {\n const request: requests.AxisToStringRequest & gateway.Message = {\n ...requests.AxisToStringRequest.DEFAULT,\n interfaceId: this.illuminator.device.connection.interfaceId,\n device: this.illuminator.device.deviceAddress,\n axis: this.channelNumber,\n typeOverride: 'Channel',\n toBinary() {\n return requests.AxisToStringRequest.toBinary(this);\n },\n };\n\n const response = gateway.callSync<requests.StringResponse>(\n 'device/axis_to_string',\n request,\n requests.StringResponse.fromBinary);\n return response.value;\n }\n}\n\nnamespace IlluminatorChannel {\n export interface GenericCommandOptions {\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 * 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 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":"illuminator_channel.js","sourceRoot":"","sources":["../../../src/microscopy/illuminator_channel.ts"],"names":[],"mappings":"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","sourcesContent":["// ==== THIS FILE IS GENERATED FROM A TEMPLATE ==== //\n// ============= DO NOT EDIT DIRECTLY ============= //\n\nimport { SetStateAxisResponse } from '../ascii';\nimport { Axis } from '../ascii/axis';\nimport { AxisSettings } from '../ascii/axis_settings';\nimport { AxisStorage } from '../ascii/axis_storage';\nimport { Response } from '../ascii/response';\nimport { Warnings } from '../ascii/warnings';\nimport { FirmwareVersion } from '../firmware_version';\nimport * as gateway from '../gateway';\nimport { Measurement } from '../measurement';\nimport * as requests from '../requests';\nimport type { Illuminator } from './illuminator';\n\n/**\n * Use to control a channel (LED lamp) on an illuminator.\n * Requires at least Firmware 7.09.\n */\nexport class IlluminatorChannel {\n /**\n * Illuminator of this channel.\n */\n public get illuminator(): Illuminator {\n return this._illuminator;\n }\n private _illuminator: Illuminator;\n\n /**\n * The channel number identifies the channel on the illuminator.\n */\n public get channelNumber(): number {\n return this._channelNumber;\n }\n private _channelNumber: number;\n\n private _axis: Axis;\n\n /**\n * Settings and properties of this channel.\n */\n public get settings(): AxisSettings {\n return this._settings;\n }\n private _settings: AxisSettings;\n\n /**\n * Key-value storage of this channel.\n */\n public get storage(): AxisStorage {\n return this._storage;\n }\n private _storage: AxisStorage;\n\n /**\n * Warnings and faults of this channel.\n */\n public get warnings(): Warnings {\n return this._warnings;\n }\n private _warnings: Warnings;\n\n constructor(illuminator: Illuminator, channelNumber: number) {\n this._illuminator = illuminator;\n this._channelNumber = channelNumber;\n this._axis = new Axis(illuminator.device, channelNumber);\n this._settings = new AxisSettings(this._axis);\n this._storage = new AxisStorage(this._axis);\n this._warnings = new Warnings(illuminator.device, channelNumber);\n }\n\n /**\n * Turns this channel on.\n * @param duration Duration for which to turn the channel on.\n * If not specified, the channel remains on until turned off.\n */\n public async on(\n duration?: Measurement\n ): Promise<void> {\n const request: requests.ChannelOn & gateway.Message = {\n ...requests.ChannelOn.DEFAULT,\n interfaceId: this.illuminator.device.connection.interfaceId,\n device: this.illuminator.device.deviceAddress,\n axis: this.channelNumber,\n on: true,\n duration: duration,\n toBinary() {\n return requests.ChannelOn.toBinary(this);\n },\n };\n\n await gateway.callAsync('illuminator/on', request);\n }\n\n /**\n * Turns this channel off.\n */\n public async off(): Promise<void> {\n const request: requests.ChannelOn & gateway.Message = {\n ...requests.ChannelOn.DEFAULT,\n interfaceId: this.illuminator.device.connection.interfaceId,\n device: this.illuminator.device.deviceAddress,\n axis: this.channelNumber,\n on: false,\n toBinary() {\n return requests.ChannelOn.toBinary(this);\n },\n };\n\n await gateway.callAsync('illuminator/on', request);\n }\n\n /**\n * Turns this channel on or off.\n * @param on True to turn channel on, false to turn it off.\n */\n public async setOn(\n on: boolean\n ): Promise<void> {\n const request: requests.ChannelOn & gateway.Message = {\n ...requests.ChannelOn.DEFAULT,\n interfaceId: this.illuminator.device.connection.interfaceId,\n device: this.illuminator.device.deviceAddress,\n axis: this.channelNumber,\n on: on,\n toBinary() {\n return requests.ChannelOn.toBinary(this);\n },\n };\n\n await gateway.callAsync('illuminator/on', request);\n }\n\n /**\n * Checks if this channel is on.\n * @returns True if channel is on, false otherwise.\n */\n public async isOn(): Promise<boolean> {\n const request: requests.AxisEmptyRequest & gateway.Message = {\n ...requests.AxisEmptyRequest.DEFAULT,\n interfaceId: this.illuminator.device.connection.interfaceId,\n device: this.illuminator.device.deviceAddress,\n axis: this.channelNumber,\n toBinary() {\n return requests.AxisEmptyRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.BoolResponse>(\n 'illuminator/is_on',\n request,\n requests.BoolResponse.fromBinary);\n return response.value;\n }\n\n /**\n * Sets channel intensity as a fraction of the maximum flux.\n * @param intensity Fraction of intensity to set (between 0 and 1).\n */\n public async setIntensity(\n intensity: number\n ): Promise<void> {\n const request: requests.ChannelSetIntensity & gateway.Message = {\n ...requests.ChannelSetIntensity.DEFAULT,\n interfaceId: this.illuminator.device.connection.interfaceId,\n device: this.illuminator.device.deviceAddress,\n axis: this.channelNumber,\n intensity: intensity,\n toBinary() {\n return requests.ChannelSetIntensity.toBinary(this);\n },\n };\n\n await gateway.callAsync('illuminator/set_intensity', request);\n }\n\n /**\n * Gets the current intensity of this channel.\n * @returns Current intensity as fraction of maximum flux.\n */\n public async getIntensity(): Promise<number> {\n const request: requests.AxisEmptyRequest & gateway.Message = {\n ...requests.AxisEmptyRequest.DEFAULT,\n interfaceId: this.illuminator.device.connection.interfaceId,\n device: this.illuminator.device.deviceAddress,\n axis: this.channelNumber,\n toBinary() {\n return requests.AxisEmptyRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.DoubleResponse>(\n 'illuminator/get_intensity',\n request,\n requests.DoubleResponse.fromBinary);\n return response.value;\n }\n\n /**\n * Sends a generic ASCII command to this channel.\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.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: IlluminatorChannel.GenericCommandOptions = {}\n ): Promise<Response> {\n const {\n checkErrors = true,\n timeout = 0,\n } = options;\n const request: requests.GenericCommandRequest & gateway.Message = {\n ...requests.GenericCommandRequest.DEFAULT,\n interfaceId: this.illuminator.device.connection.interfaceId,\n device: this.illuminator.device.deviceAddress,\n axis: this.channelNumber,\n command: command,\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 channel and expects 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.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: IlluminatorChannel.GenericCommandMultiResponseOptions = {}\n ): Promise<Response[]> {\n const {\n checkErrors = true,\n timeout = 0,\n } = options;\n const request: requests.GenericCommandRequest & gateway.Message = {\n ...requests.GenericCommandRequest.DEFAULT,\n interfaceId: this.illuminator.device.connection.interfaceId,\n device: this.illuminator.device.deviceAddress,\n axis: this.channelNumber,\n command: command,\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 channel 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 */\n public async genericCommandNoResponse(\n command: string\n ): Promise<void> {\n const request: requests.GenericCommandRequest & gateway.Message = {\n ...requests.GenericCommandRequest.DEFAULT,\n interfaceId: this.illuminator.device.connection.interfaceId,\n device: this.illuminator.device.deviceAddress,\n axis: this.channelNumber,\n command: command,\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 * Returns a serialization of the current channel state that can be saved and reapplied.\n * @returns A serialization of the current state of the channel.\n */\n public async getState(): Promise<string> {\n const request: requests.AxisEmptyRequest & gateway.Message = {\n ...requests.AxisEmptyRequest.DEFAULT,\n interfaceId: this.illuminator.device.connection.interfaceId,\n device: this.illuminator.device.deviceAddress,\n axis: this.channelNumber,\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 channel.\n * @param state The state object to apply to this channel.\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 ): Promise<SetStateAxisResponse> {\n const request: requests.SetStateRequest & gateway.Message = {\n ...requests.SetStateRequest.DEFAULT,\n interfaceId: this.illuminator.device.connection.interfaceId,\n device: this.illuminator.device.deviceAddress,\n axis: this.channelNumber,\n state: state,\n toBinary() {\n return requests.SetStateRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<SetStateAxisResponse>(\n 'device/set_axis_state',\n request,\n SetStateAxisResponse.fromBinary);\n return response;\n }\n\n /**\n * Checks if a state can be applied to this channel.\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 explanation of why this state cannot be set to this channel.\n */\n public async canSetState(\n state: string,\n options: IlluminatorChannel.CanSetStateOptions = {}\n ): Promise<string | null> {\n const {\n firmwareVersion,\n } = options;\n const request: requests.CanSetStateRequest & gateway.Message = {\n ...requests.CanSetStateRequest.DEFAULT,\n interfaceId: this.illuminator.device.connection.interfaceId,\n device: this.illuminator.device.deviceAddress,\n axis: this.channelNumber,\n state: state,\n firmwareVersion: firmwareVersion,\n toBinary() {\n return requests.CanSetStateRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.CanSetStateAxisResponse>(\n 'device/can_set_axis_state',\n request,\n requests.CanSetStateAxisResponse.fromBinary);\n return response.error ?? null;\n }\n\n /**\n * Returns a string that represents the channel.\n * @returns A string that represents the channel.\n */\n public toString(): string {\n const request: requests.AxisToStringRequest & gateway.Message = {\n ...requests.AxisToStringRequest.DEFAULT,\n interfaceId: this.illuminator.device.connection.interfaceId,\n device: this.illuminator.device.deviceAddress,\n axis: this.channelNumber,\n typeOverride: 'Channel',\n toBinary() {\n return requests.AxisToStringRequest.toBinary(this);\n },\n };\n\n const response = gateway.callSync<requests.StringResponse>(\n 'device/axis_to_string',\n request,\n requests.StringResponse.fromBinary);\n return response.value;\n }\n}\n\nnamespace IlluminatorChannel {\n export interface GenericCommandOptions {\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 * 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 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,12 +1,12 @@
1
1
  import { Axis } from '../ascii/axis';
2
2
  import { AxisGroup } from '../ascii/axis_group';
3
3
  import { Connection } from '../ascii/connection';
4
- import { Illuminator } from './illuminator';
5
- import { ObjectiveChanger } from './objective_changer';
6
- import { MicroscopeConfig } from './microscope_config';
7
- import { FilterChanger } from './filter_changer';
8
4
  import { Autofocus } from './autofocus';
9
5
  import { CameraTrigger } from './camera_trigger';
6
+ import { FilterChanger } from './filter_changer';
7
+ import { Illuminator } from './illuminator';
8
+ import { MicroscopeConfig } from './microscope_config';
9
+ import { ObjectiveChanger } from './objective_changer';
10
10
  import { ThirdPartyComponents } from './third_party_components';
11
11
  /**
12
12
  * Represent a microscope.
@@ -1 +1 @@
1
- {"version":3,"file":"microscope.d.ts","sourceRoot":"","sources":["../../../src/microscopy/microscope.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AACrC,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAEhD,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAEhE;;;;GAIG;AACH,qBAAa,UAAU;IACrB;;OAEG;IACH,IAAW,UAAU,IAAI,UAAU,CAElC;IACD,OAAO,CAAC,WAAW,CAAa;IAEhC,OAAO,CAAC,OAAO,CAAmB;IAElC;;OAEG;IACH,IAAW,WAAW,IAAI,WAAW,GAAG,SAAS,CAEhD;IACD,OAAO,CAAC,YAAY,CAA0B;IAE9C;;OAEG;IACH,IAAW,SAAS,IAAI,IAAI,GAAG,SAAS,CAEvC;IACD,OAAO,CAAC,UAAU,CAAmB;IAErC;;OAEG;IACH,IAAW,KAAK,IAAI,IAAI,GAAG,SAAS,CAEnC;IACD,OAAO,CAAC,MAAM,CAAmB;IAEjC;;OAEG;IACH,IAAW,KAAK,IAAI,IAAI,GAAG,SAAS,CAEnC;IACD,OAAO,CAAC,MAAM,CAAmB;IAEjC;;OAEG;IACH,IAAW,KAAK,IAAI,SAAS,GAAG,SAAS,CAExC;IACD,OAAO,CAAC,MAAM,CAAwB;IAEtC;;OAEG;IACH,IAAW,gBAAgB,IAAI,gBAAgB,GAAG,SAAS,CAE1D;IACD,OAAO,CAAC,iBAAiB,CAA+B;IAExD;;OAEG;IACH,IAAW,aAAa,IAAI,aAAa,GAAG,SAAS,CAEpD;IACD,OAAO,CAAC,cAAc,CAA4B;IAElD;;OAEG;IACH,IAAW,SAAS,IAAI,SAAS,GAAG,SAAS,CAE5C;IACD,OAAO,CAAC,UAAU,CAAwB;IAE1C;;OAEG;IACH,IAAW,aAAa,IAAI,aAAa,GAAG,SAAS,CAEpD;IACD,OAAO,CAAC,cAAc,CAA4B;IAElD;;;OAGG;gBACS,UAAU,EAAE,UAAU,EAAE,MAAM,EAAE,gBAAgB;IAM5D;;;;;OAKG;WACiB,IAAI,CACtB,UAAU,EAAE,UAAU,EACtB,oBAAoB,CAAC,EAAE,oBAAoB,GAC1C,OAAO,CAAC,UAAU,CAAC;IAiBtB;;;;OAIG;IACU,UAAU,CACrB,OAAO,GAAE,UAAU,CAAC,iBAAsB,GACzC,OAAO,CAAC,IAAI,CAAC;IAiBhB;;;OAGG;IACU,aAAa,IAAI,OAAO,CAAC,OAAO,CAAC;IAiB9C;;;OAGG;IACI,QAAQ,IAAI,MAAM;IAiBzB;;OAEG;IACH,OAAO,CAAC,qBAAqB;CAqC9B;AAED,kBAAU,UAAU,CAAC;IACnB,UAAiB,iBAAiB;QAC9B;;WAEG;QACH,KAAK,CAAC,EAAE,OAAO,CAAC;KACnB;CACF"}
1
+ {"version":3,"file":"microscope.d.ts","sourceRoot":"","sources":["../../../src/microscopy/microscope.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AACrC,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAIjD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAEhE;;;;GAIG;AACH,qBAAa,UAAU;IACrB;;OAEG;IACH,IAAW,UAAU,IAAI,UAAU,CAElC;IACD,OAAO,CAAC,WAAW,CAAa;IAEhC,OAAO,CAAC,OAAO,CAAmB;IAElC;;OAEG;IACH,IAAW,WAAW,IAAI,WAAW,GAAG,SAAS,CAEhD;IACD,OAAO,CAAC,YAAY,CAA0B;IAE9C;;OAEG;IACH,IAAW,SAAS,IAAI,IAAI,GAAG,SAAS,CAEvC;IACD,OAAO,CAAC,UAAU,CAAmB;IAErC;;OAEG;IACH,IAAW,KAAK,IAAI,IAAI,GAAG,SAAS,CAEnC;IACD,OAAO,CAAC,MAAM,CAAmB;IAEjC;;OAEG;IACH,IAAW,KAAK,IAAI,IAAI,GAAG,SAAS,CAEnC;IACD,OAAO,CAAC,MAAM,CAAmB;IAEjC;;OAEG;IACH,IAAW,KAAK,IAAI,SAAS,GAAG,SAAS,CAExC;IACD,OAAO,CAAC,MAAM,CAAwB;IAEtC;;OAEG;IACH,IAAW,gBAAgB,IAAI,gBAAgB,GAAG,SAAS,CAE1D;IACD,OAAO,CAAC,iBAAiB,CAA+B;IAExD;;OAEG;IACH,IAAW,aAAa,IAAI,aAAa,GAAG,SAAS,CAEpD;IACD,OAAO,CAAC,cAAc,CAA4B;IAElD;;OAEG;IACH,IAAW,SAAS,IAAI,SAAS,GAAG,SAAS,CAE5C;IACD,OAAO,CAAC,UAAU,CAAwB;IAE1C;;OAEG;IACH,IAAW,aAAa,IAAI,aAAa,GAAG,SAAS,CAEpD;IACD,OAAO,CAAC,cAAc,CAA4B;IAElD;;;OAGG;gBACS,UAAU,EAAE,UAAU,EAAE,MAAM,EAAE,gBAAgB;IAM5D;;;;;OAKG;WACiB,IAAI,CACtB,UAAU,EAAE,UAAU,EACtB,oBAAoB,CAAC,EAAE,oBAAoB,GAC1C,OAAO,CAAC,UAAU,CAAC;IAiBtB;;;;OAIG;IACU,UAAU,CACrB,OAAO,GAAE,UAAU,CAAC,iBAAsB,GACzC,OAAO,CAAC,IAAI,CAAC;IAiBhB;;;OAGG;IACU,aAAa,IAAI,OAAO,CAAC,OAAO,CAAC;IAiB9C;;;OAGG;IACI,QAAQ,IAAI,MAAM;IAiBzB;;OAEG;IACH,OAAO,CAAC,qBAAqB;CAqC9B;AAED,kBAAU,UAAU,CAAC;IACnB,UAAiB,iBAAiB;QAC9B;;WAEG;QACH,KAAK,CAAC,EAAE,OAAO,CAAC;KACnB;CACF"}
@@ -26,17 +26,17 @@ var __importStar = (this && this.__importStar) || function (mod) {
26
26
  };
27
27
  Object.defineProperty(exports, "__esModule", { value: true });
28
28
  exports.Microscope = void 0;
29
- const gateway = __importStar(require("../gateway"));
30
- const requests = __importStar(require("../requests"));
31
29
  const axis_1 = require("../ascii/axis");
32
30
  const axis_group_1 = require("../ascii/axis_group");
33
31
  const device_1 = require("../ascii/device");
34
- const illuminator_1 = require("./illuminator");
35
- const objective_changer_1 = require("./objective_changer");
36
- const microscope_config_1 = require("./microscope_config");
37
- const filter_changer_1 = require("./filter_changer");
32
+ const gateway = __importStar(require("../gateway"));
33
+ const requests = __importStar(require("../requests"));
38
34
  const autofocus_1 = require("./autofocus");
39
35
  const camera_trigger_1 = require("./camera_trigger");
36
+ const filter_changer_1 = require("./filter_changer");
37
+ const illuminator_1 = require("./illuminator");
38
+ const microscope_config_1 = require("./microscope_config");
39
+ const objective_changer_1 = require("./objective_changer");
40
40
  /**
41
41
  * Represent a microscope.
42
42
  * Parts of the microscope may or may not be instantiated depending on the configuration.
@@ -1 +1 @@
1
- {"version":3,"file":"microscope.js","sourceRoot":"","sources":["../../../src/microscopy/microscope.ts"],"names":[],"mappings":"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","sourcesContent":["// ==== THIS FILE IS GENERATED FROM A TEMPLATE ==== //\n// ============= DO NOT EDIT DIRECTLY ============= //\n\nimport * as gateway from '../gateway';\nimport * as requests from '../requests';\nimport { Axis } from '../ascii/axis';\nimport { AxisGroup } from '../ascii/axis_group';\nimport { Device } from '../ascii/device';\nimport { Connection } from '../ascii/connection';\nimport { Illuminator } from './illuminator';\nimport { ObjectiveChanger } from './objective_changer';\nimport { MicroscopeConfig } from './microscope_config';\nimport { FilterChanger } from './filter_changer';\nimport { Autofocus } from './autofocus';\nimport { CameraTrigger } from './camera_trigger';\nimport { ThirdPartyComponents } from './third_party_components';\n\n/**\n * Represent a microscope.\n * Parts of the microscope may or may not be instantiated depending on the configuration.\n * Requires at least Firmware 7.34.\n */\nexport class Microscope {\n /**\n * Connection of the microscope.\n */\n public get connection(): Connection {\n return this._connection;\n }\n private _connection: Connection;\n\n private _config: MicroscopeConfig;\n\n /**\n * The illuminator.\n */\n public get illuminator(): Illuminator | undefined {\n return this._illuminator;\n }\n private _illuminator: Illuminator | undefined;\n\n /**\n * The focus axis.\n */\n public get focusAxis(): Axis | undefined {\n return this._focusAxis;\n }\n private _focusAxis: Axis | undefined;\n\n /**\n * The X axis.\n */\n public get xAxis(): Axis | undefined {\n return this._xAxis;\n }\n private _xAxis: Axis | undefined;\n\n /**\n * The Y axis.\n */\n public get yAxis(): Axis | undefined {\n return this._yAxis;\n }\n private _yAxis: Axis | undefined;\n\n /**\n * Axis group consisting of X and Y axes representing the plate of the microscope.\n */\n public get plate(): AxisGroup | undefined {\n return this._plate;\n }\n private _plate: AxisGroup | undefined;\n\n /**\n * The objective changer.\n */\n public get objectiveChanger(): ObjectiveChanger | undefined {\n return this._objectiveChanger;\n }\n private _objectiveChanger: ObjectiveChanger | undefined;\n\n /**\n * The filter changer.\n */\n public get filterChanger(): FilterChanger | undefined {\n return this._filterChanger;\n }\n private _filterChanger: FilterChanger | undefined;\n\n /**\n * The autofocus feature.\n */\n public get autofocus(): Autofocus | undefined {\n return this._autofocus;\n }\n private _autofocus: Autofocus | undefined;\n\n /**\n * The camera trigger.\n */\n public get cameraTrigger(): CameraTrigger | undefined {\n return this._cameraTrigger;\n }\n private _cameraTrigger: CameraTrigger | undefined;\n\n /**\n * Creates instance of `Microscope` from the given config.\n * Parts are instantiated depending on device addresses in the config.\n */\n constructor(connection: Connection, config: MicroscopeConfig) {\n this._connection = connection;\n this._config = MicroscopeConfig.fromBinary(MicroscopeConfig.toBinary(config));\n this._initializeComponents();\n }\n\n /**\n * Finds a microscope on a connection.\n * @param connection Connection on which to detect the microscope.\n * @param thirdPartyComponents Third party components of the microscope that cannot be found on the connection.\n * @returns New instance of microscope.\n */\n public static async find(\n connection: Connection,\n thirdPartyComponents?: ThirdPartyComponents\n ): Promise<Microscope> {\n const request: requests.MicroscopeFindRequest & gateway.Message = {\n ...requests.MicroscopeFindRequest.DEFAULT,\n interfaceId: connection.interfaceId,\n thirdParty: thirdPartyComponents,\n toBinary() {\n return requests.MicroscopeFindRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.MicroscopeConfigResponse>(\n 'microscope/detect',\n request,\n requests.MicroscopeConfigResponse.fromBinary);\n return new Microscope(connection, response.config);\n }\n\n /**\n * Initializes the microscope.\n * Homes all axes, filter changer, and objective changer if they require it.\n * @param [options.force=false] Forces all devices to home even when not required.\n */\n public async initialize(\n options: Microscope.InitializeOptions = {}\n ): Promise<void> {\n const {\n force = false,\n } = options;\n const request: requests.MicroscopeInitRequest & gateway.Message = {\n ...requests.MicroscopeInitRequest.DEFAULT,\n interfaceId: this.connection.interfaceId,\n config: this._config,\n force: force,\n toBinary() {\n return requests.MicroscopeInitRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('microscope/initialize', request);\n }\n\n /**\n * Checks whether the microscope is initialized.\n * @returns True, when the microscope is initialized. False, otherwise.\n */\n public async isInitialized(): Promise<boolean> {\n const request: requests.MicroscopeEmptyRequest & gateway.Message = {\n ...requests.MicroscopeEmptyRequest.DEFAULT,\n interfaceId: this.connection.interfaceId,\n config: this._config,\n toBinary() {\n return requests.MicroscopeEmptyRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.BoolResponse>(\n 'microscope/is_initialized',\n request,\n requests.BoolResponse.fromBinary);\n return response.value;\n }\n\n /**\n * Returns a string that represents the microscope.\n * @returns A string that represents the microscope.\n */\n public toString(): string {\n const request: requests.MicroscopeEmptyRequest & gateway.Message = {\n ...requests.MicroscopeEmptyRequest.DEFAULT,\n interfaceId: this.connection.interfaceId,\n config: this._config,\n toBinary() {\n return requests.MicroscopeEmptyRequest.toBinary(this);\n },\n };\n\n const response = gateway.callSync<requests.StringResponse>(\n 'microscope/to_string',\n request,\n requests.StringResponse.fromBinary);\n return response.value;\n }\n\n /**\n * Initializes the components of the microscope based on the configuration.\n */\n private _initializeComponents(): void {\n if (this._config.illuminator) {\n this._illuminator = new Illuminator(new Device(this._connection, this._config.illuminator));\n }\n\n if (this._config.focusAxis?.device) {\n this._focusAxis = new Axis(new Device(this._connection, this._config.focusAxis.device), this._config.focusAxis.axis);\n }\n\n if (this._config.xAxis?.device) {\n this._xAxis = new Axis(new Device(this._connection, this._config.xAxis.device), this._config.xAxis.axis);\n }\n\n if (this._config.yAxis?.device) {\n this._yAxis = new Axis(new Device(this._connection, this._config.yAxis.device), this._config.yAxis.axis);\n }\n\n if (this._xAxis && this._yAxis) {\n this._plate = new AxisGroup([this._xAxis, this._yAxis]);\n }\n\n if (this._config.objectiveChanger && this._focusAxis) {\n this._objectiveChanger = new ObjectiveChanger(new Device(this._connection, this._config.objectiveChanger), this._focusAxis);\n }\n\n if (this._config.filterChanger) {\n this._filterChanger = new FilterChanger(new Device(this._connection, this._config.filterChanger));\n }\n\n if (this._config.autofocus && this._focusAxis) {\n this._autofocus = new Autofocus(this._config.autofocus, this._focusAxis, this._objectiveChanger?.turret);\n }\n\n if (this._config.cameraTrigger?.device) {\n this._cameraTrigger = new CameraTrigger(new Device(this._connection, this._config.cameraTrigger.device), this._config.cameraTrigger.channel);\n }\n }\n}\n\nnamespace Microscope {\n export interface InitializeOptions {\n /**\n * Forces all devices to home even when not required.\n */\n force?: boolean;\n }\n}\n"]}
1
+ {"version":3,"file":"microscope.js","sourceRoot":"","sources":["../../../src/microscopy/microscope.ts"],"names":[],"mappings":"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","sourcesContent":["// ==== THIS FILE IS GENERATED FROM A TEMPLATE ==== //\n// ============= DO NOT EDIT DIRECTLY ============= //\n\nimport { Axis } from '../ascii/axis';\nimport { AxisGroup } from '../ascii/axis_group';\nimport { Connection } from '../ascii/connection';\nimport { Device } from '../ascii/device';\nimport * as gateway from '../gateway';\nimport * as requests from '../requests';\nimport { Autofocus } from './autofocus';\nimport { CameraTrigger } from './camera_trigger';\nimport { FilterChanger } from './filter_changer';\nimport { Illuminator } from './illuminator';\nimport { MicroscopeConfig } from './microscope_config';\nimport { ObjectiveChanger } from './objective_changer';\nimport { ThirdPartyComponents } from './third_party_components';\n\n/**\n * Represent a microscope.\n * Parts of the microscope may or may not be instantiated depending on the configuration.\n * Requires at least Firmware 7.34.\n */\nexport class Microscope {\n /**\n * Connection of the microscope.\n */\n public get connection(): Connection {\n return this._connection;\n }\n private _connection: Connection;\n\n private _config: MicroscopeConfig;\n\n /**\n * The illuminator.\n */\n public get illuminator(): Illuminator | undefined {\n return this._illuminator;\n }\n private _illuminator: Illuminator | undefined;\n\n /**\n * The focus axis.\n */\n public get focusAxis(): Axis | undefined {\n return this._focusAxis;\n }\n private _focusAxis: Axis | undefined;\n\n /**\n * The X axis.\n */\n public get xAxis(): Axis | undefined {\n return this._xAxis;\n }\n private _xAxis: Axis | undefined;\n\n /**\n * The Y axis.\n */\n public get yAxis(): Axis | undefined {\n return this._yAxis;\n }\n private _yAxis: Axis | undefined;\n\n /**\n * Axis group consisting of X and Y axes representing the plate of the microscope.\n */\n public get plate(): AxisGroup | undefined {\n return this._plate;\n }\n private _plate: AxisGroup | undefined;\n\n /**\n * The objective changer.\n */\n public get objectiveChanger(): ObjectiveChanger | undefined {\n return this._objectiveChanger;\n }\n private _objectiveChanger: ObjectiveChanger | undefined;\n\n /**\n * The filter changer.\n */\n public get filterChanger(): FilterChanger | undefined {\n return this._filterChanger;\n }\n private _filterChanger: FilterChanger | undefined;\n\n /**\n * The autofocus feature.\n */\n public get autofocus(): Autofocus | undefined {\n return this._autofocus;\n }\n private _autofocus: Autofocus | undefined;\n\n /**\n * The camera trigger.\n */\n public get cameraTrigger(): CameraTrigger | undefined {\n return this._cameraTrigger;\n }\n private _cameraTrigger: CameraTrigger | undefined;\n\n /**\n * Creates instance of `Microscope` from the given config.\n * Parts are instantiated depending on device addresses in the config.\n */\n constructor(connection: Connection, config: MicroscopeConfig) {\n this._connection = connection;\n this._config = MicroscopeConfig.fromBinary(MicroscopeConfig.toBinary(config));\n this._initializeComponents();\n }\n\n /**\n * Finds a microscope on a connection.\n * @param connection Connection on which to detect the microscope.\n * @param thirdPartyComponents Third party components of the microscope that cannot be found on the connection.\n * @returns New instance of microscope.\n */\n public static async find(\n connection: Connection,\n thirdPartyComponents?: ThirdPartyComponents\n ): Promise<Microscope> {\n const request: requests.MicroscopeFindRequest & gateway.Message = {\n ...requests.MicroscopeFindRequest.DEFAULT,\n interfaceId: connection.interfaceId,\n thirdParty: thirdPartyComponents,\n toBinary() {\n return requests.MicroscopeFindRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.MicroscopeConfigResponse>(\n 'microscope/detect',\n request,\n requests.MicroscopeConfigResponse.fromBinary);\n return new Microscope(connection, response.config);\n }\n\n /**\n * Initializes the microscope.\n * Homes all axes, filter changer, and objective changer if they require it.\n * @param [options.force=false] Forces all devices to home even when not required.\n */\n public async initialize(\n options: Microscope.InitializeOptions = {}\n ): Promise<void> {\n const {\n force = false,\n } = options;\n const request: requests.MicroscopeInitRequest & gateway.Message = {\n ...requests.MicroscopeInitRequest.DEFAULT,\n interfaceId: this.connection.interfaceId,\n config: this._config,\n force: force,\n toBinary() {\n return requests.MicroscopeInitRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('microscope/initialize', request);\n }\n\n /**\n * Checks whether the microscope is initialized.\n * @returns True, when the microscope is initialized. False, otherwise.\n */\n public async isInitialized(): Promise<boolean> {\n const request: requests.MicroscopeEmptyRequest & gateway.Message = {\n ...requests.MicroscopeEmptyRequest.DEFAULT,\n interfaceId: this.connection.interfaceId,\n config: this._config,\n toBinary() {\n return requests.MicroscopeEmptyRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.BoolResponse>(\n 'microscope/is_initialized',\n request,\n requests.BoolResponse.fromBinary);\n return response.value;\n }\n\n /**\n * Returns a string that represents the microscope.\n * @returns A string that represents the microscope.\n */\n public toString(): string {\n const request: requests.MicroscopeEmptyRequest & gateway.Message = {\n ...requests.MicroscopeEmptyRequest.DEFAULT,\n interfaceId: this.connection.interfaceId,\n config: this._config,\n toBinary() {\n return requests.MicroscopeEmptyRequest.toBinary(this);\n },\n };\n\n const response = gateway.callSync<requests.StringResponse>(\n 'microscope/to_string',\n request,\n requests.StringResponse.fromBinary);\n return response.value;\n }\n\n /**\n * Initializes the components of the microscope based on the configuration.\n */\n private _initializeComponents(): void {\n if (this._config.illuminator) {\n this._illuminator = new Illuminator(new Device(this._connection, this._config.illuminator));\n }\n\n if (this._config.focusAxis?.device) {\n this._focusAxis = new Axis(new Device(this._connection, this._config.focusAxis.device), this._config.focusAxis.axis);\n }\n\n if (this._config.xAxis?.device) {\n this._xAxis = new Axis(new Device(this._connection, this._config.xAxis.device), this._config.xAxis.axis);\n }\n\n if (this._config.yAxis?.device) {\n this._yAxis = new Axis(new Device(this._connection, this._config.yAxis.device), this._config.yAxis.axis);\n }\n\n if (this._xAxis && this._yAxis) {\n this._plate = new AxisGroup([this._xAxis, this._yAxis]);\n }\n\n if (this._config.objectiveChanger && this._focusAxis) {\n this._objectiveChanger = new ObjectiveChanger(new Device(this._connection, this._config.objectiveChanger), this._focusAxis);\n }\n\n if (this._config.filterChanger) {\n this._filterChanger = new FilterChanger(new Device(this._connection, this._config.filterChanger));\n }\n\n if (this._config.autofocus && this._focusAxis) {\n this._autofocus = new Autofocus(this._config.autofocus, this._focusAxis, this._objectiveChanger?.turret);\n }\n\n if (this._config.cameraTrigger?.device) {\n this._cameraTrigger = new CameraTrigger(new Device(this._connection, this._config.cameraTrigger.device), this._config.cameraTrigger.channel);\n }\n }\n}\n\nnamespace Microscope {\n export interface InitializeOptions {\n /**\n * Forces all devices to home even when not required.\n */\n force?: boolean;\n }\n}\n"]}
@@ -1,5 +1,5 @@
1
- import { Device } from '../ascii/device';
2
1
  import { Axis } from '../ascii/axis';
2
+ import { Device } from '../ascii/device';
3
3
  import { Measurement } from '../measurement';
4
4
  import { Angle, Length, Native } from '../units';
5
5
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"objective_changer.d.ts","sourceRoot":"","sources":["../../../src/microscopy/objective_changer.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzC,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AACrC,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAS,MAAM,UAAU,CAAC;AAExD;;;;GAIG;AACH,qBAAa,gBAAgB;IAC3B;;OAEG;IACH,IAAW,MAAM,IAAI,MAAM,CAE1B;IACD,OAAO,CAAC,OAAO,CAAS;IAExB;;OAEG;IACH,IAAW,SAAS,IAAI,IAAI,CAE3B;IACD,OAAO,CAAC,UAAU,CAAO;IAEzB;;;OAGG;gBACS,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI;IAM3C;;;;;;OAMG;IACU,MAAM,CACjB,SAAS,EAAE,MAAM,EACjB,OAAO,GAAE,gBAAgB,CAAC,aAAkB,GAC3C,OAAO,CAAC,IAAI,CAAC;IAoBhB;;OAEG;IACU,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAerC;;;;OAIG;IACU,mBAAmB,IAAI,OAAO,CAAC,MAAM,CAAC;IAkBnD;;;OAGG;IACU,qBAAqB,IAAI,OAAO,CAAC,MAAM,CAAC;IAkBrD;;;;;;OAMG;IACU,aAAa,CACxB,IAAI,GAAE,MAAM,GAAG,KAAK,GAAG,MAAqB,GAC3C,OAAO,CAAC,MAAM,CAAC;IAoBlB;;;;;;OAMG;IACU,aAAa,CACxB,KAAK,EAAE,MAAM,EACb,IAAI,GAAE,MAAM,GAAG,KAAK,GAAG,MAAqB,GAC3C,OAAO,CAAC,IAAI,CAAC;IAiBhB;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAexB;;;OAGG;IACI,QAAQ,IAAI,MAAM;CAgB1B;AAED,kBAAU,gBAAgB,CAAC;IACzB,UAAiB,aAAa;QAC1B;;WAEG;QACH,WAAW,CAAC,EAAE,WAAW,CAAC;KAC7B;CACF"}
1
+ {"version":3,"file":"objective_changer.d.ts","sourceRoot":"","sources":["../../../src/microscopy/objective_changer.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AACrC,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAEzC,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAS,MAAM,UAAU,CAAC;AAExD;;;;GAIG;AACH,qBAAa,gBAAgB;IAC3B;;OAEG;IACH,IAAW,MAAM,IAAI,MAAM,CAE1B;IACD,OAAO,CAAC,OAAO,CAAS;IAExB;;OAEG;IACH,IAAW,SAAS,IAAI,IAAI,CAE3B;IACD,OAAO,CAAC,UAAU,CAAO;IAEzB;;;OAGG;gBACS,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI;IAM3C;;;;;;OAMG;IACU,MAAM,CACjB,SAAS,EAAE,MAAM,EACjB,OAAO,GAAE,gBAAgB,CAAC,aAAkB,GAC3C,OAAO,CAAC,IAAI,CAAC;IAoBhB;;OAEG;IACU,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAerC;;;;OAIG;IACU,mBAAmB,IAAI,OAAO,CAAC,MAAM,CAAC;IAkBnD;;;OAGG;IACU,qBAAqB,IAAI,OAAO,CAAC,MAAM,CAAC;IAkBrD;;;;;;OAMG;IACU,aAAa,CACxB,IAAI,GAAE,MAAM,GAAG,KAAK,GAAG,MAAqB,GAC3C,OAAO,CAAC,MAAM,CAAC;IAoBlB;;;;;;OAMG;IACU,aAAa,CACxB,KAAK,EAAE,MAAM,EACb,IAAI,GAAE,MAAM,GAAG,KAAK,GAAG,MAAqB,GAC3C,OAAO,CAAC,IAAI,CAAC;IAiBhB;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAexB;;;OAGG;IACI,QAAQ,IAAI,MAAM;CAgB1B;AAED,kBAAU,gBAAgB,CAAC;IACzB,UAAiB,aAAa;QAC1B;;WAEG;QACH,WAAW,CAAC,EAAE,WAAW,CAAC;KAC7B;CACF"}