zaber-motion 7.12.0__py3-none-win_amd64.whl → 7.14.0__py3-none-win_amd64.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.
- zaber_motion/__init__.py +103 -103
- zaber_motion/ascii/__init__.py +73 -73
- zaber_motion/ascii/all_axes.py +352 -352
- zaber_motion/ascii/axis.py +1673 -1666
- zaber_motion/ascii/axis_group.py +391 -391
- zaber_motion/ascii/axis_settings.py +752 -752
- zaber_motion/ascii/connection.py +1174 -1174
- zaber_motion/ascii/device.py +908 -908
- zaber_motion/ascii/device_io.py +1170 -1170
- zaber_motion/ascii/device_settings.py +735 -735
- zaber_motion/ascii/lockstep.py +1184 -1184
- zaber_motion/ascii/oscilloscope.py +635 -635
- zaber_motion/ascii/oscilloscope_data.py +240 -240
- zaber_motion/ascii/pvt.py +105 -105
- zaber_motion/ascii/pvt_buffer.py +146 -146
- zaber_motion/ascii/pvt_io.py +630 -630
- zaber_motion/ascii/pvt_sequence.py +1530 -1530
- zaber_motion/ascii/servo_tuner.py +637 -637
- zaber_motion/ascii/setting_constants.py +1755 -1755
- zaber_motion/ascii/storage.py +905 -905
- zaber_motion/ascii/stream.py +2182 -2182
- zaber_motion/ascii/stream_buffer.py +101 -101
- zaber_motion/ascii/stream_io.py +700 -700
- zaber_motion/ascii/streams.py +105 -105
- zaber_motion/ascii/transport.py +202 -202
- zaber_motion/ascii/trigger.py +886 -886
- zaber_motion/ascii/triggers.py +241 -241
- zaber_motion/ascii/warning_flags.py +178 -178
- zaber_motion/ascii/warnings.py +152 -152
- zaber_motion/async_utils.py +46 -46
- zaber_motion/binary/__init__.py +14 -14
- zaber_motion/binary/connection.py +648 -648
- zaber_motion/binary/device.py +924 -924
- zaber_motion/binary/device_settings.py +121 -121
- zaber_motion/bindings.py +50 -50
- zaber_motion/call.py +198 -198
- zaber_motion/convert_exception.py +138 -138
- zaber_motion/dto/__init__.py +11 -11
- zaber_motion/dto/ascii/__init__.py +46 -46
- zaber_motion/dto/ascii/alert_event.py +110 -110
- zaber_motion/dto/ascii/axis_identity.py +134 -117
- zaber_motion/dto/ascii/axis_type.py +14 -14
- zaber_motion/dto/ascii/can_set_state_axis_response.py +69 -69
- zaber_motion/dto/ascii/can_set_state_device_response.py +75 -75
- zaber_motion/dto/ascii/conversion_factor.py +81 -81
- zaber_motion/dto/ascii/device_identity.py +136 -136
- zaber_motion/dto/ascii/device_io_info.py +108 -108
- zaber_motion/dto/ascii/digital_output_action.py +13 -13
- zaber_motion/dto/ascii/get_axis_setting.py +64 -64
- zaber_motion/dto/ascii/get_axis_setting_result.py +81 -81
- zaber_motion/dto/ascii/get_setting.py +88 -88
- zaber_motion/dto/ascii/get_setting_result.py +87 -87
- zaber_motion/dto/ascii/io_port_label.py +84 -84
- zaber_motion/dto/ascii/io_port_type.py +14 -14
- zaber_motion/dto/ascii/lockstep_axes.py +108 -108
- zaber_motion/dto/ascii/measurement_sequence.py +73 -73
- zaber_motion/dto/ascii/message_type.py +14 -14
- zaber_motion/dto/ascii/optional_measurement_sequence.py +71 -71
- zaber_motion/dto/ascii/oscilloscope_capture_properties.py +116 -116
- zaber_motion/dto/ascii/oscilloscope_data_source.py +11 -11
- zaber_motion/dto/ascii/paramset_info.py +92 -92
- zaber_motion/dto/ascii/pid_tuning.py +125 -125
- zaber_motion/dto/ascii/pvt_axis_definition.py +70 -70
- zaber_motion/dto/ascii/pvt_axis_type.py +11 -11
- zaber_motion/dto/ascii/pvt_csv_data.py +75 -75
- zaber_motion/dto/ascii/pvt_mode.py +12 -12
- zaber_motion/dto/ascii/pvt_sequence_data.py +99 -99
- zaber_motion/dto/ascii/response.py +137 -137
- zaber_motion/dto/ascii/servo_tuning_param.py +66 -66
- zaber_motion/dto/ascii/servo_tuning_paramset.py +21 -21
- zaber_motion/dto/ascii/set_state_axis_response.py +75 -75
- zaber_motion/dto/ascii/set_state_device_response.py +80 -80
- zaber_motion/dto/ascii/simple_tuning.py +118 -118
- zaber_motion/dto/ascii/simple_tuning_param_definition.py +100 -100
- zaber_motion/dto/ascii/stream_axis_definition.py +70 -70
- zaber_motion/dto/ascii/stream_axis_type.py +11 -11
- zaber_motion/dto/ascii/stream_mode.py +13 -13
- zaber_motion/dto/ascii/trigger_action.py +12 -12
- zaber_motion/dto/ascii/trigger_condition.py +15 -15
- zaber_motion/dto/ascii/trigger_enabled_state.py +68 -68
- zaber_motion/dto/ascii/trigger_operation.py +12 -12
- zaber_motion/dto/ascii/trigger_state.py +114 -114
- zaber_motion/dto/ascii/unknown_response_event.py +137 -137
- zaber_motion/dto/axis_address.py +74 -74
- zaber_motion/dto/binary/__init__.py +11 -11
- zaber_motion/dto/binary/binary_settings.py +74 -74
- zaber_motion/dto/binary/command_code.py +106 -106
- zaber_motion/dto/binary/device_identity.py +156 -156
- zaber_motion/dto/binary/device_type.py +12 -12
- zaber_motion/dto/binary/error_code.py +101 -101
- zaber_motion/dto/binary/message.py +91 -91
- zaber_motion/dto/binary/reply_code.py +16 -16
- zaber_motion/dto/binary/reply_only_event.py +91 -91
- zaber_motion/dto/binary/unknown_response_event.py +91 -91
- zaber_motion/dto/channel_address.py +74 -74
- zaber_motion/dto/device_db_source.py +66 -66
- zaber_motion/dto/device_db_source_type.py +11 -11
- zaber_motion/dto/exceptions/__init__.py +24 -24
- zaber_motion/dto/exceptions/binary_command_failed_exception_data.py +57 -57
- zaber_motion/dto/exceptions/command_failed_exception_data.py +151 -151
- zaber_motion/dto/exceptions/command_too_long_exception_data.py +98 -98
- zaber_motion/dto/exceptions/device_address_conflict_exception_data.py +63 -63
- zaber_motion/dto/exceptions/device_db_failed_exception_data.py +74 -74
- zaber_motion/dto/exceptions/device_db_inner_error.py +85 -85
- zaber_motion/dto/exceptions/g_code_execution_exception_data.py +75 -75
- zaber_motion/dto/exceptions/g_code_syntax_exception_data.py +75 -75
- zaber_motion/dto/exceptions/invalid_packet_exception_data.py +63 -63
- zaber_motion/dto/exceptions/invalid_pvt_point.py +69 -69
- zaber_motion/dto/exceptions/invalid_response_exception_data.py +51 -51
- zaber_motion/dto/exceptions/movement_failed_exception_data.py +104 -104
- zaber_motion/dto/exceptions/movement_interrupted_exception_data.py +104 -104
- zaber_motion/dto/exceptions/operation_failed_exception_data.py +104 -104
- zaber_motion/dto/exceptions/pvt_execution_exception_data.py +86 -86
- zaber_motion/dto/exceptions/pvt_movement_failed_exception_data.py +69 -69
- zaber_motion/dto/exceptions/pvt_movement_interrupted_exception_data.py +69 -69
- zaber_motion/dto/exceptions/set_device_state_exception_data.py +176 -176
- zaber_motion/dto/exceptions/set_peripheral_state_exception_data.py +121 -121
- zaber_motion/dto/exceptions/stream_execution_exception_data.py +63 -63
- zaber_motion/dto/exceptions/stream_movement_failed_exception_data.py +69 -69
- zaber_motion/dto/exceptions/stream_movement_interrupted_exception_data.py +69 -69
- zaber_motion/dto/firmware_version.py +91 -91
- zaber_motion/dto/gcode/__init__.py +9 -9
- zaber_motion/dto/gcode/axis_definition.py +74 -74
- zaber_motion/dto/gcode/axis_mapping.py +69 -69
- zaber_motion/dto/gcode/axis_transformation.py +79 -79
- zaber_motion/dto/gcode/device_definition.py +99 -99
- zaber_motion/dto/gcode/translate_message.py +87 -87
- zaber_motion/dto/gcode/translate_result.py +79 -79
- zaber_motion/dto/gcode/translator_config.py +84 -84
- zaber_motion/dto/log_output_mode.py +13 -13
- zaber_motion/dto/measurement.py +67 -67
- zaber_motion/dto/microscopy/__init__.py +6 -6
- zaber_motion/dto/microscopy/autofocus_status.py +57 -57
- zaber_motion/dto/microscopy/microscope_config.py +159 -159
- zaber_motion/dto/microscopy/third_party_components.py +55 -55
- zaber_motion/dto/microscopy/wdi_autofocus_provider_status.py +57 -57
- zaber_motion/dto/named_parameter.py +64 -64
- zaber_motion/dto/product/__init__.py +5 -5
- zaber_motion/dto/product/process_controller_mode.py +13 -13
- zaber_motion/dto/product/process_controller_source.py +72 -72
- zaber_motion/dto/product/process_controller_source_sensor.py +11 -11
- zaber_motion/dto/requests/__init__.py +256 -254
- zaber_motion/dto/requests/alert_event_wrapper.py +82 -82
- zaber_motion/dto/requests/autofocus_focus_request.py +131 -131
- zaber_motion/dto/requests/autofocus_get_objective_params_request.py +121 -121
- zaber_motion/dto/requests/autofocus_get_objective_params_response.py +56 -56
- zaber_motion/dto/requests/autofocus_get_status_response.py +50 -50
- zaber_motion/dto/requests/autofocus_set_objective_params_request.py +141 -141
- zaber_motion/dto/requests/axes_empty_request.py +95 -95
- zaber_motion/dto/requests/axes_get_setting_request.py +121 -121
- zaber_motion/dto/requests/axes_move_request.py +114 -114
- zaber_motion/dto/requests/axis_empty_request.py +79 -79
- zaber_motion/dto/requests/axis_move_type.py +12 -12
- zaber_motion/dto/requests/axis_to_string_request.py +88 -88
- zaber_motion/dto/requests/binary_device_detect_request.py +56 -56
- zaber_motion/dto/requests/binary_device_detect_response.py +57 -57
- zaber_motion/dto/requests/binary_device_get_setting_request.py +89 -89
- zaber_motion/dto/requests/binary_device_home_request.py +88 -88
- zaber_motion/dto/requests/binary_device_move_request.py +111 -111
- zaber_motion/dto/requests/binary_device_set_setting_request.py +100 -100
- zaber_motion/dto/requests/binary_device_stop_request.py +88 -88
- zaber_motion/dto/requests/binary_generic_with_units_request.py +122 -122
- zaber_motion/dto/requests/binary_message_collection.py +56 -56
- zaber_motion/dto/requests/binary_reply_only_event_wrapper.py +82 -82
- zaber_motion/dto/requests/bool_response.py +43 -43
- zaber_motion/dto/requests/can_set_state_axis_response.py +60 -60
- zaber_motion/dto/requests/can_set_state_request.py +100 -100
- zaber_motion/dto/requests/channel_on.py +84 -84
- zaber_motion/dto/requests/channel_set_intensity.py +90 -90
- zaber_motion/dto/requests/check_version_request.py +54 -54
- zaber_motion/dto/requests/custom_interface_close_request.py +60 -60
- zaber_motion/dto/requests/custom_interface_open_response.py +51 -51
- zaber_motion/dto/requests/custom_interface_read_request.py +51 -51
- zaber_motion/dto/requests/custom_interface_write_request.py +60 -60
- zaber_motion/dto/requests/device_cancel_all_outputs_schedule_request.py +80 -80
- zaber_motion/dto/requests/device_cancel_output_schedule_request.py +84 -84
- zaber_motion/dto/requests/device_convert_setting_request.py +116 -116
- zaber_motion/dto/requests/device_detect_request.py +68 -68
- zaber_motion/dto/requests/device_detect_response.py +57 -57
- zaber_motion/dto/requests/device_empty_request.py +65 -65
- zaber_motion/dto/requests/device_get_all_analog_io_request.py +74 -74
- zaber_motion/dto/requests/device_get_all_analog_io_response.py +54 -54
- zaber_motion/dto/requests/device_get_all_digital_io_request.py +74 -74
- zaber_motion/dto/requests/device_get_all_digital_io_response.py +46 -46
- zaber_motion/dto/requests/device_get_analog_io_request.py +88 -88
- zaber_motion/dto/requests/device_get_digital_io_request.py +88 -88
- zaber_motion/dto/requests/device_get_setting_request.py +100 -100
- zaber_motion/dto/requests/device_get_storage_request.py +93 -93
- zaber_motion/dto/requests/device_get_warnings_request.py +84 -84
- zaber_motion/dto/requests/device_get_warnings_response.py +51 -51
- zaber_motion/dto/requests/device_home_request.py +84 -84
- zaber_motion/dto/requests/device_identify_request.py +77 -77
- zaber_motion/dto/requests/device_move_request.py +177 -177
- zaber_motion/dto/requests/device_move_sin_request.py +140 -140
- zaber_motion/dto/requests/device_multi_get_setting_request.py +118 -118
- zaber_motion/dto/requests/device_on_all_request.py +56 -56
- zaber_motion/dto/requests/device_on_all_response.py +57 -57
- zaber_motion/dto/requests/device_restore_request.py +84 -84
- zaber_motion/dto/requests/device_set_all_analog_outputs_request.py +82 -82
- zaber_motion/dto/requests/device_set_all_analog_outputs_schedule_request.py +121 -121
- zaber_motion/dto/requests/device_set_all_digital_outputs_request.py +83 -83
- zaber_motion/dto/requests/device_set_all_digital_outputs_schedule_request.py +122 -122
- zaber_motion/dto/requests/device_set_analog_output_request.py +90 -90
- zaber_motion/dto/requests/device_set_analog_output_schedule_request.py +124 -124
- zaber_motion/dto/requests/device_set_digital_output_request.py +91 -91
- zaber_motion/dto/requests/device_set_digital_output_schedule_request.py +125 -125
- zaber_motion/dto/requests/device_set_lowpass_filter_request.py +102 -102
- zaber_motion/dto/requests/device_set_setting_bool_request.py +93 -93
- zaber_motion/dto/requests/device_set_setting_int_request.py +102 -102
- zaber_motion/dto/requests/device_set_setting_request.py +111 -111
- zaber_motion/dto/requests/device_set_setting_str_request.py +97 -97
- zaber_motion/dto/requests/device_set_storage_bool_request.py +93 -93
- zaber_motion/dto/requests/device_set_storage_number_request.py +99 -99
- zaber_motion/dto/requests/device_set_storage_request.py +102 -102
- zaber_motion/dto/requests/device_set_unit_conversions_request.py +108 -108
- zaber_motion/dto/requests/device_stop_request.py +84 -84
- zaber_motion/dto/requests/device_storage_list_keys_request.py +88 -88
- zaber_motion/dto/requests/device_storage_request.py +88 -88
- zaber_motion/dto/requests/device_type.py +8 -8
- zaber_motion/dto/requests/device_wait_until_idle_request.py +84 -84
- zaber_motion/dto/requests/disconnected_event.py +101 -101
- zaber_motion/dto/requests/double_array_response.py +54 -54
- zaber_motion/dto/requests/double_response.py +48 -48
- zaber_motion/dto/requests/driver_enable_request.py +90 -90
- zaber_motion/dto/requests/empty_autofocus_request.py +107 -107
- zaber_motion/dto/requests/empty_request.py +38 -38
- zaber_motion/dto/requests/errors.py +68 -68
- zaber_motion/dto/requests/find_device_request.py +65 -65
- zaber_motion/dto/requests/find_device_response.py +51 -51
- zaber_motion/dto/requests/forget_devices_request.py +71 -71
- zaber_motion/dto/requests/gateway_event.py +45 -45
- zaber_motion/dto/requests/gateway_request.py +45 -45
- zaber_motion/dto/requests/gateway_response.py +69 -69
- zaber_motion/dto/requests/generic_binary_request.py +107 -107
- zaber_motion/dto/requests/generic_command_request.py +107 -107
- zaber_motion/dto/requests/generic_command_response_collection.py +56 -56
- zaber_motion/dto/requests/get_all_io_port_labels_response.py +56 -56
- zaber_motion/dto/requests/get_axis_setting_results.py +56 -56
- zaber_motion/dto/requests/get_io_port_label_request.py +91 -91
- zaber_motion/dto/requests/get_setting_results.py +56 -56
- zaber_motion/dto/requests/get_simple_tuning_param_definition_response.py +56 -56
- zaber_motion/dto/requests/int_64_response.py +51 -51
- zaber_motion/dto/requests/int_array_response.py +57 -57
- zaber_motion/dto/requests/int_request.py +51 -51
- zaber_motion/dto/requests/int_response.py +51 -51
- zaber_motion/dto/requests/interface_empty_request.py +51 -51
- zaber_motion/dto/requests/interface_type.py +11 -11
- zaber_motion/dto/requests/load_paramset.py +102 -102
- zaber_motion/dto/requests/lockstep_disable_request.py +84 -84
- zaber_motion/dto/requests/lockstep_empty_request.py +79 -79
- zaber_motion/dto/requests/lockstep_enable_request.py +99 -99
- zaber_motion/dto/requests/lockstep_get_axis_numbers_response.py +57 -57
- zaber_motion/dto/requests/lockstep_get_request.py +91 -91
- zaber_motion/dto/requests/lockstep_home_request.py +84 -84
- zaber_motion/dto/requests/lockstep_move_request.py +163 -163
- zaber_motion/dto/requests/lockstep_move_sin_request.py +140 -140
- zaber_motion/dto/requests/lockstep_set_request.py +116 -116
- zaber_motion/dto/requests/lockstep_stop_request.py +84 -84
- zaber_motion/dto/requests/lockstep_wait_until_idle_request.py +84 -84
- zaber_motion/dto/requests/microscope_config_response.py +50 -50
- zaber_motion/dto/requests/microscope_empty_request.py +65 -65
- zaber_motion/dto/requests/microscope_find_request.py +63 -63
- zaber_motion/dto/requests/microscope_init_request.py +70 -70
- zaber_motion/dto/requests/microscope_trigger_camera_request.py +107 -107
- zaber_motion/dto/requests/objective_changer_change_request.py +119 -119
- zaber_motion/dto/requests/objective_changer_create_response.py +79 -79
- zaber_motion/dto/requests/objective_changer_get_current_response.py +51 -51
- zaber_motion/dto/requests/objective_changer_request.py +93 -93
- zaber_motion/dto/requests/objective_changer_set_request.py +116 -116
- zaber_motion/dto/requests/open_binary_interface_request.py +100 -100
- zaber_motion/dto/requests/open_interface_request.py +159 -159
- zaber_motion/dto/requests/open_interface_response.py +51 -51
- zaber_motion/dto/requests/oscilloscope_add_io_channel_request.py +91 -91
- zaber_motion/dto/requests/oscilloscope_add_setting_channel_request.py +88 -88
- zaber_motion/dto/requests/oscilloscope_data_get_request.py +63 -63
- zaber_motion/dto/requests/oscilloscope_data_get_sample_time_request.py +77 -77
- zaber_motion/dto/requests/oscilloscope_data_get_samples_response.py +54 -54
- zaber_motion/dto/requests/oscilloscope_data_identifier.py +51 -51
- zaber_motion/dto/requests/oscilloscope_read_response.py +57 -57
- zaber_motion/dto/requests/oscilloscope_request.py +65 -65
- zaber_motion/dto/requests/oscilloscope_start_request.py +79 -79
- zaber_motion/dto/requests/prepare_command_request.py +108 -108
- zaber_motion/dto/requests/process_on.py +107 -107
- zaber_motion/dto/requests/pvt_buffer_get_sequence_data_request.py +79 -79
- zaber_motion/dto/requests/pvt_csv_request.py +59 -59
- zaber_motion/dto/requests/pvt_generate_positions_request.py +74 -74
- zaber_motion/dto/requests/pvt_generate_velocities_and_times_request.py +96 -96
- zaber_motion/dto/requests/pvt_generate_velocities_request.py +93 -93
- zaber_motion/dto/requests/pvt_load_csv_request.py +45 -45
- zaber_motion/dto/requests/pvt_point_request.py +145 -145
- zaber_motion/dto/requests/pvt_points_request.py +147 -147
- zaber_motion/dto/requests/pvt_save_csv_request.py +74 -74
- zaber_motion/dto/requests/pvt_submit_sequence_data_request.py +93 -93
- zaber_motion/dto/requests/renumber_request.py +79 -79
- zaber_motion/dto/requests/response_type.py +8 -8
- zaber_motion/dto/requests/servo_tuning_paramset_response.py +48 -48
- zaber_motion/dto/requests/servo_tuning_request.py +91 -91
- zaber_motion/dto/requests/set_device_db_layered_sources_request.py +56 -56
- zaber_motion/dto/requests/set_device_db_source_request.py +63 -63
- zaber_motion/dto/requests/set_interface_checksum_enabled_request.py +56 -56
- zaber_motion/dto/requests/set_interface_timeout_request.py +65 -65
- zaber_motion/dto/requests/set_internal_mode_request.py +43 -43
- zaber_motion/dto/requests/set_io_port_label_request.py +100 -100
- zaber_motion/dto/requests/set_log_output_request.py +57 -57
- zaber_motion/dto/requests/set_process_controller_source.py +93 -93
- zaber_motion/dto/requests/set_servo_tuning_pid_request.py +135 -135
- zaber_motion/dto/requests/set_servo_tuning_request.py +116 -116
- zaber_motion/dto/requests/set_simple_tuning.py +174 -174
- zaber_motion/dto/requests/set_state_request.py +93 -93
- zaber_motion/dto/requests/stream_arc_request.py +199 -199
- zaber_motion/dto/requests/stream_buffer_erase_request.py +84 -84
- zaber_motion/dto/requests/stream_buffer_get_content_request.py +84 -84
- zaber_motion/dto/requests/stream_buffer_get_content_response.py +51 -51
- zaber_motion/dto/requests/stream_buffer_list.py +70 -70
- zaber_motion/dto/requests/stream_call_request.py +112 -112
- zaber_motion/dto/requests/stream_cancel_all_outputs_schedule_request.py +99 -99
- zaber_motion/dto/requests/stream_cancel_output_schedule_request.py +103 -103
- zaber_motion/dto/requests/stream_circle_request.py +155 -155
- zaber_motion/dto/requests/stream_empty_request.py +84 -84
- zaber_motion/dto/requests/stream_generic_command_batch_request.py +99 -99
- zaber_motion/dto/requests/stream_generic_command_request.py +93 -93
- zaber_motion/dto/requests/stream_get_axes_response.py +75 -75
- zaber_motion/dto/requests/stream_get_max_centripetal_acceleration_request.py +96 -96
- zaber_motion/dto/requests/stream_get_max_speed_request.py +96 -96
- zaber_motion/dto/requests/stream_get_max_tangential_acceleration_request.py +96 -96
- zaber_motion/dto/requests/stream_line_request.py +135 -135
- zaber_motion/dto/requests/stream_mode_response.py +60 -60
- zaber_motion/dto/requests/stream_segment_type.py +8 -8
- zaber_motion/dto/requests/stream_set_all_analog_outputs_request.py +101 -101
- zaber_motion/dto/requests/stream_set_all_analog_outputs_schedule_request.py +140 -140
- zaber_motion/dto/requests/stream_set_all_digital_outputs_request.py +102 -102
- zaber_motion/dto/requests/stream_set_all_digital_outputs_schedule_request.py +141 -141
- zaber_motion/dto/requests/stream_set_analog_output_request.py +109 -109
- zaber_motion/dto/requests/stream_set_analog_output_schedule_request.py +143 -143
- zaber_motion/dto/requests/stream_set_digital_output_request.py +110 -110
- zaber_motion/dto/requests/stream_set_digital_output_schedule_request.py +144 -144
- zaber_motion/dto/requests/stream_set_hold_request.py +89 -89
- zaber_motion/dto/requests/stream_set_max_centripetal_acceleration_request.py +107 -107
- zaber_motion/dto/requests/stream_set_max_speed_request.py +107 -107
- zaber_motion/dto/requests/stream_set_max_tangential_acceleration_request.py +107 -107
- zaber_motion/dto/requests/stream_setup_live_composite_request.py +123 -123
- zaber_motion/dto/requests/stream_setup_live_request.py +104 -104
- zaber_motion/dto/requests/stream_setup_store_arbitrary_axes_request.py +126 -126
- zaber_motion/dto/requests/stream_setup_store_composite_request.py +151 -151
- zaber_motion/dto/requests/stream_setup_store_request.py +132 -132
- zaber_motion/dto/requests/stream_wait_analog_input_request.py +118 -118
- zaber_motion/dto/requests/stream_wait_digital_input_request.py +103 -103
- zaber_motion/dto/requests/stream_wait_request.py +107 -107
- zaber_motion/dto/requests/stream_wait_until_idle_request.py +89 -89
- zaber_motion/dto/requests/string_array_response.py +51 -51
- zaber_motion/dto/requests/string_response.py +45 -45
- zaber_motion/dto/requests/test_event.py +45 -45
- zaber_motion/dto/requests/test_request.py +55 -55
- zaber_motion/dto/requests/test_request_complex.py +57 -0
- zaber_motion/dto/requests/test_response.py +45 -45
- zaber_motion/dto/requests/test_response_long.py +51 -51
- zaber_motion/dto/requests/toggle_device_db_store_request.py +50 -50
- zaber_motion/dto/requests/tools_list_serial_ports_response.py +51 -51
- zaber_motion/dto/requests/translator_create_from_device_request.py +97 -97
- zaber_motion/dto/requests/translator_create_live_request.py +91 -91
- zaber_motion/dto/requests/translator_create_request.py +62 -62
- zaber_motion/dto/requests/translator_create_response.py +51 -51
- zaber_motion/dto/requests/translator_empty_request.py +51 -51
- zaber_motion/dto/requests/translator_flush_live_request.py +56 -56
- zaber_motion/dto/requests/translator_flush_response.py +51 -51
- zaber_motion/dto/requests/translator_get_axis_offset_request.py +81 -81
- zaber_motion/dto/requests/translator_get_axis_position_request.py +72 -72
- zaber_motion/dto/requests/translator_set_axis_position_request.py +83 -83
- zaber_motion/dto/requests/translator_set_feed_rate_override_request.py +62 -62
- zaber_motion/dto/requests/translator_set_traverse_rate_request.py +74 -74
- zaber_motion/dto/requests/translator_translate_request.py +60 -60
- zaber_motion/dto/requests/trigger_clear_action_request.py +91 -91
- zaber_motion/dto/requests/trigger_empty_request.py +79 -79
- zaber_motion/dto/requests/trigger_enable_request.py +93 -93
- zaber_motion/dto/requests/trigger_enabled_states.py +56 -56
- zaber_motion/dto/requests/trigger_fire_at_interval_request.py +102 -102
- zaber_motion/dto/requests/trigger_fire_when_distance_travelled_request.py +116 -116
- zaber_motion/dto/requests/trigger_fire_when_io_request.py +128 -128
- zaber_motion/dto/requests/trigger_fire_when_request.py +88 -88
- zaber_motion/dto/requests/trigger_fire_when_setting_request.py +137 -137
- zaber_motion/dto/requests/trigger_on_fire_request.py +114 -114
- zaber_motion/dto/requests/trigger_on_fire_set_request.py +149 -149
- zaber_motion/dto/requests/trigger_on_fire_set_to_setting_request.py +149 -149
- zaber_motion/dto/requests/trigger_set_label_request.py +88 -88
- zaber_motion/dto/requests/trigger_states.py +56 -56
- zaber_motion/dto/requests/unit_convert_unit_request.py +71 -71
- zaber_motion/dto/requests/unit_get_enum_request.py +45 -45
- zaber_motion/dto/requests/unit_get_enum_response.py +48 -48
- zaber_motion/dto/requests/unit_get_symbol_request.py +48 -48
- zaber_motion/dto/requests/unit_get_symbol_response.py +45 -45
- zaber_motion/dto/requests/unknown_binary_response_event_wrapper.py +82 -82
- zaber_motion/dto/requests/unknown_response_event_wrapper.py +82 -82
- zaber_motion/dto/requests/wait_to_clear_warnings_request.py +105 -105
- zaber_motion/dto/requests/wait_to_respond_request.py +76 -76
- zaber_motion/dto/requests/wdi_generic_float_request.py +119 -0
- zaber_motion/dto/requests/wdi_generic_request.py +136 -136
- zaber_motion/dto/requests/wdi_get_status_response.py +50 -50
- zaber_motion/dto/rotation_direction.py +13 -13
- zaber_motion/dto_object.py +18 -18
- zaber_motion/events.py +112 -112
- zaber_motion/exceptions/__init__.py +87 -87
- zaber_motion/exceptions/bad_command_exception.py +10 -10
- zaber_motion/exceptions/bad_data_exception.py +10 -10
- zaber_motion/exceptions/binary_command_failed_exception.py +27 -27
- zaber_motion/exceptions/command_failed_exception.py +27 -27
- zaber_motion/exceptions/command_preempted_exception.py +10 -10
- zaber_motion/exceptions/command_too_long_exception.py +27 -27
- zaber_motion/exceptions/connection_closed_exception.py +10 -10
- zaber_motion/exceptions/connection_failed_exception.py +10 -10
- zaber_motion/exceptions/conversion_failed_exception.py +10 -10
- zaber_motion/exceptions/device_address_conflict_exception.py +27 -27
- zaber_motion/exceptions/device_busy_exception.py +10 -10
- zaber_motion/exceptions/device_db_failed_exception.py +27 -27
- zaber_motion/exceptions/device_detection_failed_exception.py +10 -10
- zaber_motion/exceptions/device_failed_exception.py +11 -11
- zaber_motion/exceptions/device_not_identified_exception.py +10 -10
- zaber_motion/exceptions/driver_disabled_exception.py +10 -10
- zaber_motion/exceptions/g_code_execution_exception.py +27 -27
- zaber_motion/exceptions/g_code_syntax_exception.py +27 -27
- zaber_motion/exceptions/incompatible_shared_library_exception.py +11 -11
- zaber_motion/exceptions/internal_error_exception.py +10 -10
- zaber_motion/exceptions/invalid_argument_exception.py +10 -10
- zaber_motion/exceptions/invalid_csv_data_exception.py +10 -10
- zaber_motion/exceptions/invalid_data_exception.py +10 -10
- zaber_motion/exceptions/invalid_operation_exception.py +10 -10
- zaber_motion/exceptions/invalid_packet_exception.py +27 -27
- zaber_motion/exceptions/invalid_park_state_exception.py +10 -10
- zaber_motion/exceptions/invalid_request_data_exception.py +11 -11
- zaber_motion/exceptions/invalid_response_exception.py +27 -27
- zaber_motion/exceptions/io_channel_out_of_range_exception.py +10 -10
- zaber_motion/exceptions/io_failed_exception.py +10 -10
- zaber_motion/exceptions/lockstep_enabled_exception.py +10 -10
- zaber_motion/exceptions/lockstep_not_enabled_exception.py +10 -10
- zaber_motion/exceptions/motion_lib_exception.py +18 -18
- zaber_motion/exceptions/movement_failed_exception.py +27 -27
- zaber_motion/exceptions/movement_interrupted_exception.py +27 -27
- zaber_motion/exceptions/no_device_found_exception.py +10 -10
- zaber_motion/exceptions/no_value_for_key_exception.py +10 -10
- zaber_motion/exceptions/not_supported_exception.py +10 -10
- zaber_motion/exceptions/operation_failed_exception.py +27 -27
- zaber_motion/exceptions/os_failed_exception.py +10 -10
- zaber_motion/exceptions/out_of_request_ids_exception.py +10 -10
- zaber_motion/exceptions/pvt_discontinuity_exception.py +10 -10
- zaber_motion/exceptions/pvt_execution_exception.py +27 -27
- zaber_motion/exceptions/pvt_mode_exception.py +10 -10
- zaber_motion/exceptions/pvt_movement_failed_exception.py +27 -27
- zaber_motion/exceptions/pvt_movement_interrupted_exception.py +27 -27
- zaber_motion/exceptions/pvt_sequence_generation_failed_exception.py +10 -10
- zaber_motion/exceptions/pvt_setup_failed_exception.py +10 -10
- zaber_motion/exceptions/remote_mode_exception.py +11 -11
- zaber_motion/exceptions/request_timeout_exception.py +10 -10
- zaber_motion/exceptions/serial_port_busy_exception.py +10 -10
- zaber_motion/exceptions/set_device_state_failed_exception.py +27 -27
- zaber_motion/exceptions/set_peripheral_state_failed_exception.py +27 -27
- zaber_motion/exceptions/setting_not_found_exception.py +10 -10
- zaber_motion/exceptions/stream_discontinuity_exception.py +10 -10
- zaber_motion/exceptions/stream_execution_exception.py +27 -27
- zaber_motion/exceptions/stream_mode_exception.py +10 -10
- zaber_motion/exceptions/stream_movement_failed_exception.py +27 -27
- zaber_motion/exceptions/stream_movement_interrupted_exception.py +27 -27
- zaber_motion/exceptions/stream_setup_failed_exception.py +10 -10
- zaber_motion/exceptions/timeout_exception.py +10 -10
- zaber_motion/exceptions/transport_already_used_exception.py +10 -10
- zaber_motion/exceptions/unknown_request_exception.py +10 -10
- zaber_motion/gcode/__init__.py +11 -11
- zaber_motion/gcode/offline_translator.py +401 -401
- zaber_motion/gcode/translator.py +424 -424
- zaber_motion/library.py +179 -179
- zaber_motion/microscopy/__init__.py +14 -14
- zaber_motion/microscopy/autofocus.py +645 -645
- zaber_motion/microscopy/camera_trigger.py +108 -108
- zaber_motion/microscopy/filter_changer.py +167 -167
- zaber_motion/microscopy/illuminator.py +139 -139
- zaber_motion/microscopy/illuminator_channel.py +616 -616
- zaber_motion/microscopy/microscope.py +315 -315
- zaber_motion/microscopy/objective_changer.py +403 -403
- zaber_motion/microscopy/wdi_autofocus_provider.py +536 -396
- zaber_motion/product/__init__.py +7 -7
- zaber_motion/product/process.py +818 -818
- zaber_motion/product/process_controller.py +134 -134
- zaber_motion/serialization.py +32 -32
- zaber_motion/tools.py +78 -78
- zaber_motion/unit_table.py +86 -86
- zaber_motion/units.py +206 -206
- zaber_motion/version.py +1 -1
- {zaber_motion-7.12.0.dist-info → zaber_motion-7.14.0.dist-info}/LICENSE.txt +2119 -2119
- {zaber_motion-7.12.0.dist-info → zaber_motion-7.14.0.dist-info}/METADATA +1 -1
- zaber_motion-7.14.0.dist-info/RECORD +496 -0
- zaber_motion_bindings/zaber-motion-core-windows-amd64.dll +0 -0
- zaber_motion-7.12.0.dist-info/RECORD +0 -494
- {zaber_motion-7.12.0.dist-info → zaber_motion-7.14.0.dist-info}/WHEEL +0 -0
- {zaber_motion-7.12.0.dist-info → zaber_motion-7.14.0.dist-info}/top_level.txt +0 -0
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
# This file is generated. Do not modify by hand.
|
|
2
|
-
from enum import Enum
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
class RotationDirection(Enum):
|
|
6
|
-
"""
|
|
7
|
-
Direction of rotation.
|
|
8
|
-
"""
|
|
9
|
-
|
|
10
|
-
CLOCKWISE = 0
|
|
11
|
-
COUNTERCLOCKWISE = 1
|
|
12
|
-
CW = 0
|
|
13
|
-
CCW = 1
|
|
1
|
+
# This file is generated. Do not modify by hand.
|
|
2
|
+
from enum import Enum
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
class RotationDirection(Enum):
|
|
6
|
+
"""
|
|
7
|
+
Direction of rotation.
|
|
8
|
+
"""
|
|
9
|
+
|
|
10
|
+
CLOCKWISE = 0
|
|
11
|
+
COUNTERCLOCKWISE = 1
|
|
12
|
+
CW = 0
|
|
13
|
+
CCW = 1
|
zaber_motion/dto_object.py
CHANGED
|
@@ -1,18 +1,18 @@
|
|
|
1
|
-
import typing
|
|
2
|
-
|
|
3
|
-
if typing.TYPE_CHECKING:
|
|
4
|
-
from typing_extensions import Protocol
|
|
5
|
-
else:
|
|
6
|
-
Protocol = object
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
class DtoObject(Protocol):
|
|
10
|
-
""" Protocol for DTO objects. """
|
|
11
|
-
|
|
12
|
-
def to_binary(self) -> bytes:
|
|
13
|
-
"""" Serializes to a binary. """
|
|
14
|
-
...
|
|
15
|
-
|
|
16
|
-
def validate(self) -> None:
|
|
17
|
-
"""" Checks if the object is valid. """
|
|
18
|
-
...
|
|
1
|
+
import typing
|
|
2
|
+
|
|
3
|
+
if typing.TYPE_CHECKING:
|
|
4
|
+
from typing_extensions import Protocol
|
|
5
|
+
else:
|
|
6
|
+
Protocol = object
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
class DtoObject(Protocol):
|
|
10
|
+
""" Protocol for DTO objects. """
|
|
11
|
+
|
|
12
|
+
def to_binary(self) -> bytes:
|
|
13
|
+
"""" Serializes to a binary. """
|
|
14
|
+
...
|
|
15
|
+
|
|
16
|
+
def validate(self) -> None:
|
|
17
|
+
"""" Checks if the object is valid. """
|
|
18
|
+
...
|
zaber_motion/events.py
CHANGED
|
@@ -1,112 +1,112 @@
|
|
|
1
|
-
import atexit
|
|
2
|
-
from concurrent.futures import ThreadPoolExecutor
|
|
3
|
-
from typing import List, TypeVar, Generic, Type, Literal, TypedDict, cast
|
|
4
|
-
from ctypes import c_void_p, c_int64
|
|
5
|
-
import traceback
|
|
6
|
-
from reactivex.subject import Subject
|
|
7
|
-
from reactivex import Observable, operators as rxops
|
|
8
|
-
|
|
9
|
-
from .dto_object import DtoObject
|
|
10
|
-
from .dto import requests as dto
|
|
11
|
-
from .serialization import deserialize
|
|
12
|
-
from .bindings import c_set_event_handler, CALLBACK
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
TEventData = TypeVar('TEventData', bound=DtoObject)
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
class Event(Generic[TEventData]):
|
|
19
|
-
def __init__(self, name: str, data: TEventData) -> None:
|
|
20
|
-
self.name = name
|
|
21
|
-
self.data = data
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
events = Subject[Event[DtoObject]]()
|
|
25
|
-
|
|
26
|
-
event_executor = ThreadPoolExecutor(max_workers=1) # pylint: disable=consider-using-with
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
def on_shutdown() -> None:
|
|
30
|
-
event_executor.shutdown()
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
atexit.register(on_shutdown)
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
def event_handler(event_data: c_void_p, _tag: c_int64) -> None:
|
|
37
|
-
try:
|
|
38
|
-
event_buffers = deserialize(event_data)
|
|
39
|
-
event_executor.submit(process_event_catch, event_buffers)
|
|
40
|
-
except RuntimeError:
|
|
41
|
-
# the error appears due to race condition with python shutting down and cannot be prevented
|
|
42
|
-
pass
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
event_handler_cb = CALLBACK(event_handler)
|
|
46
|
-
|
|
47
|
-
c_set_event_handler(0, event_handler_cb)
|
|
48
|
-
|
|
49
|
-
EventName = Literal[
|
|
50
|
-
'test/event',
|
|
51
|
-
'interface/unknown_response',
|
|
52
|
-
'binary/interface/unknown_response',
|
|
53
|
-
'interface/alert',
|
|
54
|
-
'binary/interface/reply_only',
|
|
55
|
-
'interface/disconnected',
|
|
56
|
-
]
|
|
57
|
-
|
|
58
|
-
ParsersDict = TypedDict('ParsersDict', {
|
|
59
|
-
'test/event': Type[dto.TestEvent],
|
|
60
|
-
'interface/unknown_response': Type[dto.UnknownResponseEventWrapper],
|
|
61
|
-
'binary/interface/unknown_response': Type[dto.UnknownBinaryResponseEventWrapper],
|
|
62
|
-
'interface/alert': Type[dto.AlertEventWrapper],
|
|
63
|
-
'binary/interface/reply_only': Type[dto.BinaryReplyOnlyEventWrapper],
|
|
64
|
-
'interface/disconnected': Type[dto.DisconnectedEvent],
|
|
65
|
-
})
|
|
66
|
-
|
|
67
|
-
parsers: ParsersDict = {
|
|
68
|
-
'test/event': dto.TestEvent,
|
|
69
|
-
'interface/unknown_response': dto.UnknownResponseEventWrapper,
|
|
70
|
-
'binary/interface/unknown_response': dto.UnknownBinaryResponseEventWrapper,
|
|
71
|
-
'interface/alert': dto.AlertEventWrapper,
|
|
72
|
-
'binary/interface/reply_only': dto.BinaryReplyOnlyEventWrapper,
|
|
73
|
-
'interface/disconnected': dto.DisconnectedEvent,
|
|
74
|
-
}
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
def process_event_catch(event_buffers: List[bytes]) -> None:
|
|
78
|
-
try:
|
|
79
|
-
process_event(event_buffers)
|
|
80
|
-
except: # noqa, pylint: disable=W0702
|
|
81
|
-
print("Unhandled exception in event:")
|
|
82
|
-
traceback.print_exc()
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
def process_event(event_buffers: List[bytes]) -> None:
|
|
86
|
-
event = dto.GatewayEvent.from_binary(event_buffers[0])
|
|
87
|
-
|
|
88
|
-
event_name = cast(EventName, event.event)
|
|
89
|
-
parse_event_data = parsers.get(event_name)
|
|
90
|
-
if parse_event_data is None:
|
|
91
|
-
raise RuntimeError(f"Event not supported: {event_name}")
|
|
92
|
-
|
|
93
|
-
event_data = parse_event_data.from_binary(event_buffers[1])
|
|
94
|
-
events.on_next(Event(event_name, event_data))
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
def filter_events(
|
|
98
|
-
name: EventName,
|
|
99
|
-
data_type: Type[TEventData],
|
|
100
|
-
) -> Observable[TEventData]:
|
|
101
|
-
assert parsers[name] is data_type
|
|
102
|
-
|
|
103
|
-
def filter_name(event: Event[DtoObject]) -> bool:
|
|
104
|
-
return event.name == name
|
|
105
|
-
|
|
106
|
-
def map_data(event: Event[DtoObject]) -> TEventData:
|
|
107
|
-
assert isinstance(event.data, data_type)
|
|
108
|
-
return event.data
|
|
109
|
-
|
|
110
|
-
return events.pipe(
|
|
111
|
-
rxops.filter(filter_name),
|
|
112
|
-
rxops.map(map_data))
|
|
1
|
+
import atexit
|
|
2
|
+
from concurrent.futures import ThreadPoolExecutor
|
|
3
|
+
from typing import List, TypeVar, Generic, Type, Literal, TypedDict, cast
|
|
4
|
+
from ctypes import c_void_p, c_int64
|
|
5
|
+
import traceback
|
|
6
|
+
from reactivex.subject import Subject
|
|
7
|
+
from reactivex import Observable, operators as rxops
|
|
8
|
+
|
|
9
|
+
from .dto_object import DtoObject
|
|
10
|
+
from .dto import requests as dto
|
|
11
|
+
from .serialization import deserialize
|
|
12
|
+
from .bindings import c_set_event_handler, CALLBACK
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
TEventData = TypeVar('TEventData', bound=DtoObject)
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
class Event(Generic[TEventData]):
|
|
19
|
+
def __init__(self, name: str, data: TEventData) -> None:
|
|
20
|
+
self.name = name
|
|
21
|
+
self.data = data
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
events = Subject[Event[DtoObject]]()
|
|
25
|
+
|
|
26
|
+
event_executor = ThreadPoolExecutor(max_workers=1) # pylint: disable=consider-using-with
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
def on_shutdown() -> None:
|
|
30
|
+
event_executor.shutdown()
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
atexit.register(on_shutdown)
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
def event_handler(event_data: c_void_p, _tag: c_int64) -> None:
|
|
37
|
+
try:
|
|
38
|
+
event_buffers = deserialize(event_data)
|
|
39
|
+
event_executor.submit(process_event_catch, event_buffers)
|
|
40
|
+
except RuntimeError:
|
|
41
|
+
# the error appears due to race condition with python shutting down and cannot be prevented
|
|
42
|
+
pass
|
|
43
|
+
|
|
44
|
+
|
|
45
|
+
event_handler_cb = CALLBACK(event_handler)
|
|
46
|
+
|
|
47
|
+
c_set_event_handler(0, event_handler_cb)
|
|
48
|
+
|
|
49
|
+
EventName = Literal[
|
|
50
|
+
'test/event',
|
|
51
|
+
'interface/unknown_response',
|
|
52
|
+
'binary/interface/unknown_response',
|
|
53
|
+
'interface/alert',
|
|
54
|
+
'binary/interface/reply_only',
|
|
55
|
+
'interface/disconnected',
|
|
56
|
+
]
|
|
57
|
+
|
|
58
|
+
ParsersDict = TypedDict('ParsersDict', {
|
|
59
|
+
'test/event': Type[dto.TestEvent],
|
|
60
|
+
'interface/unknown_response': Type[dto.UnknownResponseEventWrapper],
|
|
61
|
+
'binary/interface/unknown_response': Type[dto.UnknownBinaryResponseEventWrapper],
|
|
62
|
+
'interface/alert': Type[dto.AlertEventWrapper],
|
|
63
|
+
'binary/interface/reply_only': Type[dto.BinaryReplyOnlyEventWrapper],
|
|
64
|
+
'interface/disconnected': Type[dto.DisconnectedEvent],
|
|
65
|
+
})
|
|
66
|
+
|
|
67
|
+
parsers: ParsersDict = {
|
|
68
|
+
'test/event': dto.TestEvent,
|
|
69
|
+
'interface/unknown_response': dto.UnknownResponseEventWrapper,
|
|
70
|
+
'binary/interface/unknown_response': dto.UnknownBinaryResponseEventWrapper,
|
|
71
|
+
'interface/alert': dto.AlertEventWrapper,
|
|
72
|
+
'binary/interface/reply_only': dto.BinaryReplyOnlyEventWrapper,
|
|
73
|
+
'interface/disconnected': dto.DisconnectedEvent,
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
|
|
77
|
+
def process_event_catch(event_buffers: List[bytes]) -> None:
|
|
78
|
+
try:
|
|
79
|
+
process_event(event_buffers)
|
|
80
|
+
except: # noqa, pylint: disable=W0702
|
|
81
|
+
print("Unhandled exception in event:")
|
|
82
|
+
traceback.print_exc()
|
|
83
|
+
|
|
84
|
+
|
|
85
|
+
def process_event(event_buffers: List[bytes]) -> None:
|
|
86
|
+
event = dto.GatewayEvent.from_binary(event_buffers[0])
|
|
87
|
+
|
|
88
|
+
event_name = cast(EventName, event.event)
|
|
89
|
+
parse_event_data = parsers.get(event_name)
|
|
90
|
+
if parse_event_data is None:
|
|
91
|
+
raise RuntimeError(f"Event not supported: {event_name}")
|
|
92
|
+
|
|
93
|
+
event_data = parse_event_data.from_binary(event_buffers[1])
|
|
94
|
+
events.on_next(Event(event_name, event_data))
|
|
95
|
+
|
|
96
|
+
|
|
97
|
+
def filter_events(
|
|
98
|
+
name: EventName,
|
|
99
|
+
data_type: Type[TEventData],
|
|
100
|
+
) -> Observable[TEventData]:
|
|
101
|
+
assert parsers[name] is data_type
|
|
102
|
+
|
|
103
|
+
def filter_name(event: Event[DtoObject]) -> bool:
|
|
104
|
+
return event.name == name
|
|
105
|
+
|
|
106
|
+
def map_data(event: Event[DtoObject]) -> TEventData:
|
|
107
|
+
assert isinstance(event.data, data_type)
|
|
108
|
+
return event.data
|
|
109
|
+
|
|
110
|
+
return events.pipe(
|
|
111
|
+
rxops.filter(filter_name),
|
|
112
|
+
rxops.map(map_data))
|
|
@@ -1,87 +1,87 @@
|
|
|
1
|
-
# pylint: disable=line-too-long
|
|
2
|
-
# The following imports are automatically generated by templates.
|
|
3
|
-
from .bad_command_exception import BadCommandException as BadCommandException
|
|
4
|
-
from .bad_data_exception import BadDataException as BadDataException
|
|
5
|
-
from .binary_command_failed_exception import BinaryCommandFailedException as BinaryCommandFailedException
|
|
6
|
-
from .command_failed_exception import CommandFailedException as CommandFailedException
|
|
7
|
-
from .command_preempted_exception import CommandPreemptedException as CommandPreemptedException
|
|
8
|
-
from .command_too_long_exception import CommandTooLongException as CommandTooLongException
|
|
9
|
-
from .connection_closed_exception import ConnectionClosedException as ConnectionClosedException
|
|
10
|
-
from .connection_failed_exception import ConnectionFailedException as ConnectionFailedException
|
|
11
|
-
from .conversion_failed_exception import ConversionFailedException as ConversionFailedException
|
|
12
|
-
from .device_address_conflict_exception import DeviceAddressConflictException as DeviceAddressConflictException
|
|
13
|
-
from .device_busy_exception import DeviceBusyException as DeviceBusyException
|
|
14
|
-
from .device_db_failed_exception import DeviceDbFailedException as DeviceDbFailedException
|
|
15
|
-
from .device_detection_failed_exception import DeviceDetectionFailedException as DeviceDetectionFailedException
|
|
16
|
-
from .device_failed_exception import DeviceFailedException as DeviceFailedException
|
|
17
|
-
from .device_not_identified_exception import DeviceNotIdentifiedException as DeviceNotIdentifiedException
|
|
18
|
-
from .driver_disabled_exception import DriverDisabledException as DriverDisabledException
|
|
19
|
-
from .g_code_execution_exception import GCodeExecutionException as GCodeExecutionException
|
|
20
|
-
from .g_code_syntax_exception import GCodeSyntaxException as GCodeSyntaxException
|
|
21
|
-
from .incompatible_shared_library_exception import IncompatibleSharedLibraryException as IncompatibleSharedLibraryException
|
|
22
|
-
from .internal_error_exception import InternalErrorException as InternalErrorException
|
|
23
|
-
from .invalid_argument_exception import InvalidArgumentException as InvalidArgumentException
|
|
24
|
-
from .invalid_csv_data_exception import InvalidCsvDataException as InvalidCsvDataException
|
|
25
|
-
from .invalid_data_exception import InvalidDataException as InvalidDataException
|
|
26
|
-
from .invalid_operation_exception import InvalidOperationException as InvalidOperationException
|
|
27
|
-
from .invalid_packet_exception import InvalidPacketException as InvalidPacketException
|
|
28
|
-
from .invalid_park_state_exception import InvalidParkStateException as InvalidParkStateException
|
|
29
|
-
from .invalid_request_data_exception import InvalidRequestDataException as InvalidRequestDataException
|
|
30
|
-
from .invalid_response_exception import InvalidResponseException as InvalidResponseException
|
|
31
|
-
from .io_channel_out_of_range_exception import IoChannelOutOfRangeException as IoChannelOutOfRangeException
|
|
32
|
-
from .io_failed_exception import IoFailedException as IoFailedException
|
|
33
|
-
from .lockstep_enabled_exception import LockstepEnabledException as LockstepEnabledException
|
|
34
|
-
from .lockstep_not_enabled_exception import LockstepNotEnabledException as LockstepNotEnabledException
|
|
35
|
-
from .motion_lib_exception import MotionLibException as MotionLibException
|
|
36
|
-
from .movement_failed_exception import MovementFailedException as MovementFailedException
|
|
37
|
-
from .movement_interrupted_exception import MovementInterruptedException as MovementInterruptedException
|
|
38
|
-
from .no_device_found_exception import NoDeviceFoundException as NoDeviceFoundException
|
|
39
|
-
from .no_value_for_key_exception import NoValueForKeyException as NoValueForKeyException
|
|
40
|
-
from .not_supported_exception import NotSupportedException as NotSupportedException
|
|
41
|
-
from .operation_failed_exception import OperationFailedException as OperationFailedException
|
|
42
|
-
from .os_failed_exception import OsFailedException as OsFailedException
|
|
43
|
-
from .out_of_request_ids_exception import OutOfRequestIdsException as OutOfRequestIdsException
|
|
44
|
-
from .pvt_discontinuity_exception import PvtDiscontinuityException as PvtDiscontinuityException
|
|
45
|
-
from .pvt_execution_exception import PvtExecutionException as PvtExecutionException
|
|
46
|
-
from .pvt_mode_exception import PvtModeException as PvtModeException
|
|
47
|
-
from .pvt_movement_failed_exception import PvtMovementFailedException as PvtMovementFailedException
|
|
48
|
-
from .pvt_movement_interrupted_exception import PvtMovementInterruptedException as PvtMovementInterruptedException
|
|
49
|
-
from .pvt_sequence_generation_failed_exception import PvtSequenceGenerationFailedException as PvtSequenceGenerationFailedException
|
|
50
|
-
from .pvt_setup_failed_exception import PvtSetupFailedException as PvtSetupFailedException
|
|
51
|
-
from .remote_mode_exception import RemoteModeException as RemoteModeException
|
|
52
|
-
from .request_timeout_exception import RequestTimeoutException as RequestTimeoutException
|
|
53
|
-
from .serial_port_busy_exception import SerialPortBusyException as SerialPortBusyException
|
|
54
|
-
from .set_device_state_failed_exception import SetDeviceStateFailedException as SetDeviceStateFailedException
|
|
55
|
-
from .set_peripheral_state_failed_exception import SetPeripheralStateFailedException as SetPeripheralStateFailedException
|
|
56
|
-
from .setting_not_found_exception import SettingNotFoundException as SettingNotFoundException
|
|
57
|
-
from .stream_discontinuity_exception import StreamDiscontinuityException as StreamDiscontinuityException
|
|
58
|
-
from .stream_execution_exception import StreamExecutionException as StreamExecutionException
|
|
59
|
-
from .stream_mode_exception import StreamModeException as StreamModeException
|
|
60
|
-
from .stream_movement_failed_exception import StreamMovementFailedException as StreamMovementFailedException
|
|
61
|
-
from .stream_movement_interrupted_exception import StreamMovementInterruptedException as StreamMovementInterruptedException
|
|
62
|
-
from .stream_setup_failed_exception import StreamSetupFailedException as StreamSetupFailedException
|
|
63
|
-
from .timeout_exception import TimeoutException as TimeoutException
|
|
64
|
-
from .transport_already_used_exception import TransportAlreadyUsedException as TransportAlreadyUsedException
|
|
65
|
-
from .unknown_request_exception import UnknownRequestException as UnknownRequestException
|
|
66
|
-
from ..dto.exceptions.binary_command_failed_exception_data import BinaryCommandFailedExceptionData as BinaryCommandFailedExceptionData
|
|
67
|
-
from ..dto.exceptions.command_failed_exception_data import CommandFailedExceptionData as CommandFailedExceptionData
|
|
68
|
-
from ..dto.exceptions.command_too_long_exception_data import CommandTooLongExceptionData as CommandTooLongExceptionData
|
|
69
|
-
from ..dto.exceptions.device_address_conflict_exception_data import DeviceAddressConflictExceptionData as DeviceAddressConflictExceptionData
|
|
70
|
-
from ..dto.exceptions.device_db_failed_exception_data import DeviceDbFailedExceptionData as DeviceDbFailedExceptionData
|
|
71
|
-
from ..dto.exceptions.device_db_inner_error import DeviceDbInnerError as DeviceDbInnerError
|
|
72
|
-
from ..dto.exceptions.g_code_execution_exception_data import GCodeExecutionExceptionData as GCodeExecutionExceptionData
|
|
73
|
-
from ..dto.exceptions.g_code_syntax_exception_data import GCodeSyntaxExceptionData as GCodeSyntaxExceptionData
|
|
74
|
-
from ..dto.exceptions.invalid_packet_exception_data import InvalidPacketExceptionData as InvalidPacketExceptionData
|
|
75
|
-
from ..dto.exceptions.invalid_pvt_point import InvalidPvtPoint as InvalidPvtPoint
|
|
76
|
-
from ..dto.exceptions.invalid_response_exception_data import InvalidResponseExceptionData as InvalidResponseExceptionData
|
|
77
|
-
from ..dto.exceptions.movement_failed_exception_data import MovementFailedExceptionData as MovementFailedExceptionData
|
|
78
|
-
from ..dto.exceptions.movement_interrupted_exception_data import MovementInterruptedExceptionData as MovementInterruptedExceptionData
|
|
79
|
-
from ..dto.exceptions.operation_failed_exception_data import OperationFailedExceptionData as OperationFailedExceptionData
|
|
80
|
-
from ..dto.exceptions.pvt_execution_exception_data import PvtExecutionExceptionData as PvtExecutionExceptionData
|
|
81
|
-
from ..dto.exceptions.pvt_movement_failed_exception_data import PvtMovementFailedExceptionData as PvtMovementFailedExceptionData
|
|
82
|
-
from ..dto.exceptions.pvt_movement_interrupted_exception_data import PvtMovementInterruptedExceptionData as PvtMovementInterruptedExceptionData
|
|
83
|
-
from ..dto.exceptions.set_device_state_exception_data import SetDeviceStateExceptionData as SetDeviceStateExceptionData
|
|
84
|
-
from ..dto.exceptions.set_peripheral_state_exception_data import SetPeripheralStateExceptionData as SetPeripheralStateExceptionData
|
|
85
|
-
from ..dto.exceptions.stream_execution_exception_data import StreamExecutionExceptionData as StreamExecutionExceptionData
|
|
86
|
-
from ..dto.exceptions.stream_movement_failed_exception_data import StreamMovementFailedExceptionData as StreamMovementFailedExceptionData
|
|
87
|
-
from ..dto.exceptions.stream_movement_interrupted_exception_data import StreamMovementInterruptedExceptionData as StreamMovementInterruptedExceptionData
|
|
1
|
+
# pylint: disable=line-too-long
|
|
2
|
+
# The following imports are automatically generated by templates.
|
|
3
|
+
from .bad_command_exception import BadCommandException as BadCommandException
|
|
4
|
+
from .bad_data_exception import BadDataException as BadDataException
|
|
5
|
+
from .binary_command_failed_exception import BinaryCommandFailedException as BinaryCommandFailedException
|
|
6
|
+
from .command_failed_exception import CommandFailedException as CommandFailedException
|
|
7
|
+
from .command_preempted_exception import CommandPreemptedException as CommandPreemptedException
|
|
8
|
+
from .command_too_long_exception import CommandTooLongException as CommandTooLongException
|
|
9
|
+
from .connection_closed_exception import ConnectionClosedException as ConnectionClosedException
|
|
10
|
+
from .connection_failed_exception import ConnectionFailedException as ConnectionFailedException
|
|
11
|
+
from .conversion_failed_exception import ConversionFailedException as ConversionFailedException
|
|
12
|
+
from .device_address_conflict_exception import DeviceAddressConflictException as DeviceAddressConflictException
|
|
13
|
+
from .device_busy_exception import DeviceBusyException as DeviceBusyException
|
|
14
|
+
from .device_db_failed_exception import DeviceDbFailedException as DeviceDbFailedException
|
|
15
|
+
from .device_detection_failed_exception import DeviceDetectionFailedException as DeviceDetectionFailedException
|
|
16
|
+
from .device_failed_exception import DeviceFailedException as DeviceFailedException
|
|
17
|
+
from .device_not_identified_exception import DeviceNotIdentifiedException as DeviceNotIdentifiedException
|
|
18
|
+
from .driver_disabled_exception import DriverDisabledException as DriverDisabledException
|
|
19
|
+
from .g_code_execution_exception import GCodeExecutionException as GCodeExecutionException
|
|
20
|
+
from .g_code_syntax_exception import GCodeSyntaxException as GCodeSyntaxException
|
|
21
|
+
from .incompatible_shared_library_exception import IncompatibleSharedLibraryException as IncompatibleSharedLibraryException
|
|
22
|
+
from .internal_error_exception import InternalErrorException as InternalErrorException
|
|
23
|
+
from .invalid_argument_exception import InvalidArgumentException as InvalidArgumentException
|
|
24
|
+
from .invalid_csv_data_exception import InvalidCsvDataException as InvalidCsvDataException
|
|
25
|
+
from .invalid_data_exception import InvalidDataException as InvalidDataException
|
|
26
|
+
from .invalid_operation_exception import InvalidOperationException as InvalidOperationException
|
|
27
|
+
from .invalid_packet_exception import InvalidPacketException as InvalidPacketException
|
|
28
|
+
from .invalid_park_state_exception import InvalidParkStateException as InvalidParkStateException
|
|
29
|
+
from .invalid_request_data_exception import InvalidRequestDataException as InvalidRequestDataException
|
|
30
|
+
from .invalid_response_exception import InvalidResponseException as InvalidResponseException
|
|
31
|
+
from .io_channel_out_of_range_exception import IoChannelOutOfRangeException as IoChannelOutOfRangeException
|
|
32
|
+
from .io_failed_exception import IoFailedException as IoFailedException
|
|
33
|
+
from .lockstep_enabled_exception import LockstepEnabledException as LockstepEnabledException
|
|
34
|
+
from .lockstep_not_enabled_exception import LockstepNotEnabledException as LockstepNotEnabledException
|
|
35
|
+
from .motion_lib_exception import MotionLibException as MotionLibException
|
|
36
|
+
from .movement_failed_exception import MovementFailedException as MovementFailedException
|
|
37
|
+
from .movement_interrupted_exception import MovementInterruptedException as MovementInterruptedException
|
|
38
|
+
from .no_device_found_exception import NoDeviceFoundException as NoDeviceFoundException
|
|
39
|
+
from .no_value_for_key_exception import NoValueForKeyException as NoValueForKeyException
|
|
40
|
+
from .not_supported_exception import NotSupportedException as NotSupportedException
|
|
41
|
+
from .operation_failed_exception import OperationFailedException as OperationFailedException
|
|
42
|
+
from .os_failed_exception import OsFailedException as OsFailedException
|
|
43
|
+
from .out_of_request_ids_exception import OutOfRequestIdsException as OutOfRequestIdsException
|
|
44
|
+
from .pvt_discontinuity_exception import PvtDiscontinuityException as PvtDiscontinuityException
|
|
45
|
+
from .pvt_execution_exception import PvtExecutionException as PvtExecutionException
|
|
46
|
+
from .pvt_mode_exception import PvtModeException as PvtModeException
|
|
47
|
+
from .pvt_movement_failed_exception import PvtMovementFailedException as PvtMovementFailedException
|
|
48
|
+
from .pvt_movement_interrupted_exception import PvtMovementInterruptedException as PvtMovementInterruptedException
|
|
49
|
+
from .pvt_sequence_generation_failed_exception import PvtSequenceGenerationFailedException as PvtSequenceGenerationFailedException
|
|
50
|
+
from .pvt_setup_failed_exception import PvtSetupFailedException as PvtSetupFailedException
|
|
51
|
+
from .remote_mode_exception import RemoteModeException as RemoteModeException
|
|
52
|
+
from .request_timeout_exception import RequestTimeoutException as RequestTimeoutException
|
|
53
|
+
from .serial_port_busy_exception import SerialPortBusyException as SerialPortBusyException
|
|
54
|
+
from .set_device_state_failed_exception import SetDeviceStateFailedException as SetDeviceStateFailedException
|
|
55
|
+
from .set_peripheral_state_failed_exception import SetPeripheralStateFailedException as SetPeripheralStateFailedException
|
|
56
|
+
from .setting_not_found_exception import SettingNotFoundException as SettingNotFoundException
|
|
57
|
+
from .stream_discontinuity_exception import StreamDiscontinuityException as StreamDiscontinuityException
|
|
58
|
+
from .stream_execution_exception import StreamExecutionException as StreamExecutionException
|
|
59
|
+
from .stream_mode_exception import StreamModeException as StreamModeException
|
|
60
|
+
from .stream_movement_failed_exception import StreamMovementFailedException as StreamMovementFailedException
|
|
61
|
+
from .stream_movement_interrupted_exception import StreamMovementInterruptedException as StreamMovementInterruptedException
|
|
62
|
+
from .stream_setup_failed_exception import StreamSetupFailedException as StreamSetupFailedException
|
|
63
|
+
from .timeout_exception import TimeoutException as TimeoutException
|
|
64
|
+
from .transport_already_used_exception import TransportAlreadyUsedException as TransportAlreadyUsedException
|
|
65
|
+
from .unknown_request_exception import UnknownRequestException as UnknownRequestException
|
|
66
|
+
from ..dto.exceptions.binary_command_failed_exception_data import BinaryCommandFailedExceptionData as BinaryCommandFailedExceptionData
|
|
67
|
+
from ..dto.exceptions.command_failed_exception_data import CommandFailedExceptionData as CommandFailedExceptionData
|
|
68
|
+
from ..dto.exceptions.command_too_long_exception_data import CommandTooLongExceptionData as CommandTooLongExceptionData
|
|
69
|
+
from ..dto.exceptions.device_address_conflict_exception_data import DeviceAddressConflictExceptionData as DeviceAddressConflictExceptionData
|
|
70
|
+
from ..dto.exceptions.device_db_failed_exception_data import DeviceDbFailedExceptionData as DeviceDbFailedExceptionData
|
|
71
|
+
from ..dto.exceptions.device_db_inner_error import DeviceDbInnerError as DeviceDbInnerError
|
|
72
|
+
from ..dto.exceptions.g_code_execution_exception_data import GCodeExecutionExceptionData as GCodeExecutionExceptionData
|
|
73
|
+
from ..dto.exceptions.g_code_syntax_exception_data import GCodeSyntaxExceptionData as GCodeSyntaxExceptionData
|
|
74
|
+
from ..dto.exceptions.invalid_packet_exception_data import InvalidPacketExceptionData as InvalidPacketExceptionData
|
|
75
|
+
from ..dto.exceptions.invalid_pvt_point import InvalidPvtPoint as InvalidPvtPoint
|
|
76
|
+
from ..dto.exceptions.invalid_response_exception_data import InvalidResponseExceptionData as InvalidResponseExceptionData
|
|
77
|
+
from ..dto.exceptions.movement_failed_exception_data import MovementFailedExceptionData as MovementFailedExceptionData
|
|
78
|
+
from ..dto.exceptions.movement_interrupted_exception_data import MovementInterruptedExceptionData as MovementInterruptedExceptionData
|
|
79
|
+
from ..dto.exceptions.operation_failed_exception_data import OperationFailedExceptionData as OperationFailedExceptionData
|
|
80
|
+
from ..dto.exceptions.pvt_execution_exception_data import PvtExecutionExceptionData as PvtExecutionExceptionData
|
|
81
|
+
from ..dto.exceptions.pvt_movement_failed_exception_data import PvtMovementFailedExceptionData as PvtMovementFailedExceptionData
|
|
82
|
+
from ..dto.exceptions.pvt_movement_interrupted_exception_data import PvtMovementInterruptedExceptionData as PvtMovementInterruptedExceptionData
|
|
83
|
+
from ..dto.exceptions.set_device_state_exception_data import SetDeviceStateExceptionData as SetDeviceStateExceptionData
|
|
84
|
+
from ..dto.exceptions.set_peripheral_state_exception_data import SetPeripheralStateExceptionData as SetPeripheralStateExceptionData
|
|
85
|
+
from ..dto.exceptions.stream_execution_exception_data import StreamExecutionExceptionData as StreamExecutionExceptionData
|
|
86
|
+
from ..dto.exceptions.stream_movement_failed_exception_data import StreamMovementFailedExceptionData as StreamMovementFailedExceptionData
|
|
87
|
+
from ..dto.exceptions.stream_movement_interrupted_exception_data import StreamMovementInterruptedExceptionData as StreamMovementInterruptedExceptionData
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
# ===== THIS FILE IS GENERATED FROM A TEMPLATE ===== #
|
|
2
|
-
# ============== DO NOT EDIT DIRECTLY ============== #
|
|
3
|
-
|
|
4
|
-
from .command_failed_exception import CommandFailedException
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
class BadCommandException(CommandFailedException):
|
|
8
|
-
"""
|
|
9
|
-
Thrown when a device receives an invalid command.
|
|
10
|
-
"""
|
|
1
|
+
# ===== THIS FILE IS GENERATED FROM A TEMPLATE ===== #
|
|
2
|
+
# ============== DO NOT EDIT DIRECTLY ============== #
|
|
3
|
+
|
|
4
|
+
from .command_failed_exception import CommandFailedException
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
class BadCommandException(CommandFailedException):
|
|
8
|
+
"""
|
|
9
|
+
Thrown when a device receives an invalid command.
|
|
10
|
+
"""
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
# ===== THIS FILE IS GENERATED FROM A TEMPLATE ===== #
|
|
2
|
-
# ============== DO NOT EDIT DIRECTLY ============== #
|
|
3
|
-
|
|
4
|
-
from .command_failed_exception import CommandFailedException
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
class BadDataException(CommandFailedException):
|
|
8
|
-
"""
|
|
9
|
-
Thrown when a parameter of a command is judged to be out of range by the receiving device.
|
|
10
|
-
"""
|
|
1
|
+
# ===== THIS FILE IS GENERATED FROM A TEMPLATE ===== #
|
|
2
|
+
# ============== DO NOT EDIT DIRECTLY ============== #
|
|
3
|
+
|
|
4
|
+
from .command_failed_exception import CommandFailedException
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
class BadDataException(CommandFailedException):
|
|
8
|
+
"""
|
|
9
|
+
Thrown when a parameter of a command is judged to be out of range by the receiving device.
|
|
10
|
+
"""
|
|
@@ -1,27 +1,27 @@
|
|
|
1
|
-
# ===== THIS FILE IS GENERATED FROM A TEMPLATE ===== #
|
|
2
|
-
# ============== DO NOT EDIT DIRECTLY ============== #
|
|
3
|
-
|
|
4
|
-
from typing import Union
|
|
5
|
-
from ..dto.exceptions.binary_command_failed_exception_data import BinaryCommandFailedExceptionData
|
|
6
|
-
from .motion_lib_exception import MotionLibException
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
class BinaryCommandFailedException(MotionLibException):
|
|
10
|
-
"""
|
|
11
|
-
Thrown when a device rejects a binary command with an error.
|
|
12
|
-
"""
|
|
13
|
-
|
|
14
|
-
@property
|
|
15
|
-
def details(self) -> BinaryCommandFailedExceptionData:
|
|
16
|
-
"""
|
|
17
|
-
Additional data for BinaryCommandFailedException
|
|
18
|
-
"""
|
|
19
|
-
return self._details
|
|
20
|
-
|
|
21
|
-
def __init__(self, message: str, custom_data: Union[bytes, BinaryCommandFailedExceptionData]):
|
|
22
|
-
MotionLibException.__init__(self, message)
|
|
23
|
-
|
|
24
|
-
if isinstance(custom_data, BinaryCommandFailedExceptionData):
|
|
25
|
-
self._details = custom_data
|
|
26
|
-
else:
|
|
27
|
-
self._details = BinaryCommandFailedExceptionData.from_binary(custom_data)
|
|
1
|
+
# ===== THIS FILE IS GENERATED FROM A TEMPLATE ===== #
|
|
2
|
+
# ============== DO NOT EDIT DIRECTLY ============== #
|
|
3
|
+
|
|
4
|
+
from typing import Union
|
|
5
|
+
from ..dto.exceptions.binary_command_failed_exception_data import BinaryCommandFailedExceptionData
|
|
6
|
+
from .motion_lib_exception import MotionLibException
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
class BinaryCommandFailedException(MotionLibException):
|
|
10
|
+
"""
|
|
11
|
+
Thrown when a device rejects a binary command with an error.
|
|
12
|
+
"""
|
|
13
|
+
|
|
14
|
+
@property
|
|
15
|
+
def details(self) -> BinaryCommandFailedExceptionData:
|
|
16
|
+
"""
|
|
17
|
+
Additional data for BinaryCommandFailedException
|
|
18
|
+
"""
|
|
19
|
+
return self._details
|
|
20
|
+
|
|
21
|
+
def __init__(self, message: str, custom_data: Union[bytes, BinaryCommandFailedExceptionData]):
|
|
22
|
+
MotionLibException.__init__(self, message)
|
|
23
|
+
|
|
24
|
+
if isinstance(custom_data, BinaryCommandFailedExceptionData):
|
|
25
|
+
self._details = custom_data
|
|
26
|
+
else:
|
|
27
|
+
self._details = BinaryCommandFailedExceptionData.from_binary(custom_data)
|
|
@@ -1,27 +1,27 @@
|
|
|
1
|
-
# ===== THIS FILE IS GENERATED FROM A TEMPLATE ===== #
|
|
2
|
-
# ============== DO NOT EDIT DIRECTLY ============== #
|
|
3
|
-
|
|
4
|
-
from typing import Union
|
|
5
|
-
from ..dto.exceptions.command_failed_exception_data import CommandFailedExceptionData
|
|
6
|
-
from .motion_lib_exception import MotionLibException
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
class CommandFailedException(MotionLibException):
|
|
10
|
-
"""
|
|
11
|
-
Thrown when a device rejects a command.
|
|
12
|
-
"""
|
|
13
|
-
|
|
14
|
-
@property
|
|
15
|
-
def details(self) -> CommandFailedExceptionData:
|
|
16
|
-
"""
|
|
17
|
-
Additional data for CommandFailedException
|
|
18
|
-
"""
|
|
19
|
-
return self._details
|
|
20
|
-
|
|
21
|
-
def __init__(self, message: str, custom_data: Union[bytes, CommandFailedExceptionData]):
|
|
22
|
-
MotionLibException.__init__(self, message)
|
|
23
|
-
|
|
24
|
-
if isinstance(custom_data, CommandFailedExceptionData):
|
|
25
|
-
self._details = custom_data
|
|
26
|
-
else:
|
|
27
|
-
self._details = CommandFailedExceptionData.from_binary(custom_data)
|
|
1
|
+
# ===== THIS FILE IS GENERATED FROM A TEMPLATE ===== #
|
|
2
|
+
# ============== DO NOT EDIT DIRECTLY ============== #
|
|
3
|
+
|
|
4
|
+
from typing import Union
|
|
5
|
+
from ..dto.exceptions.command_failed_exception_data import CommandFailedExceptionData
|
|
6
|
+
from .motion_lib_exception import MotionLibException
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
class CommandFailedException(MotionLibException):
|
|
10
|
+
"""
|
|
11
|
+
Thrown when a device rejects a command.
|
|
12
|
+
"""
|
|
13
|
+
|
|
14
|
+
@property
|
|
15
|
+
def details(self) -> CommandFailedExceptionData:
|
|
16
|
+
"""
|
|
17
|
+
Additional data for CommandFailedException
|
|
18
|
+
"""
|
|
19
|
+
return self._details
|
|
20
|
+
|
|
21
|
+
def __init__(self, message: str, custom_data: Union[bytes, CommandFailedExceptionData]):
|
|
22
|
+
MotionLibException.__init__(self, message)
|
|
23
|
+
|
|
24
|
+
if isinstance(custom_data, CommandFailedExceptionData):
|
|
25
|
+
self._details = custom_data
|
|
26
|
+
else:
|
|
27
|
+
self._details = CommandFailedExceptionData.from_binary(custom_data)
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
# ===== THIS FILE IS GENERATED FROM A TEMPLATE ===== #
|
|
2
|
-
# ============== DO NOT EDIT DIRECTLY ============== #
|
|
3
|
-
|
|
4
|
-
from .motion_lib_exception import MotionLibException
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
class CommandPreemptedException(MotionLibException):
|
|
8
|
-
"""
|
|
9
|
-
Thrown when a movement command gets preempted by another command.
|
|
10
|
-
"""
|
|
1
|
+
# ===== THIS FILE IS GENERATED FROM A TEMPLATE ===== #
|
|
2
|
+
# ============== DO NOT EDIT DIRECTLY ============== #
|
|
3
|
+
|
|
4
|
+
from .motion_lib_exception import MotionLibException
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
class CommandPreemptedException(MotionLibException):
|
|
8
|
+
"""
|
|
9
|
+
Thrown when a movement command gets preempted by another command.
|
|
10
|
+
"""
|