zaber-motion 7.12.0__py3-none-win32.whl → 7.14.0__py3-none-win32.whl

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 (492) hide show
  1. zaber_motion/__init__.py +103 -103
  2. zaber_motion/ascii/__init__.py +73 -73
  3. zaber_motion/ascii/all_axes.py +352 -352
  4. zaber_motion/ascii/axis.py +1673 -1666
  5. zaber_motion/ascii/axis_group.py +391 -391
  6. zaber_motion/ascii/axis_settings.py +752 -752
  7. zaber_motion/ascii/connection.py +1174 -1174
  8. zaber_motion/ascii/device.py +908 -908
  9. zaber_motion/ascii/device_io.py +1170 -1170
  10. zaber_motion/ascii/device_settings.py +735 -735
  11. zaber_motion/ascii/lockstep.py +1184 -1184
  12. zaber_motion/ascii/oscilloscope.py +635 -635
  13. zaber_motion/ascii/oscilloscope_data.py +240 -240
  14. zaber_motion/ascii/pvt.py +105 -105
  15. zaber_motion/ascii/pvt_buffer.py +146 -146
  16. zaber_motion/ascii/pvt_io.py +630 -630
  17. zaber_motion/ascii/pvt_sequence.py +1530 -1530
  18. zaber_motion/ascii/servo_tuner.py +637 -637
  19. zaber_motion/ascii/setting_constants.py +1755 -1755
  20. zaber_motion/ascii/storage.py +905 -905
  21. zaber_motion/ascii/stream.py +2182 -2182
  22. zaber_motion/ascii/stream_buffer.py +101 -101
  23. zaber_motion/ascii/stream_io.py +700 -700
  24. zaber_motion/ascii/streams.py +105 -105
  25. zaber_motion/ascii/transport.py +202 -202
  26. zaber_motion/ascii/trigger.py +886 -886
  27. zaber_motion/ascii/triggers.py +241 -241
  28. zaber_motion/ascii/warning_flags.py +178 -178
  29. zaber_motion/ascii/warnings.py +152 -152
  30. zaber_motion/async_utils.py +46 -46
  31. zaber_motion/binary/__init__.py +14 -14
  32. zaber_motion/binary/connection.py +648 -648
  33. zaber_motion/binary/device.py +924 -924
  34. zaber_motion/binary/device_settings.py +121 -121
  35. zaber_motion/bindings.py +50 -50
  36. zaber_motion/call.py +198 -198
  37. zaber_motion/convert_exception.py +138 -138
  38. zaber_motion/dto/__init__.py +11 -11
  39. zaber_motion/dto/ascii/__init__.py +46 -46
  40. zaber_motion/dto/ascii/alert_event.py +110 -110
  41. zaber_motion/dto/ascii/axis_identity.py +134 -117
  42. zaber_motion/dto/ascii/axis_type.py +14 -14
  43. zaber_motion/dto/ascii/can_set_state_axis_response.py +69 -69
  44. zaber_motion/dto/ascii/can_set_state_device_response.py +75 -75
  45. zaber_motion/dto/ascii/conversion_factor.py +81 -81
  46. zaber_motion/dto/ascii/device_identity.py +136 -136
  47. zaber_motion/dto/ascii/device_io_info.py +108 -108
  48. zaber_motion/dto/ascii/digital_output_action.py +13 -13
  49. zaber_motion/dto/ascii/get_axis_setting.py +64 -64
  50. zaber_motion/dto/ascii/get_axis_setting_result.py +81 -81
  51. zaber_motion/dto/ascii/get_setting.py +88 -88
  52. zaber_motion/dto/ascii/get_setting_result.py +87 -87
  53. zaber_motion/dto/ascii/io_port_label.py +84 -84
  54. zaber_motion/dto/ascii/io_port_type.py +14 -14
  55. zaber_motion/dto/ascii/lockstep_axes.py +108 -108
  56. zaber_motion/dto/ascii/measurement_sequence.py +73 -73
  57. zaber_motion/dto/ascii/message_type.py +14 -14
  58. zaber_motion/dto/ascii/optional_measurement_sequence.py +71 -71
  59. zaber_motion/dto/ascii/oscilloscope_capture_properties.py +116 -116
  60. zaber_motion/dto/ascii/oscilloscope_data_source.py +11 -11
  61. zaber_motion/dto/ascii/paramset_info.py +92 -92
  62. zaber_motion/dto/ascii/pid_tuning.py +125 -125
  63. zaber_motion/dto/ascii/pvt_axis_definition.py +70 -70
  64. zaber_motion/dto/ascii/pvt_axis_type.py +11 -11
  65. zaber_motion/dto/ascii/pvt_csv_data.py +75 -75
  66. zaber_motion/dto/ascii/pvt_mode.py +12 -12
  67. zaber_motion/dto/ascii/pvt_sequence_data.py +99 -99
  68. zaber_motion/dto/ascii/response.py +137 -137
  69. zaber_motion/dto/ascii/servo_tuning_param.py +66 -66
  70. zaber_motion/dto/ascii/servo_tuning_paramset.py +21 -21
  71. zaber_motion/dto/ascii/set_state_axis_response.py +75 -75
  72. zaber_motion/dto/ascii/set_state_device_response.py +80 -80
  73. zaber_motion/dto/ascii/simple_tuning.py +118 -118
  74. zaber_motion/dto/ascii/simple_tuning_param_definition.py +100 -100
  75. zaber_motion/dto/ascii/stream_axis_definition.py +70 -70
  76. zaber_motion/dto/ascii/stream_axis_type.py +11 -11
  77. zaber_motion/dto/ascii/stream_mode.py +13 -13
  78. zaber_motion/dto/ascii/trigger_action.py +12 -12
  79. zaber_motion/dto/ascii/trigger_condition.py +15 -15
  80. zaber_motion/dto/ascii/trigger_enabled_state.py +68 -68
  81. zaber_motion/dto/ascii/trigger_operation.py +12 -12
  82. zaber_motion/dto/ascii/trigger_state.py +114 -114
  83. zaber_motion/dto/ascii/unknown_response_event.py +137 -137
  84. zaber_motion/dto/axis_address.py +74 -74
  85. zaber_motion/dto/binary/__init__.py +11 -11
  86. zaber_motion/dto/binary/binary_settings.py +74 -74
  87. zaber_motion/dto/binary/command_code.py +106 -106
  88. zaber_motion/dto/binary/device_identity.py +156 -156
  89. zaber_motion/dto/binary/device_type.py +12 -12
  90. zaber_motion/dto/binary/error_code.py +101 -101
  91. zaber_motion/dto/binary/message.py +91 -91
  92. zaber_motion/dto/binary/reply_code.py +16 -16
  93. zaber_motion/dto/binary/reply_only_event.py +91 -91
  94. zaber_motion/dto/binary/unknown_response_event.py +91 -91
  95. zaber_motion/dto/channel_address.py +74 -74
  96. zaber_motion/dto/device_db_source.py +66 -66
  97. zaber_motion/dto/device_db_source_type.py +11 -11
  98. zaber_motion/dto/exceptions/__init__.py +24 -24
  99. zaber_motion/dto/exceptions/binary_command_failed_exception_data.py +57 -57
  100. zaber_motion/dto/exceptions/command_failed_exception_data.py +151 -151
  101. zaber_motion/dto/exceptions/command_too_long_exception_data.py +98 -98
  102. zaber_motion/dto/exceptions/device_address_conflict_exception_data.py +63 -63
  103. zaber_motion/dto/exceptions/device_db_failed_exception_data.py +74 -74
  104. zaber_motion/dto/exceptions/device_db_inner_error.py +85 -85
  105. zaber_motion/dto/exceptions/g_code_execution_exception_data.py +75 -75
  106. zaber_motion/dto/exceptions/g_code_syntax_exception_data.py +75 -75
  107. zaber_motion/dto/exceptions/invalid_packet_exception_data.py +63 -63
  108. zaber_motion/dto/exceptions/invalid_pvt_point.py +69 -69
  109. zaber_motion/dto/exceptions/invalid_response_exception_data.py +51 -51
  110. zaber_motion/dto/exceptions/movement_failed_exception_data.py +104 -104
  111. zaber_motion/dto/exceptions/movement_interrupted_exception_data.py +104 -104
  112. zaber_motion/dto/exceptions/operation_failed_exception_data.py +104 -104
  113. zaber_motion/dto/exceptions/pvt_execution_exception_data.py +86 -86
  114. zaber_motion/dto/exceptions/pvt_movement_failed_exception_data.py +69 -69
  115. zaber_motion/dto/exceptions/pvt_movement_interrupted_exception_data.py +69 -69
  116. zaber_motion/dto/exceptions/set_device_state_exception_data.py +176 -176
  117. zaber_motion/dto/exceptions/set_peripheral_state_exception_data.py +121 -121
  118. zaber_motion/dto/exceptions/stream_execution_exception_data.py +63 -63
  119. zaber_motion/dto/exceptions/stream_movement_failed_exception_data.py +69 -69
  120. zaber_motion/dto/exceptions/stream_movement_interrupted_exception_data.py +69 -69
  121. zaber_motion/dto/firmware_version.py +91 -91
  122. zaber_motion/dto/gcode/__init__.py +9 -9
  123. zaber_motion/dto/gcode/axis_definition.py +74 -74
  124. zaber_motion/dto/gcode/axis_mapping.py +69 -69
  125. zaber_motion/dto/gcode/axis_transformation.py +79 -79
  126. zaber_motion/dto/gcode/device_definition.py +99 -99
  127. zaber_motion/dto/gcode/translate_message.py +87 -87
  128. zaber_motion/dto/gcode/translate_result.py +79 -79
  129. zaber_motion/dto/gcode/translator_config.py +84 -84
  130. zaber_motion/dto/log_output_mode.py +13 -13
  131. zaber_motion/dto/measurement.py +67 -67
  132. zaber_motion/dto/microscopy/__init__.py +6 -6
  133. zaber_motion/dto/microscopy/autofocus_status.py +57 -57
  134. zaber_motion/dto/microscopy/microscope_config.py +159 -159
  135. zaber_motion/dto/microscopy/third_party_components.py +55 -55
  136. zaber_motion/dto/microscopy/wdi_autofocus_provider_status.py +57 -57
  137. zaber_motion/dto/named_parameter.py +64 -64
  138. zaber_motion/dto/product/__init__.py +5 -5
  139. zaber_motion/dto/product/process_controller_mode.py +13 -13
  140. zaber_motion/dto/product/process_controller_source.py +72 -72
  141. zaber_motion/dto/product/process_controller_source_sensor.py +11 -11
  142. zaber_motion/dto/requests/__init__.py +256 -254
  143. zaber_motion/dto/requests/alert_event_wrapper.py +82 -82
  144. zaber_motion/dto/requests/autofocus_focus_request.py +131 -131
  145. zaber_motion/dto/requests/autofocus_get_objective_params_request.py +121 -121
  146. zaber_motion/dto/requests/autofocus_get_objective_params_response.py +56 -56
  147. zaber_motion/dto/requests/autofocus_get_status_response.py +50 -50
  148. zaber_motion/dto/requests/autofocus_set_objective_params_request.py +141 -141
  149. zaber_motion/dto/requests/axes_empty_request.py +95 -95
  150. zaber_motion/dto/requests/axes_get_setting_request.py +121 -121
  151. zaber_motion/dto/requests/axes_move_request.py +114 -114
  152. zaber_motion/dto/requests/axis_empty_request.py +79 -79
  153. zaber_motion/dto/requests/axis_move_type.py +12 -12
  154. zaber_motion/dto/requests/axis_to_string_request.py +88 -88
  155. zaber_motion/dto/requests/binary_device_detect_request.py +56 -56
  156. zaber_motion/dto/requests/binary_device_detect_response.py +57 -57
  157. zaber_motion/dto/requests/binary_device_get_setting_request.py +89 -89
  158. zaber_motion/dto/requests/binary_device_home_request.py +88 -88
  159. zaber_motion/dto/requests/binary_device_move_request.py +111 -111
  160. zaber_motion/dto/requests/binary_device_set_setting_request.py +100 -100
  161. zaber_motion/dto/requests/binary_device_stop_request.py +88 -88
  162. zaber_motion/dto/requests/binary_generic_with_units_request.py +122 -122
  163. zaber_motion/dto/requests/binary_message_collection.py +56 -56
  164. zaber_motion/dto/requests/binary_reply_only_event_wrapper.py +82 -82
  165. zaber_motion/dto/requests/bool_response.py +43 -43
  166. zaber_motion/dto/requests/can_set_state_axis_response.py +60 -60
  167. zaber_motion/dto/requests/can_set_state_request.py +100 -100
  168. zaber_motion/dto/requests/channel_on.py +84 -84
  169. zaber_motion/dto/requests/channel_set_intensity.py +90 -90
  170. zaber_motion/dto/requests/check_version_request.py +54 -54
  171. zaber_motion/dto/requests/custom_interface_close_request.py +60 -60
  172. zaber_motion/dto/requests/custom_interface_open_response.py +51 -51
  173. zaber_motion/dto/requests/custom_interface_read_request.py +51 -51
  174. zaber_motion/dto/requests/custom_interface_write_request.py +60 -60
  175. zaber_motion/dto/requests/device_cancel_all_outputs_schedule_request.py +80 -80
  176. zaber_motion/dto/requests/device_cancel_output_schedule_request.py +84 -84
  177. zaber_motion/dto/requests/device_convert_setting_request.py +116 -116
  178. zaber_motion/dto/requests/device_detect_request.py +68 -68
  179. zaber_motion/dto/requests/device_detect_response.py +57 -57
  180. zaber_motion/dto/requests/device_empty_request.py +65 -65
  181. zaber_motion/dto/requests/device_get_all_analog_io_request.py +74 -74
  182. zaber_motion/dto/requests/device_get_all_analog_io_response.py +54 -54
  183. zaber_motion/dto/requests/device_get_all_digital_io_request.py +74 -74
  184. zaber_motion/dto/requests/device_get_all_digital_io_response.py +46 -46
  185. zaber_motion/dto/requests/device_get_analog_io_request.py +88 -88
  186. zaber_motion/dto/requests/device_get_digital_io_request.py +88 -88
  187. zaber_motion/dto/requests/device_get_setting_request.py +100 -100
  188. zaber_motion/dto/requests/device_get_storage_request.py +93 -93
  189. zaber_motion/dto/requests/device_get_warnings_request.py +84 -84
  190. zaber_motion/dto/requests/device_get_warnings_response.py +51 -51
  191. zaber_motion/dto/requests/device_home_request.py +84 -84
  192. zaber_motion/dto/requests/device_identify_request.py +77 -77
  193. zaber_motion/dto/requests/device_move_request.py +177 -177
  194. zaber_motion/dto/requests/device_move_sin_request.py +140 -140
  195. zaber_motion/dto/requests/device_multi_get_setting_request.py +118 -118
  196. zaber_motion/dto/requests/device_on_all_request.py +56 -56
  197. zaber_motion/dto/requests/device_on_all_response.py +57 -57
  198. zaber_motion/dto/requests/device_restore_request.py +84 -84
  199. zaber_motion/dto/requests/device_set_all_analog_outputs_request.py +82 -82
  200. zaber_motion/dto/requests/device_set_all_analog_outputs_schedule_request.py +121 -121
  201. zaber_motion/dto/requests/device_set_all_digital_outputs_request.py +83 -83
  202. zaber_motion/dto/requests/device_set_all_digital_outputs_schedule_request.py +122 -122
  203. zaber_motion/dto/requests/device_set_analog_output_request.py +90 -90
  204. zaber_motion/dto/requests/device_set_analog_output_schedule_request.py +124 -124
  205. zaber_motion/dto/requests/device_set_digital_output_request.py +91 -91
  206. zaber_motion/dto/requests/device_set_digital_output_schedule_request.py +125 -125
  207. zaber_motion/dto/requests/device_set_lowpass_filter_request.py +102 -102
  208. zaber_motion/dto/requests/device_set_setting_bool_request.py +93 -93
  209. zaber_motion/dto/requests/device_set_setting_int_request.py +102 -102
  210. zaber_motion/dto/requests/device_set_setting_request.py +111 -111
  211. zaber_motion/dto/requests/device_set_setting_str_request.py +97 -97
  212. zaber_motion/dto/requests/device_set_storage_bool_request.py +93 -93
  213. zaber_motion/dto/requests/device_set_storage_number_request.py +99 -99
  214. zaber_motion/dto/requests/device_set_storage_request.py +102 -102
  215. zaber_motion/dto/requests/device_set_unit_conversions_request.py +108 -108
  216. zaber_motion/dto/requests/device_stop_request.py +84 -84
  217. zaber_motion/dto/requests/device_storage_list_keys_request.py +88 -88
  218. zaber_motion/dto/requests/device_storage_request.py +88 -88
  219. zaber_motion/dto/requests/device_type.py +8 -8
  220. zaber_motion/dto/requests/device_wait_until_idle_request.py +84 -84
  221. zaber_motion/dto/requests/disconnected_event.py +101 -101
  222. zaber_motion/dto/requests/double_array_response.py +54 -54
  223. zaber_motion/dto/requests/double_response.py +48 -48
  224. zaber_motion/dto/requests/driver_enable_request.py +90 -90
  225. zaber_motion/dto/requests/empty_autofocus_request.py +107 -107
  226. zaber_motion/dto/requests/empty_request.py +38 -38
  227. zaber_motion/dto/requests/errors.py +68 -68
  228. zaber_motion/dto/requests/find_device_request.py +65 -65
  229. zaber_motion/dto/requests/find_device_response.py +51 -51
  230. zaber_motion/dto/requests/forget_devices_request.py +71 -71
  231. zaber_motion/dto/requests/gateway_event.py +45 -45
  232. zaber_motion/dto/requests/gateway_request.py +45 -45
  233. zaber_motion/dto/requests/gateway_response.py +69 -69
  234. zaber_motion/dto/requests/generic_binary_request.py +107 -107
  235. zaber_motion/dto/requests/generic_command_request.py +107 -107
  236. zaber_motion/dto/requests/generic_command_response_collection.py +56 -56
  237. zaber_motion/dto/requests/get_all_io_port_labels_response.py +56 -56
  238. zaber_motion/dto/requests/get_axis_setting_results.py +56 -56
  239. zaber_motion/dto/requests/get_io_port_label_request.py +91 -91
  240. zaber_motion/dto/requests/get_setting_results.py +56 -56
  241. zaber_motion/dto/requests/get_simple_tuning_param_definition_response.py +56 -56
  242. zaber_motion/dto/requests/int_64_response.py +51 -51
  243. zaber_motion/dto/requests/int_array_response.py +57 -57
  244. zaber_motion/dto/requests/int_request.py +51 -51
  245. zaber_motion/dto/requests/int_response.py +51 -51
  246. zaber_motion/dto/requests/interface_empty_request.py +51 -51
  247. zaber_motion/dto/requests/interface_type.py +11 -11
  248. zaber_motion/dto/requests/load_paramset.py +102 -102
  249. zaber_motion/dto/requests/lockstep_disable_request.py +84 -84
  250. zaber_motion/dto/requests/lockstep_empty_request.py +79 -79
  251. zaber_motion/dto/requests/lockstep_enable_request.py +99 -99
  252. zaber_motion/dto/requests/lockstep_get_axis_numbers_response.py +57 -57
  253. zaber_motion/dto/requests/lockstep_get_request.py +91 -91
  254. zaber_motion/dto/requests/lockstep_home_request.py +84 -84
  255. zaber_motion/dto/requests/lockstep_move_request.py +163 -163
  256. zaber_motion/dto/requests/lockstep_move_sin_request.py +140 -140
  257. zaber_motion/dto/requests/lockstep_set_request.py +116 -116
  258. zaber_motion/dto/requests/lockstep_stop_request.py +84 -84
  259. zaber_motion/dto/requests/lockstep_wait_until_idle_request.py +84 -84
  260. zaber_motion/dto/requests/microscope_config_response.py +50 -50
  261. zaber_motion/dto/requests/microscope_empty_request.py +65 -65
  262. zaber_motion/dto/requests/microscope_find_request.py +63 -63
  263. zaber_motion/dto/requests/microscope_init_request.py +70 -70
  264. zaber_motion/dto/requests/microscope_trigger_camera_request.py +107 -107
  265. zaber_motion/dto/requests/objective_changer_change_request.py +119 -119
  266. zaber_motion/dto/requests/objective_changer_create_response.py +79 -79
  267. zaber_motion/dto/requests/objective_changer_get_current_response.py +51 -51
  268. zaber_motion/dto/requests/objective_changer_request.py +93 -93
  269. zaber_motion/dto/requests/objective_changer_set_request.py +116 -116
  270. zaber_motion/dto/requests/open_binary_interface_request.py +100 -100
  271. zaber_motion/dto/requests/open_interface_request.py +159 -159
  272. zaber_motion/dto/requests/open_interface_response.py +51 -51
  273. zaber_motion/dto/requests/oscilloscope_add_io_channel_request.py +91 -91
  274. zaber_motion/dto/requests/oscilloscope_add_setting_channel_request.py +88 -88
  275. zaber_motion/dto/requests/oscilloscope_data_get_request.py +63 -63
  276. zaber_motion/dto/requests/oscilloscope_data_get_sample_time_request.py +77 -77
  277. zaber_motion/dto/requests/oscilloscope_data_get_samples_response.py +54 -54
  278. zaber_motion/dto/requests/oscilloscope_data_identifier.py +51 -51
  279. zaber_motion/dto/requests/oscilloscope_read_response.py +57 -57
  280. zaber_motion/dto/requests/oscilloscope_request.py +65 -65
  281. zaber_motion/dto/requests/oscilloscope_start_request.py +79 -79
  282. zaber_motion/dto/requests/prepare_command_request.py +108 -108
  283. zaber_motion/dto/requests/process_on.py +107 -107
  284. zaber_motion/dto/requests/pvt_buffer_get_sequence_data_request.py +79 -79
  285. zaber_motion/dto/requests/pvt_csv_request.py +59 -59
  286. zaber_motion/dto/requests/pvt_generate_positions_request.py +74 -74
  287. zaber_motion/dto/requests/pvt_generate_velocities_and_times_request.py +96 -96
  288. zaber_motion/dto/requests/pvt_generate_velocities_request.py +93 -93
  289. zaber_motion/dto/requests/pvt_load_csv_request.py +45 -45
  290. zaber_motion/dto/requests/pvt_point_request.py +145 -145
  291. zaber_motion/dto/requests/pvt_points_request.py +147 -147
  292. zaber_motion/dto/requests/pvt_save_csv_request.py +74 -74
  293. zaber_motion/dto/requests/pvt_submit_sequence_data_request.py +93 -93
  294. zaber_motion/dto/requests/renumber_request.py +79 -79
  295. zaber_motion/dto/requests/response_type.py +8 -8
  296. zaber_motion/dto/requests/servo_tuning_paramset_response.py +48 -48
  297. zaber_motion/dto/requests/servo_tuning_request.py +91 -91
  298. zaber_motion/dto/requests/set_device_db_layered_sources_request.py +56 -56
  299. zaber_motion/dto/requests/set_device_db_source_request.py +63 -63
  300. zaber_motion/dto/requests/set_interface_checksum_enabled_request.py +56 -56
  301. zaber_motion/dto/requests/set_interface_timeout_request.py +65 -65
  302. zaber_motion/dto/requests/set_internal_mode_request.py +43 -43
  303. zaber_motion/dto/requests/set_io_port_label_request.py +100 -100
  304. zaber_motion/dto/requests/set_log_output_request.py +57 -57
  305. zaber_motion/dto/requests/set_process_controller_source.py +93 -93
  306. zaber_motion/dto/requests/set_servo_tuning_pid_request.py +135 -135
  307. zaber_motion/dto/requests/set_servo_tuning_request.py +116 -116
  308. zaber_motion/dto/requests/set_simple_tuning.py +174 -174
  309. zaber_motion/dto/requests/set_state_request.py +93 -93
  310. zaber_motion/dto/requests/stream_arc_request.py +199 -199
  311. zaber_motion/dto/requests/stream_buffer_erase_request.py +84 -84
  312. zaber_motion/dto/requests/stream_buffer_get_content_request.py +84 -84
  313. zaber_motion/dto/requests/stream_buffer_get_content_response.py +51 -51
  314. zaber_motion/dto/requests/stream_buffer_list.py +70 -70
  315. zaber_motion/dto/requests/stream_call_request.py +112 -112
  316. zaber_motion/dto/requests/stream_cancel_all_outputs_schedule_request.py +99 -99
  317. zaber_motion/dto/requests/stream_cancel_output_schedule_request.py +103 -103
  318. zaber_motion/dto/requests/stream_circle_request.py +155 -155
  319. zaber_motion/dto/requests/stream_empty_request.py +84 -84
  320. zaber_motion/dto/requests/stream_generic_command_batch_request.py +99 -99
  321. zaber_motion/dto/requests/stream_generic_command_request.py +93 -93
  322. zaber_motion/dto/requests/stream_get_axes_response.py +75 -75
  323. zaber_motion/dto/requests/stream_get_max_centripetal_acceleration_request.py +96 -96
  324. zaber_motion/dto/requests/stream_get_max_speed_request.py +96 -96
  325. zaber_motion/dto/requests/stream_get_max_tangential_acceleration_request.py +96 -96
  326. zaber_motion/dto/requests/stream_line_request.py +135 -135
  327. zaber_motion/dto/requests/stream_mode_response.py +60 -60
  328. zaber_motion/dto/requests/stream_segment_type.py +8 -8
  329. zaber_motion/dto/requests/stream_set_all_analog_outputs_request.py +101 -101
  330. zaber_motion/dto/requests/stream_set_all_analog_outputs_schedule_request.py +140 -140
  331. zaber_motion/dto/requests/stream_set_all_digital_outputs_request.py +102 -102
  332. zaber_motion/dto/requests/stream_set_all_digital_outputs_schedule_request.py +141 -141
  333. zaber_motion/dto/requests/stream_set_analog_output_request.py +109 -109
  334. zaber_motion/dto/requests/stream_set_analog_output_schedule_request.py +143 -143
  335. zaber_motion/dto/requests/stream_set_digital_output_request.py +110 -110
  336. zaber_motion/dto/requests/stream_set_digital_output_schedule_request.py +144 -144
  337. zaber_motion/dto/requests/stream_set_hold_request.py +89 -89
  338. zaber_motion/dto/requests/stream_set_max_centripetal_acceleration_request.py +107 -107
  339. zaber_motion/dto/requests/stream_set_max_speed_request.py +107 -107
  340. zaber_motion/dto/requests/stream_set_max_tangential_acceleration_request.py +107 -107
  341. zaber_motion/dto/requests/stream_setup_live_composite_request.py +123 -123
  342. zaber_motion/dto/requests/stream_setup_live_request.py +104 -104
  343. zaber_motion/dto/requests/stream_setup_store_arbitrary_axes_request.py +126 -126
  344. zaber_motion/dto/requests/stream_setup_store_composite_request.py +151 -151
  345. zaber_motion/dto/requests/stream_setup_store_request.py +132 -132
  346. zaber_motion/dto/requests/stream_wait_analog_input_request.py +118 -118
  347. zaber_motion/dto/requests/stream_wait_digital_input_request.py +103 -103
  348. zaber_motion/dto/requests/stream_wait_request.py +107 -107
  349. zaber_motion/dto/requests/stream_wait_until_idle_request.py +89 -89
  350. zaber_motion/dto/requests/string_array_response.py +51 -51
  351. zaber_motion/dto/requests/string_response.py +45 -45
  352. zaber_motion/dto/requests/test_event.py +45 -45
  353. zaber_motion/dto/requests/test_request.py +55 -55
  354. zaber_motion/dto/requests/test_request_complex.py +57 -0
  355. zaber_motion/dto/requests/test_response.py +45 -45
  356. zaber_motion/dto/requests/test_response_long.py +51 -51
  357. zaber_motion/dto/requests/toggle_device_db_store_request.py +50 -50
  358. zaber_motion/dto/requests/tools_list_serial_ports_response.py +51 -51
  359. zaber_motion/dto/requests/translator_create_from_device_request.py +97 -97
  360. zaber_motion/dto/requests/translator_create_live_request.py +91 -91
  361. zaber_motion/dto/requests/translator_create_request.py +62 -62
  362. zaber_motion/dto/requests/translator_create_response.py +51 -51
  363. zaber_motion/dto/requests/translator_empty_request.py +51 -51
  364. zaber_motion/dto/requests/translator_flush_live_request.py +56 -56
  365. zaber_motion/dto/requests/translator_flush_response.py +51 -51
  366. zaber_motion/dto/requests/translator_get_axis_offset_request.py +81 -81
  367. zaber_motion/dto/requests/translator_get_axis_position_request.py +72 -72
  368. zaber_motion/dto/requests/translator_set_axis_position_request.py +83 -83
  369. zaber_motion/dto/requests/translator_set_feed_rate_override_request.py +62 -62
  370. zaber_motion/dto/requests/translator_set_traverse_rate_request.py +74 -74
  371. zaber_motion/dto/requests/translator_translate_request.py +60 -60
  372. zaber_motion/dto/requests/trigger_clear_action_request.py +91 -91
  373. zaber_motion/dto/requests/trigger_empty_request.py +79 -79
  374. zaber_motion/dto/requests/trigger_enable_request.py +93 -93
  375. zaber_motion/dto/requests/trigger_enabled_states.py +56 -56
  376. zaber_motion/dto/requests/trigger_fire_at_interval_request.py +102 -102
  377. zaber_motion/dto/requests/trigger_fire_when_distance_travelled_request.py +116 -116
  378. zaber_motion/dto/requests/trigger_fire_when_io_request.py +128 -128
  379. zaber_motion/dto/requests/trigger_fire_when_request.py +88 -88
  380. zaber_motion/dto/requests/trigger_fire_when_setting_request.py +137 -137
  381. zaber_motion/dto/requests/trigger_on_fire_request.py +114 -114
  382. zaber_motion/dto/requests/trigger_on_fire_set_request.py +149 -149
  383. zaber_motion/dto/requests/trigger_on_fire_set_to_setting_request.py +149 -149
  384. zaber_motion/dto/requests/trigger_set_label_request.py +88 -88
  385. zaber_motion/dto/requests/trigger_states.py +56 -56
  386. zaber_motion/dto/requests/unit_convert_unit_request.py +71 -71
  387. zaber_motion/dto/requests/unit_get_enum_request.py +45 -45
  388. zaber_motion/dto/requests/unit_get_enum_response.py +48 -48
  389. zaber_motion/dto/requests/unit_get_symbol_request.py +48 -48
  390. zaber_motion/dto/requests/unit_get_symbol_response.py +45 -45
  391. zaber_motion/dto/requests/unknown_binary_response_event_wrapper.py +82 -82
  392. zaber_motion/dto/requests/unknown_response_event_wrapper.py +82 -82
  393. zaber_motion/dto/requests/wait_to_clear_warnings_request.py +105 -105
  394. zaber_motion/dto/requests/wait_to_respond_request.py +76 -76
  395. zaber_motion/dto/requests/wdi_generic_float_request.py +119 -0
  396. zaber_motion/dto/requests/wdi_generic_request.py +136 -136
  397. zaber_motion/dto/requests/wdi_get_status_response.py +50 -50
  398. zaber_motion/dto/rotation_direction.py +13 -13
  399. zaber_motion/dto_object.py +18 -18
  400. zaber_motion/events.py +112 -112
  401. zaber_motion/exceptions/__init__.py +87 -87
  402. zaber_motion/exceptions/bad_command_exception.py +10 -10
  403. zaber_motion/exceptions/bad_data_exception.py +10 -10
  404. zaber_motion/exceptions/binary_command_failed_exception.py +27 -27
  405. zaber_motion/exceptions/command_failed_exception.py +27 -27
  406. zaber_motion/exceptions/command_preempted_exception.py +10 -10
  407. zaber_motion/exceptions/command_too_long_exception.py +27 -27
  408. zaber_motion/exceptions/connection_closed_exception.py +10 -10
  409. zaber_motion/exceptions/connection_failed_exception.py +10 -10
  410. zaber_motion/exceptions/conversion_failed_exception.py +10 -10
  411. zaber_motion/exceptions/device_address_conflict_exception.py +27 -27
  412. zaber_motion/exceptions/device_busy_exception.py +10 -10
  413. zaber_motion/exceptions/device_db_failed_exception.py +27 -27
  414. zaber_motion/exceptions/device_detection_failed_exception.py +10 -10
  415. zaber_motion/exceptions/device_failed_exception.py +11 -11
  416. zaber_motion/exceptions/device_not_identified_exception.py +10 -10
  417. zaber_motion/exceptions/driver_disabled_exception.py +10 -10
  418. zaber_motion/exceptions/g_code_execution_exception.py +27 -27
  419. zaber_motion/exceptions/g_code_syntax_exception.py +27 -27
  420. zaber_motion/exceptions/incompatible_shared_library_exception.py +11 -11
  421. zaber_motion/exceptions/internal_error_exception.py +10 -10
  422. zaber_motion/exceptions/invalid_argument_exception.py +10 -10
  423. zaber_motion/exceptions/invalid_csv_data_exception.py +10 -10
  424. zaber_motion/exceptions/invalid_data_exception.py +10 -10
  425. zaber_motion/exceptions/invalid_operation_exception.py +10 -10
  426. zaber_motion/exceptions/invalid_packet_exception.py +27 -27
  427. zaber_motion/exceptions/invalid_park_state_exception.py +10 -10
  428. zaber_motion/exceptions/invalid_request_data_exception.py +11 -11
  429. zaber_motion/exceptions/invalid_response_exception.py +27 -27
  430. zaber_motion/exceptions/io_channel_out_of_range_exception.py +10 -10
  431. zaber_motion/exceptions/io_failed_exception.py +10 -10
  432. zaber_motion/exceptions/lockstep_enabled_exception.py +10 -10
  433. zaber_motion/exceptions/lockstep_not_enabled_exception.py +10 -10
  434. zaber_motion/exceptions/motion_lib_exception.py +18 -18
  435. zaber_motion/exceptions/movement_failed_exception.py +27 -27
  436. zaber_motion/exceptions/movement_interrupted_exception.py +27 -27
  437. zaber_motion/exceptions/no_device_found_exception.py +10 -10
  438. zaber_motion/exceptions/no_value_for_key_exception.py +10 -10
  439. zaber_motion/exceptions/not_supported_exception.py +10 -10
  440. zaber_motion/exceptions/operation_failed_exception.py +27 -27
  441. zaber_motion/exceptions/os_failed_exception.py +10 -10
  442. zaber_motion/exceptions/out_of_request_ids_exception.py +10 -10
  443. zaber_motion/exceptions/pvt_discontinuity_exception.py +10 -10
  444. zaber_motion/exceptions/pvt_execution_exception.py +27 -27
  445. zaber_motion/exceptions/pvt_mode_exception.py +10 -10
  446. zaber_motion/exceptions/pvt_movement_failed_exception.py +27 -27
  447. zaber_motion/exceptions/pvt_movement_interrupted_exception.py +27 -27
  448. zaber_motion/exceptions/pvt_sequence_generation_failed_exception.py +10 -10
  449. zaber_motion/exceptions/pvt_setup_failed_exception.py +10 -10
  450. zaber_motion/exceptions/remote_mode_exception.py +11 -11
  451. zaber_motion/exceptions/request_timeout_exception.py +10 -10
  452. zaber_motion/exceptions/serial_port_busy_exception.py +10 -10
  453. zaber_motion/exceptions/set_device_state_failed_exception.py +27 -27
  454. zaber_motion/exceptions/set_peripheral_state_failed_exception.py +27 -27
  455. zaber_motion/exceptions/setting_not_found_exception.py +10 -10
  456. zaber_motion/exceptions/stream_discontinuity_exception.py +10 -10
  457. zaber_motion/exceptions/stream_execution_exception.py +27 -27
  458. zaber_motion/exceptions/stream_mode_exception.py +10 -10
  459. zaber_motion/exceptions/stream_movement_failed_exception.py +27 -27
  460. zaber_motion/exceptions/stream_movement_interrupted_exception.py +27 -27
  461. zaber_motion/exceptions/stream_setup_failed_exception.py +10 -10
  462. zaber_motion/exceptions/timeout_exception.py +10 -10
  463. zaber_motion/exceptions/transport_already_used_exception.py +10 -10
  464. zaber_motion/exceptions/unknown_request_exception.py +10 -10
  465. zaber_motion/gcode/__init__.py +11 -11
  466. zaber_motion/gcode/offline_translator.py +401 -401
  467. zaber_motion/gcode/translator.py +424 -424
  468. zaber_motion/library.py +179 -179
  469. zaber_motion/microscopy/__init__.py +14 -14
  470. zaber_motion/microscopy/autofocus.py +645 -645
  471. zaber_motion/microscopy/camera_trigger.py +108 -108
  472. zaber_motion/microscopy/filter_changer.py +167 -167
  473. zaber_motion/microscopy/illuminator.py +139 -139
  474. zaber_motion/microscopy/illuminator_channel.py +616 -616
  475. zaber_motion/microscopy/microscope.py +315 -315
  476. zaber_motion/microscopy/objective_changer.py +403 -403
  477. zaber_motion/microscopy/wdi_autofocus_provider.py +536 -396
  478. zaber_motion/product/__init__.py +7 -7
  479. zaber_motion/product/process.py +818 -818
  480. zaber_motion/product/process_controller.py +134 -134
  481. zaber_motion/serialization.py +32 -32
  482. zaber_motion/tools.py +78 -78
  483. zaber_motion/unit_table.py +86 -86
  484. zaber_motion/units.py +206 -206
  485. zaber_motion/version.py +1 -1
  486. {zaber_motion-7.12.0.dist-info → zaber_motion-7.14.0.dist-info}/LICENSE.txt +2119 -2119
  487. {zaber_motion-7.12.0.dist-info → zaber_motion-7.14.0.dist-info}/METADATA +1 -1
  488. zaber_motion-7.14.0.dist-info/RECORD +496 -0
  489. zaber_motion_bindings/zaber-motion-core-windows-386.dll +0 -0
  490. zaber_motion-7.12.0.dist-info/RECORD +0 -494
  491. {zaber_motion-7.12.0.dist-info → zaber_motion-7.14.0.dist-info}/WHEEL +0 -0
  492. {zaber_motion-7.12.0.dist-info → zaber_motion-7.14.0.dist-info}/top_level.txt +0 -0
@@ -1,134 +1,134 @@
1
- # ===== THIS FILE IS GENERATED FROM A TEMPLATE ===== #
2
- # ============== DO NOT EDIT DIRECTLY ============== #
3
-
4
- from typing import List
5
- from ..call import call, call_sync, call_async
6
-
7
- from ..dto import requests as dto
8
- from ..ascii.device import Device
9
- from .process import Process
10
- from ..ascii.connection import Connection
11
-
12
-
13
- class ProcessController:
14
- """
15
- Use to manage a process controller.
16
- Requires at least Firmware 7.35.
17
- """
18
-
19
- @property
20
- def device(self) -> Device:
21
- """
22
- The base device of this process controller.
23
- """
24
- return self._device
25
-
26
- def __init__(self, device: Device):
27
- """
28
- Creates instance of `ProcessController` of the given device.
29
- If the device is identified, this constructor will ensure it is a process controller.
30
- """
31
- self._device: Device = device
32
- self.__verify_is_process_controller()
33
-
34
- @staticmethod
35
- def detect(
36
- connection: Connection,
37
- identify: bool = True
38
- ) -> List['ProcessController']:
39
- """
40
- Detects the process controllers on the connection.
41
-
42
- Args:
43
- connection: The connection to detect process controllers on.
44
- identify: If the Process Controllers should be identified upon detection.
45
-
46
- Returns:
47
- A list of all `ProcessController`s on the connection.
48
- """
49
- request = dto.DeviceDetectRequest(
50
- type=dto.DeviceType.PROCESS_CONTROLLER,
51
- interface_id=connection.interface_id,
52
- identify_devices=identify,
53
- )
54
- response = call(
55
- "device/detect",
56
- request,
57
- dto.DeviceDetectResponse.from_binary)
58
- return [ProcessController(connection.get_device(device)) for device in response.devices]
59
-
60
- @staticmethod
61
- async def detect_async(
62
- connection: Connection,
63
- identify: bool = True
64
- ) -> List['ProcessController']:
65
- """
66
- Detects the process controllers on the connection.
67
-
68
- Args:
69
- connection: The connection to detect process controllers on.
70
- identify: If the Process Controllers should be identified upon detection.
71
-
72
- Returns:
73
- A list of all `ProcessController`s on the connection.
74
- """
75
- request = dto.DeviceDetectRequest(
76
- type=dto.DeviceType.PROCESS_CONTROLLER,
77
- interface_id=connection.interface_id,
78
- identify_devices=identify,
79
- )
80
- response = await call_async(
81
- "device/detect",
82
- request,
83
- dto.DeviceDetectResponse.from_binary)
84
- return [ProcessController(connection.get_device(device)) for device in response.devices]
85
-
86
- def get_process(
87
- self,
88
- process_number: int
89
- ) -> Process:
90
- """
91
- Gets an Process class instance which allows you to control a particular voltage source.
92
- Axes are numbered from 1.
93
-
94
- Args:
95
- process_number: Number of process to control.
96
-
97
- Returns:
98
- Process instance.
99
- """
100
- if process_number <= 0:
101
- raise ValueError('Invalid value; processes are numbered from 1.')
102
-
103
- return Process(self, process_number)
104
-
105
- def __verify_is_process_controller(
106
- self
107
- ) -> None:
108
- """
109
- Checks if this is a process controller or some other type of device and throws an error if it is not.
110
- """
111
- request = dto.DeviceEmptyRequest(
112
- interface_id=self.device.connection.interface_id,
113
- device=self.device.device_address,
114
- )
115
- call_sync("process_controller/verify", request)
116
-
117
- def __repr__(
118
- self
119
- ) -> str:
120
- """
121
- Returns a string that represents the device.
122
-
123
- Returns:
124
- A string that represents the device.
125
- """
126
- request = dto.AxisToStringRequest(
127
- interface_id=self.device.connection.interface_id,
128
- device=self.device.device_address,
129
- )
130
- response = call_sync(
131
- "device/device_to_string",
132
- request,
133
- dto.StringResponse.from_binary)
134
- return response.value
1
+ # ===== THIS FILE IS GENERATED FROM A TEMPLATE ===== #
2
+ # ============== DO NOT EDIT DIRECTLY ============== #
3
+
4
+ from typing import List
5
+ from ..call import call, call_sync, call_async
6
+
7
+ from ..dto import requests as dto
8
+ from ..ascii.device import Device
9
+ from .process import Process
10
+ from ..ascii.connection import Connection
11
+
12
+
13
+ class ProcessController:
14
+ """
15
+ Use to manage a process controller.
16
+ Requires at least Firmware 7.35.
17
+ """
18
+
19
+ @property
20
+ def device(self) -> Device:
21
+ """
22
+ The base device of this process controller.
23
+ """
24
+ return self._device
25
+
26
+ def __init__(self, device: Device):
27
+ """
28
+ Creates instance of `ProcessController` of the given device.
29
+ If the device is identified, this constructor will ensure it is a process controller.
30
+ """
31
+ self._device: Device = device
32
+ self.__verify_is_process_controller()
33
+
34
+ @staticmethod
35
+ def detect(
36
+ connection: Connection,
37
+ identify: bool = True
38
+ ) -> List['ProcessController']:
39
+ """
40
+ Detects the process controllers on the connection.
41
+
42
+ Args:
43
+ connection: The connection to detect process controllers on.
44
+ identify: If the Process Controllers should be identified upon detection.
45
+
46
+ Returns:
47
+ A list of all `ProcessController`s on the connection.
48
+ """
49
+ request = dto.DeviceDetectRequest(
50
+ type=dto.DeviceType.PROCESS_CONTROLLER,
51
+ interface_id=connection.interface_id,
52
+ identify_devices=identify,
53
+ )
54
+ response = call(
55
+ "device/detect",
56
+ request,
57
+ dto.DeviceDetectResponse.from_binary)
58
+ return [ProcessController(connection.get_device(device)) for device in response.devices]
59
+
60
+ @staticmethod
61
+ async def detect_async(
62
+ connection: Connection,
63
+ identify: bool = True
64
+ ) -> List['ProcessController']:
65
+ """
66
+ Detects the process controllers on the connection.
67
+
68
+ Args:
69
+ connection: The connection to detect process controllers on.
70
+ identify: If the Process Controllers should be identified upon detection.
71
+
72
+ Returns:
73
+ A list of all `ProcessController`s on the connection.
74
+ """
75
+ request = dto.DeviceDetectRequest(
76
+ type=dto.DeviceType.PROCESS_CONTROLLER,
77
+ interface_id=connection.interface_id,
78
+ identify_devices=identify,
79
+ )
80
+ response = await call_async(
81
+ "device/detect",
82
+ request,
83
+ dto.DeviceDetectResponse.from_binary)
84
+ return [ProcessController(connection.get_device(device)) for device in response.devices]
85
+
86
+ def get_process(
87
+ self,
88
+ process_number: int
89
+ ) -> Process:
90
+ """
91
+ Gets an Process class instance which allows you to control a particular voltage source.
92
+ Axes are numbered from 1.
93
+
94
+ Args:
95
+ process_number: Number of process to control.
96
+
97
+ Returns:
98
+ Process instance.
99
+ """
100
+ if process_number <= 0:
101
+ raise ValueError('Invalid value; processes are numbered from 1.')
102
+
103
+ return Process(self, process_number)
104
+
105
+ def __verify_is_process_controller(
106
+ self
107
+ ) -> None:
108
+ """
109
+ Checks if this is a process controller or some other type of device and throws an error if it is not.
110
+ """
111
+ request = dto.DeviceEmptyRequest(
112
+ interface_id=self.device.connection.interface_id,
113
+ device=self.device.device_address,
114
+ )
115
+ call_sync("process_controller/verify", request)
116
+
117
+ def __repr__(
118
+ self
119
+ ) -> str:
120
+ """
121
+ Returns a string that represents the device.
122
+
123
+ Returns:
124
+ A string that represents the device.
125
+ """
126
+ request = dto.AxisToStringRequest(
127
+ interface_id=self.device.connection.interface_id,
128
+ device=self.device.device_address,
129
+ )
130
+ response = call_sync(
131
+ "device/device_to_string",
132
+ request,
133
+ dto.StringResponse.from_binary)
134
+ return response.value
@@ -1,32 +1,32 @@
1
- import struct
2
- from ctypes import string_at, c_void_p
3
- from functools import reduce
4
- from typing import List
5
-
6
- SIZE_TYPE_SIZE = 4
7
- SIZE_TYPE_PACKING = "I"
8
-
9
-
10
- def serialize(buffers: List[bytes]) -> bytes:
11
- size = SIZE_TYPE_SIZE + reduce((lambda sum, buffer: sum + len(buffer) + SIZE_TYPE_SIZE), buffers, 0)
12
-
13
- buffer = struct.pack(SIZE_TYPE_PACKING, size)
14
-
15
- for messageBuffer in buffers:
16
- buffer = buffer + struct.pack(SIZE_TYPE_PACKING, len(messageBuffer)) + bytes(messageBuffer)
17
-
18
- return buffer
19
-
20
-
21
- def deserialize(data: c_void_p) -> List[bytes]:
22
- total_size = struct.unpack_from(SIZE_TYPE_PACKING, string_at(data, SIZE_TYPE_SIZE))[0]
23
- offset = SIZE_TYPE_SIZE
24
-
25
- buffers = []
26
- while offset < total_size:
27
- size = struct.unpack_from(SIZE_TYPE_PACKING, string_at(data + offset, SIZE_TYPE_SIZE))[0] # type: ignore
28
- offset += SIZE_TYPE_SIZE
29
- buffers.append(string_at(data + offset, size)) # type: ignore
30
- offset += size
31
-
32
- return buffers
1
+ import struct
2
+ from ctypes import string_at, c_void_p
3
+ from functools import reduce
4
+ from typing import List
5
+
6
+ SIZE_TYPE_SIZE = 4
7
+ SIZE_TYPE_PACKING = "I"
8
+
9
+
10
+ def serialize(buffers: List[bytes]) -> bytes:
11
+ size = SIZE_TYPE_SIZE + reduce((lambda sum, buffer: sum + len(buffer) + SIZE_TYPE_SIZE), buffers, 0)
12
+
13
+ buffer = struct.pack(SIZE_TYPE_PACKING, size)
14
+
15
+ for messageBuffer in buffers:
16
+ buffer = buffer + struct.pack(SIZE_TYPE_PACKING, len(messageBuffer)) + bytes(messageBuffer)
17
+
18
+ return buffer
19
+
20
+
21
+ def deserialize(data: c_void_p) -> List[bytes]:
22
+ total_size = struct.unpack_from(SIZE_TYPE_PACKING, string_at(data, SIZE_TYPE_SIZE))[0]
23
+ offset = SIZE_TYPE_SIZE
24
+
25
+ buffers = []
26
+ while offset < total_size:
27
+ size = struct.unpack_from(SIZE_TYPE_PACKING, string_at(data + offset, SIZE_TYPE_SIZE))[0] # type: ignore
28
+ offset += SIZE_TYPE_SIZE
29
+ buffers.append(string_at(data + offset, size)) # type: ignore
30
+ offset += size
31
+
32
+ return buffers
zaber_motion/tools.py CHANGED
@@ -1,78 +1,78 @@
1
- # ===== THIS FILE IS GENERATED FROM A TEMPLATE ===== #
2
- # ============== DO NOT EDIT DIRECTLY ============== #
3
-
4
- from typing import List
5
- from .call import call, call_async, call_sync
6
- from .dto import requests as dto
7
-
8
-
9
- class Tools:
10
- """
11
- Class providing various utility functions.
12
- """
13
-
14
- @staticmethod
15
- def list_serial_ports() -> List[str]:
16
- """
17
- Lists all serial ports on the computer.
18
-
19
- Returns:
20
- Array of serial port names.
21
- """
22
- request = dto.EmptyRequest(
23
- )
24
- response = call(
25
- "tools/list_serial_ports",
26
- request,
27
- dto.ToolsListSerialPortsResponse.from_binary)
28
- return response.ports
29
-
30
- @staticmethod
31
- async def list_serial_ports_async() -> List[str]:
32
- """
33
- Lists all serial ports on the computer.
34
-
35
- Returns:
36
- Array of serial port names.
37
- """
38
- request = dto.EmptyRequest(
39
- )
40
- response = await call_async(
41
- "tools/list_serial_ports",
42
- request,
43
- dto.ToolsListSerialPortsResponse.from_binary)
44
- return response.ports
45
-
46
- @staticmethod
47
- def get_message_router_pipe_path() -> str:
48
- """
49
- Returns path of message router named pipe on Windows
50
- or file path of unix domain socket on UNIX.
51
-
52
- Returns:
53
- Path of message router's named pipe or unix domain socket.
54
- """
55
- request = dto.EmptyRequest(
56
- )
57
- response = call_sync(
58
- "tools/get_message_router_pipe",
59
- request,
60
- dto.StringResponse.from_binary)
61
- return response.value
62
-
63
- @staticmethod
64
- def get_db_service_pipe_path() -> str:
65
- """
66
- Returns the path for communicating with a local device database service.
67
- This will be a named pipe on Windows and the file path of a unix domain socket on UNIX.
68
-
69
- Returns:
70
- Path of database service's named pipe or unix domain socket.
71
- """
72
- request = dto.EmptyRequest(
73
- )
74
- response = call_sync(
75
- "tools/get_db_service_pipe",
76
- request,
77
- dto.StringResponse.from_binary)
78
- return response.value
1
+ # ===== THIS FILE IS GENERATED FROM A TEMPLATE ===== #
2
+ # ============== DO NOT EDIT DIRECTLY ============== #
3
+
4
+ from typing import List
5
+ from .call import call, call_async, call_sync
6
+ from .dto import requests as dto
7
+
8
+
9
+ class Tools:
10
+ """
11
+ Class providing various utility functions.
12
+ """
13
+
14
+ @staticmethod
15
+ def list_serial_ports() -> List[str]:
16
+ """
17
+ Lists all serial ports on the computer.
18
+
19
+ Returns:
20
+ Array of serial port names.
21
+ """
22
+ request = dto.EmptyRequest(
23
+ )
24
+ response = call(
25
+ "tools/list_serial_ports",
26
+ request,
27
+ dto.ToolsListSerialPortsResponse.from_binary)
28
+ return response.ports
29
+
30
+ @staticmethod
31
+ async def list_serial_ports_async() -> List[str]:
32
+ """
33
+ Lists all serial ports on the computer.
34
+
35
+ Returns:
36
+ Array of serial port names.
37
+ """
38
+ request = dto.EmptyRequest(
39
+ )
40
+ response = await call_async(
41
+ "tools/list_serial_ports",
42
+ request,
43
+ dto.ToolsListSerialPortsResponse.from_binary)
44
+ return response.ports
45
+
46
+ @staticmethod
47
+ def get_message_router_pipe_path() -> str:
48
+ """
49
+ Returns path of message router named pipe on Windows
50
+ or file path of unix domain socket on UNIX.
51
+
52
+ Returns:
53
+ Path of message router's named pipe or unix domain socket.
54
+ """
55
+ request = dto.EmptyRequest(
56
+ )
57
+ response = call_sync(
58
+ "tools/get_message_router_pipe",
59
+ request,
60
+ dto.StringResponse.from_binary)
61
+ return response.value
62
+
63
+ @staticmethod
64
+ def get_db_service_pipe_path() -> str:
65
+ """
66
+ Returns the path for communicating with a local device database service.
67
+ This will be a named pipe on Windows and the file path of a unix domain socket on UNIX.
68
+
69
+ Returns:
70
+ Path of database service's named pipe or unix domain socket.
71
+ """
72
+ request = dto.EmptyRequest(
73
+ )
74
+ response = call_sync(
75
+ "tools/get_db_service_pipe",
76
+ request,
77
+ dto.StringResponse.from_binary)
78
+ return response.value
@@ -1,86 +1,86 @@
1
- # ===== THIS FILE IS GENERATED FROM A TEMPLATE ===== #
2
- # ============== DO NOT EDIT DIRECTLY ============== #
3
-
4
- from .call import call_sync
5
- from .dto import requests as dto
6
- from .units import UnitsAndLiterals
7
-
8
-
9
- class UnitTable:
10
- """
11
- Helper for working with units of measure.
12
- """
13
-
14
- @staticmethod
15
- def get_symbol(
16
- unit: UnitsAndLiterals
17
- ) -> str:
18
- """
19
- Gets the standard symbol associated with a given unit.
20
-
21
- Args:
22
- unit: Unit of measure.
23
-
24
- Returns:
25
- Symbols corresponding to the given unit. Throws NoValueForKey if no symbol is defined.
26
- """
27
- request = dto.UnitGetSymbolRequest(
28
- unit=unit,
29
- )
30
- response = call_sync(
31
- "units/get_symbol",
32
- request,
33
- dto.UnitGetSymbolResponse.from_binary)
34
- return response.symbol
35
-
36
- @staticmethod
37
- def get_unit(
38
- symbol: str
39
- ) -> UnitsAndLiterals:
40
- """
41
- Gets the unit enum value associated with a standard symbol.
42
- Note not all units can be retrieved this way.
43
-
44
- Args:
45
- symbol: Symbol to look up.
46
-
47
- Returns:
48
- The unit enum value with the given symbols. Throws NoValueForKey if the symbol is not supported for lookup.
49
- """
50
- request = dto.UnitGetEnumRequest(
51
- symbol=symbol,
52
- )
53
- response = call_sync(
54
- "units/get_enum",
55
- request,
56
- dto.UnitGetEnumResponse.from_binary)
57
- return response.unit
58
-
59
- @staticmethod
60
- def convert_units(
61
- value: float,
62
- from_unit: UnitsAndLiterals,
63
- to_unit: UnitsAndLiterals
64
- ) -> float:
65
- """
66
- Converts a value from one unit to a different unit of the same dimension.
67
- Note that this function does not support native unit conversions.
68
-
69
- Args:
70
- value: The value to be converted.
71
- from_unit: The unit which the value is being converted from.
72
- to_unit: The unit which the value is being converted to.
73
-
74
- Returns:
75
- The converted value. Throws ConversionFailedException if unit is incompatible.
76
- """
77
- request = dto.UnitConvertUnitRequest(
78
- value=value,
79
- from_unit=from_unit,
80
- to_unit=to_unit,
81
- )
82
- response = call_sync(
83
- "units/convert_unit",
84
- request,
85
- dto.DoubleResponse.from_binary)
86
- return response.value
1
+ # ===== THIS FILE IS GENERATED FROM A TEMPLATE ===== #
2
+ # ============== DO NOT EDIT DIRECTLY ============== #
3
+
4
+ from .call import call_sync
5
+ from .dto import requests as dto
6
+ from .units import UnitsAndLiterals
7
+
8
+
9
+ class UnitTable:
10
+ """
11
+ Helper for working with units of measure.
12
+ """
13
+
14
+ @staticmethod
15
+ def get_symbol(
16
+ unit: UnitsAndLiterals
17
+ ) -> str:
18
+ """
19
+ Gets the standard symbol associated with a given unit.
20
+
21
+ Args:
22
+ unit: Unit of measure.
23
+
24
+ Returns:
25
+ Symbols corresponding to the given unit. Throws NoValueForKey if no symbol is defined.
26
+ """
27
+ request = dto.UnitGetSymbolRequest(
28
+ unit=unit,
29
+ )
30
+ response = call_sync(
31
+ "units/get_symbol",
32
+ request,
33
+ dto.UnitGetSymbolResponse.from_binary)
34
+ return response.symbol
35
+
36
+ @staticmethod
37
+ def get_unit(
38
+ symbol: str
39
+ ) -> UnitsAndLiterals:
40
+ """
41
+ Gets the unit enum value associated with a standard symbol.
42
+ Note not all units can be retrieved this way.
43
+
44
+ Args:
45
+ symbol: Symbol to look up.
46
+
47
+ Returns:
48
+ The unit enum value with the given symbols. Throws NoValueForKey if the symbol is not supported for lookup.
49
+ """
50
+ request = dto.UnitGetEnumRequest(
51
+ symbol=symbol,
52
+ )
53
+ response = call_sync(
54
+ "units/get_enum",
55
+ request,
56
+ dto.UnitGetEnumResponse.from_binary)
57
+ return response.unit
58
+
59
+ @staticmethod
60
+ def convert_units(
61
+ value: float,
62
+ from_unit: UnitsAndLiterals,
63
+ to_unit: UnitsAndLiterals
64
+ ) -> float:
65
+ """
66
+ Converts a value from one unit to a different unit of the same dimension.
67
+ Note that this function does not support native unit conversions.
68
+
69
+ Args:
70
+ value: The value to be converted.
71
+ from_unit: The unit which the value is being converted from.
72
+ to_unit: The unit which the value is being converted to.
73
+
74
+ Returns:
75
+ The converted value. Throws ConversionFailedException if unit is incompatible.
76
+ """
77
+ request = dto.UnitConvertUnitRequest(
78
+ value=value,
79
+ from_unit=from_unit,
80
+ to_unit=to_unit,
81
+ )
82
+ response = call_sync(
83
+ "units/convert_unit",
84
+ request,
85
+ dto.DoubleResponse.from_binary)
86
+ return response.value