zaber-motion 7.13.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.
- 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 -1673
- 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 -134
- 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.13.0.dist-info → zaber_motion-7.14.0.dist-info}/LICENSE.txt +2119 -2119
- {zaber_motion-7.13.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-386.dll +0 -0
- zaber_motion-7.13.0.dist-info/RECORD +0 -494
- {zaber_motion-7.13.0.dist-info → zaber_motion-7.14.0.dist-info}/WHEEL +0 -0
- {zaber_motion-7.13.0.dist-info → zaber_motion-7.14.0.dist-info}/top_level.txt +0 -0
|
@@ -1,81 +1,81 @@
|
|
|
1
|
-
# This file is generated. Do not modify by hand.
|
|
2
|
-
# pylint: disable=line-too-long, unused-argument, f-string-without-interpolation, too-many-branches, too-many-statements, unnecessary-pass
|
|
3
|
-
from dataclasses import dataclass
|
|
4
|
-
from typing import Any, Dict
|
|
5
|
-
import decimal
|
|
6
|
-
import zaber_bson
|
|
7
|
-
from ...units import Units, UnitsAndLiterals, units_from_literals
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
@dataclass
|
|
11
|
-
class ConversionFactor:
|
|
12
|
-
"""
|
|
13
|
-
Represents unit conversion factor for a single dimension.
|
|
14
|
-
"""
|
|
15
|
-
|
|
16
|
-
setting: str
|
|
17
|
-
"""
|
|
18
|
-
Setting representing the dimension.
|
|
19
|
-
"""
|
|
20
|
-
|
|
21
|
-
value: float
|
|
22
|
-
"""
|
|
23
|
-
Value representing 1 native device unit in specified real-word units.
|
|
24
|
-
"""
|
|
25
|
-
|
|
26
|
-
unit: UnitsAndLiterals
|
|
27
|
-
"""
|
|
28
|
-
Units of the value.
|
|
29
|
-
"""
|
|
30
|
-
|
|
31
|
-
@staticmethod
|
|
32
|
-
def zero_values() -> 'ConversionFactor':
|
|
33
|
-
return ConversionFactor(
|
|
34
|
-
setting="",
|
|
35
|
-
value=0,
|
|
36
|
-
unit=Units.NATIVE,
|
|
37
|
-
)
|
|
38
|
-
|
|
39
|
-
@staticmethod
|
|
40
|
-
def from_binary(data_bytes: bytes) -> 'ConversionFactor':
|
|
41
|
-
"""" Deserialize a binary representation of this class. """
|
|
42
|
-
data = zaber_bson.loads(data_bytes) # type: Dict[str, Any]
|
|
43
|
-
return ConversionFactor.from_dict(data)
|
|
44
|
-
|
|
45
|
-
def to_binary(self) -> bytes:
|
|
46
|
-
"""" Serialize this class to a binary representation. """
|
|
47
|
-
self.validate()
|
|
48
|
-
return zaber_bson.dumps(self.to_dict()) # type: ignore
|
|
49
|
-
|
|
50
|
-
def to_dict(self) -> Dict[str, Any]:
|
|
51
|
-
return {
|
|
52
|
-
'setting': str(self.setting or ''),
|
|
53
|
-
'value': float(self.value),
|
|
54
|
-
'unit': units_from_literals(self.unit).value,
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
@staticmethod
|
|
58
|
-
def from_dict(data: Dict[str, Any]) -> 'ConversionFactor':
|
|
59
|
-
return ConversionFactor(
|
|
60
|
-
setting=data.get('setting'), # type: ignore
|
|
61
|
-
value=data.get('value'), # type: ignore
|
|
62
|
-
unit=Units(data.get('unit')), # type: ignore
|
|
63
|
-
)
|
|
64
|
-
|
|
65
|
-
def validate(self) -> None:
|
|
66
|
-
"""" Validates the properties of the instance. """
|
|
67
|
-
if self.setting is not None:
|
|
68
|
-
if not isinstance(self.setting, str):
|
|
69
|
-
raise ValueError(f'Property "Setting" of "ConversionFactor" is not a string.')
|
|
70
|
-
|
|
71
|
-
if self.value is None:
|
|
72
|
-
raise ValueError(f'Property "Value" of "ConversionFactor" is None.')
|
|
73
|
-
|
|
74
|
-
if not isinstance(self.value, (int, float, decimal.Decimal)):
|
|
75
|
-
raise ValueError(f'Property "Value" of "ConversionFactor" is not a number.')
|
|
76
|
-
|
|
77
|
-
if self.unit is None:
|
|
78
|
-
raise ValueError(f'Property "Unit" of "ConversionFactor" is None.')
|
|
79
|
-
|
|
80
|
-
if not isinstance(self.unit, (Units, str)):
|
|
81
|
-
raise ValueError(f'Property "Unit" of "ConversionFactor" is not Units.')
|
|
1
|
+
# This file is generated. Do not modify by hand.
|
|
2
|
+
# pylint: disable=line-too-long, unused-argument, f-string-without-interpolation, too-many-branches, too-many-statements, unnecessary-pass
|
|
3
|
+
from dataclasses import dataclass
|
|
4
|
+
from typing import Any, Dict
|
|
5
|
+
import decimal
|
|
6
|
+
import zaber_bson
|
|
7
|
+
from ...units import Units, UnitsAndLiterals, units_from_literals
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
@dataclass
|
|
11
|
+
class ConversionFactor:
|
|
12
|
+
"""
|
|
13
|
+
Represents unit conversion factor for a single dimension.
|
|
14
|
+
"""
|
|
15
|
+
|
|
16
|
+
setting: str
|
|
17
|
+
"""
|
|
18
|
+
Setting representing the dimension.
|
|
19
|
+
"""
|
|
20
|
+
|
|
21
|
+
value: float
|
|
22
|
+
"""
|
|
23
|
+
Value representing 1 native device unit in specified real-word units.
|
|
24
|
+
"""
|
|
25
|
+
|
|
26
|
+
unit: UnitsAndLiterals
|
|
27
|
+
"""
|
|
28
|
+
Units of the value.
|
|
29
|
+
"""
|
|
30
|
+
|
|
31
|
+
@staticmethod
|
|
32
|
+
def zero_values() -> 'ConversionFactor':
|
|
33
|
+
return ConversionFactor(
|
|
34
|
+
setting="",
|
|
35
|
+
value=0,
|
|
36
|
+
unit=Units.NATIVE,
|
|
37
|
+
)
|
|
38
|
+
|
|
39
|
+
@staticmethod
|
|
40
|
+
def from_binary(data_bytes: bytes) -> 'ConversionFactor':
|
|
41
|
+
"""" Deserialize a binary representation of this class. """
|
|
42
|
+
data = zaber_bson.loads(data_bytes) # type: Dict[str, Any]
|
|
43
|
+
return ConversionFactor.from_dict(data)
|
|
44
|
+
|
|
45
|
+
def to_binary(self) -> bytes:
|
|
46
|
+
"""" Serialize this class to a binary representation. """
|
|
47
|
+
self.validate()
|
|
48
|
+
return zaber_bson.dumps(self.to_dict()) # type: ignore
|
|
49
|
+
|
|
50
|
+
def to_dict(self) -> Dict[str, Any]:
|
|
51
|
+
return {
|
|
52
|
+
'setting': str(self.setting or ''),
|
|
53
|
+
'value': float(self.value),
|
|
54
|
+
'unit': units_from_literals(self.unit).value,
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
@staticmethod
|
|
58
|
+
def from_dict(data: Dict[str, Any]) -> 'ConversionFactor':
|
|
59
|
+
return ConversionFactor(
|
|
60
|
+
setting=data.get('setting'), # type: ignore
|
|
61
|
+
value=data.get('value'), # type: ignore
|
|
62
|
+
unit=Units(data.get('unit')), # type: ignore
|
|
63
|
+
)
|
|
64
|
+
|
|
65
|
+
def validate(self) -> None:
|
|
66
|
+
"""" Validates the properties of the instance. """
|
|
67
|
+
if self.setting is not None:
|
|
68
|
+
if not isinstance(self.setting, str):
|
|
69
|
+
raise ValueError(f'Property "Setting" of "ConversionFactor" is not a string.')
|
|
70
|
+
|
|
71
|
+
if self.value is None:
|
|
72
|
+
raise ValueError(f'Property "Value" of "ConversionFactor" is None.')
|
|
73
|
+
|
|
74
|
+
if not isinstance(self.value, (int, float, decimal.Decimal)):
|
|
75
|
+
raise ValueError(f'Property "Value" of "ConversionFactor" is not a number.')
|
|
76
|
+
|
|
77
|
+
if self.unit is None:
|
|
78
|
+
raise ValueError(f'Property "Unit" of "ConversionFactor" is None.')
|
|
79
|
+
|
|
80
|
+
if not isinstance(self.unit, (Units, str)):
|
|
81
|
+
raise ValueError(f'Property "Unit" of "ConversionFactor" is not Units.')
|
|
@@ -1,136 +1,136 @@
|
|
|
1
|
-
# This file is generated. Do not modify by hand.
|
|
2
|
-
# pylint: disable=line-too-long, unused-argument, f-string-without-interpolation, too-many-branches, too-many-statements, unnecessary-pass
|
|
3
|
-
from dataclasses import dataclass
|
|
4
|
-
from typing import Any, Dict
|
|
5
|
-
import decimal
|
|
6
|
-
import zaber_bson
|
|
7
|
-
from ..firmware_version import FirmwareVersion
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
@dataclass
|
|
11
|
-
class DeviceIdentity:
|
|
12
|
-
"""
|
|
13
|
-
Representation of data gathered during device identification.
|
|
14
|
-
"""
|
|
15
|
-
|
|
16
|
-
device_id: int
|
|
17
|
-
"""
|
|
18
|
-
Unique ID of the device hardware.
|
|
19
|
-
"""
|
|
20
|
-
|
|
21
|
-
serial_number: int
|
|
22
|
-
"""
|
|
23
|
-
Serial number of the device.
|
|
24
|
-
"""
|
|
25
|
-
|
|
26
|
-
name: str
|
|
27
|
-
"""
|
|
28
|
-
Name of the product.
|
|
29
|
-
"""
|
|
30
|
-
|
|
31
|
-
axis_count: int
|
|
32
|
-
"""
|
|
33
|
-
Number of axes this device has.
|
|
34
|
-
"""
|
|
35
|
-
|
|
36
|
-
firmware_version: FirmwareVersion
|
|
37
|
-
"""
|
|
38
|
-
Version of the firmware.
|
|
39
|
-
"""
|
|
40
|
-
|
|
41
|
-
is_modified: bool
|
|
42
|
-
"""
|
|
43
|
-
The device has hardware modifications.
|
|
44
|
-
"""
|
|
45
|
-
|
|
46
|
-
is_integrated: bool
|
|
47
|
-
"""
|
|
48
|
-
The device is an integrated product.
|
|
49
|
-
"""
|
|
50
|
-
|
|
51
|
-
@staticmethod
|
|
52
|
-
def zero_values() -> 'DeviceIdentity':
|
|
53
|
-
return DeviceIdentity(
|
|
54
|
-
device_id=0,
|
|
55
|
-
serial_number=0,
|
|
56
|
-
name="",
|
|
57
|
-
axis_count=0,
|
|
58
|
-
firmware_version=FirmwareVersion.zero_values(),
|
|
59
|
-
is_modified=False,
|
|
60
|
-
is_integrated=False,
|
|
61
|
-
)
|
|
62
|
-
|
|
63
|
-
@staticmethod
|
|
64
|
-
def from_binary(data_bytes: bytes) -> 'DeviceIdentity':
|
|
65
|
-
"""" Deserialize a binary representation of this class. """
|
|
66
|
-
data = zaber_bson.loads(data_bytes) # type: Dict[str, Any]
|
|
67
|
-
return DeviceIdentity.from_dict(data)
|
|
68
|
-
|
|
69
|
-
def to_binary(self) -> bytes:
|
|
70
|
-
"""" Serialize this class to a binary representation. """
|
|
71
|
-
self.validate()
|
|
72
|
-
return zaber_bson.dumps(self.to_dict()) # type: ignore
|
|
73
|
-
|
|
74
|
-
def to_dict(self) -> Dict[str, Any]:
|
|
75
|
-
return {
|
|
76
|
-
'deviceId': int(self.device_id),
|
|
77
|
-
'serialNumber': int(self.serial_number),
|
|
78
|
-
'name': str(self.name or ''),
|
|
79
|
-
'axisCount': int(self.axis_count),
|
|
80
|
-
'firmwareVersion': self.firmware_version.to_dict(),
|
|
81
|
-
'isModified': bool(self.is_modified),
|
|
82
|
-
'isIntegrated': bool(self.is_integrated),
|
|
83
|
-
}
|
|
84
|
-
|
|
85
|
-
@staticmethod
|
|
86
|
-
def from_dict(data: Dict[str, Any]) -> 'DeviceIdentity':
|
|
87
|
-
return DeviceIdentity(
|
|
88
|
-
device_id=data.get('deviceId'), # type: ignore
|
|
89
|
-
serial_number=data.get('serialNumber'), # type: ignore
|
|
90
|
-
name=data.get('name'), # type: ignore
|
|
91
|
-
axis_count=data.get('axisCount'), # type: ignore
|
|
92
|
-
firmware_version=FirmwareVersion.from_dict(data.get('firmwareVersion')), # type: ignore
|
|
93
|
-
is_modified=data.get('isModified'), # type: ignore
|
|
94
|
-
is_integrated=data.get('isIntegrated'), # type: ignore
|
|
95
|
-
)
|
|
96
|
-
|
|
97
|
-
def validate(self) -> None:
|
|
98
|
-
"""" Validates the properties of the instance. """
|
|
99
|
-
if self.device_id is None:
|
|
100
|
-
raise ValueError(f'Property "DeviceId" of "DeviceIdentity" is None.')
|
|
101
|
-
|
|
102
|
-
if not isinstance(self.device_id, (int, float, decimal.Decimal)):
|
|
103
|
-
raise ValueError(f'Property "DeviceId" of "DeviceIdentity" is not a number.')
|
|
104
|
-
|
|
105
|
-
if int(self.device_id) != self.device_id:
|
|
106
|
-
raise ValueError(f'Property "DeviceId" of "DeviceIdentity" is not integer value.')
|
|
107
|
-
|
|
108
|
-
if self.serial_number is None:
|
|
109
|
-
raise ValueError(f'Property "SerialNumber" of "DeviceIdentity" is None.')
|
|
110
|
-
|
|
111
|
-
if not isinstance(self.serial_number, (int, float, decimal.Decimal)):
|
|
112
|
-
raise ValueError(f'Property "SerialNumber" of "DeviceIdentity" is not a number.')
|
|
113
|
-
|
|
114
|
-
if int(self.serial_number) != self.serial_number:
|
|
115
|
-
raise ValueError(f'Property "SerialNumber" of "DeviceIdentity" is not integer value.')
|
|
116
|
-
|
|
117
|
-
if self.name is not None:
|
|
118
|
-
if not isinstance(self.name, str):
|
|
119
|
-
raise ValueError(f'Property "Name" of "DeviceIdentity" is not a string.')
|
|
120
|
-
|
|
121
|
-
if self.axis_count is None:
|
|
122
|
-
raise ValueError(f'Property "AxisCount" of "DeviceIdentity" is None.')
|
|
123
|
-
|
|
124
|
-
if not isinstance(self.axis_count, (int, float, decimal.Decimal)):
|
|
125
|
-
raise ValueError(f'Property "AxisCount" of "DeviceIdentity" is not a number.')
|
|
126
|
-
|
|
127
|
-
if int(self.axis_count) != self.axis_count:
|
|
128
|
-
raise ValueError(f'Property "AxisCount" of "DeviceIdentity" is not integer value.')
|
|
129
|
-
|
|
130
|
-
if self.firmware_version is None:
|
|
131
|
-
raise ValueError(f'Property "FirmwareVersion" of "DeviceIdentity" is None.')
|
|
132
|
-
|
|
133
|
-
if not isinstance(self.firmware_version, FirmwareVersion):
|
|
134
|
-
raise ValueError(f'Property "FirmwareVersion" of "DeviceIdentity" is not an instance of "FirmwareVersion".')
|
|
135
|
-
|
|
136
|
-
self.firmware_version.validate()
|
|
1
|
+
# This file is generated. Do not modify by hand.
|
|
2
|
+
# pylint: disable=line-too-long, unused-argument, f-string-without-interpolation, too-many-branches, too-many-statements, unnecessary-pass
|
|
3
|
+
from dataclasses import dataclass
|
|
4
|
+
from typing import Any, Dict
|
|
5
|
+
import decimal
|
|
6
|
+
import zaber_bson
|
|
7
|
+
from ..firmware_version import FirmwareVersion
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
@dataclass
|
|
11
|
+
class DeviceIdentity:
|
|
12
|
+
"""
|
|
13
|
+
Representation of data gathered during device identification.
|
|
14
|
+
"""
|
|
15
|
+
|
|
16
|
+
device_id: int
|
|
17
|
+
"""
|
|
18
|
+
Unique ID of the device hardware.
|
|
19
|
+
"""
|
|
20
|
+
|
|
21
|
+
serial_number: int
|
|
22
|
+
"""
|
|
23
|
+
Serial number of the device.
|
|
24
|
+
"""
|
|
25
|
+
|
|
26
|
+
name: str
|
|
27
|
+
"""
|
|
28
|
+
Name of the product.
|
|
29
|
+
"""
|
|
30
|
+
|
|
31
|
+
axis_count: int
|
|
32
|
+
"""
|
|
33
|
+
Number of axes this device has.
|
|
34
|
+
"""
|
|
35
|
+
|
|
36
|
+
firmware_version: FirmwareVersion
|
|
37
|
+
"""
|
|
38
|
+
Version of the firmware.
|
|
39
|
+
"""
|
|
40
|
+
|
|
41
|
+
is_modified: bool
|
|
42
|
+
"""
|
|
43
|
+
The device has hardware modifications.
|
|
44
|
+
"""
|
|
45
|
+
|
|
46
|
+
is_integrated: bool
|
|
47
|
+
"""
|
|
48
|
+
The device is an integrated product.
|
|
49
|
+
"""
|
|
50
|
+
|
|
51
|
+
@staticmethod
|
|
52
|
+
def zero_values() -> 'DeviceIdentity':
|
|
53
|
+
return DeviceIdentity(
|
|
54
|
+
device_id=0,
|
|
55
|
+
serial_number=0,
|
|
56
|
+
name="",
|
|
57
|
+
axis_count=0,
|
|
58
|
+
firmware_version=FirmwareVersion.zero_values(),
|
|
59
|
+
is_modified=False,
|
|
60
|
+
is_integrated=False,
|
|
61
|
+
)
|
|
62
|
+
|
|
63
|
+
@staticmethod
|
|
64
|
+
def from_binary(data_bytes: bytes) -> 'DeviceIdentity':
|
|
65
|
+
"""" Deserialize a binary representation of this class. """
|
|
66
|
+
data = zaber_bson.loads(data_bytes) # type: Dict[str, Any]
|
|
67
|
+
return DeviceIdentity.from_dict(data)
|
|
68
|
+
|
|
69
|
+
def to_binary(self) -> bytes:
|
|
70
|
+
"""" Serialize this class to a binary representation. """
|
|
71
|
+
self.validate()
|
|
72
|
+
return zaber_bson.dumps(self.to_dict()) # type: ignore
|
|
73
|
+
|
|
74
|
+
def to_dict(self) -> Dict[str, Any]:
|
|
75
|
+
return {
|
|
76
|
+
'deviceId': int(self.device_id),
|
|
77
|
+
'serialNumber': int(self.serial_number),
|
|
78
|
+
'name': str(self.name or ''),
|
|
79
|
+
'axisCount': int(self.axis_count),
|
|
80
|
+
'firmwareVersion': self.firmware_version.to_dict(),
|
|
81
|
+
'isModified': bool(self.is_modified),
|
|
82
|
+
'isIntegrated': bool(self.is_integrated),
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
@staticmethod
|
|
86
|
+
def from_dict(data: Dict[str, Any]) -> 'DeviceIdentity':
|
|
87
|
+
return DeviceIdentity(
|
|
88
|
+
device_id=data.get('deviceId'), # type: ignore
|
|
89
|
+
serial_number=data.get('serialNumber'), # type: ignore
|
|
90
|
+
name=data.get('name'), # type: ignore
|
|
91
|
+
axis_count=data.get('axisCount'), # type: ignore
|
|
92
|
+
firmware_version=FirmwareVersion.from_dict(data.get('firmwareVersion')), # type: ignore
|
|
93
|
+
is_modified=data.get('isModified'), # type: ignore
|
|
94
|
+
is_integrated=data.get('isIntegrated'), # type: ignore
|
|
95
|
+
)
|
|
96
|
+
|
|
97
|
+
def validate(self) -> None:
|
|
98
|
+
"""" Validates the properties of the instance. """
|
|
99
|
+
if self.device_id is None:
|
|
100
|
+
raise ValueError(f'Property "DeviceId" of "DeviceIdentity" is None.')
|
|
101
|
+
|
|
102
|
+
if not isinstance(self.device_id, (int, float, decimal.Decimal)):
|
|
103
|
+
raise ValueError(f'Property "DeviceId" of "DeviceIdentity" is not a number.')
|
|
104
|
+
|
|
105
|
+
if int(self.device_id) != self.device_id:
|
|
106
|
+
raise ValueError(f'Property "DeviceId" of "DeviceIdentity" is not integer value.')
|
|
107
|
+
|
|
108
|
+
if self.serial_number is None:
|
|
109
|
+
raise ValueError(f'Property "SerialNumber" of "DeviceIdentity" is None.')
|
|
110
|
+
|
|
111
|
+
if not isinstance(self.serial_number, (int, float, decimal.Decimal)):
|
|
112
|
+
raise ValueError(f'Property "SerialNumber" of "DeviceIdentity" is not a number.')
|
|
113
|
+
|
|
114
|
+
if int(self.serial_number) != self.serial_number:
|
|
115
|
+
raise ValueError(f'Property "SerialNumber" of "DeviceIdentity" is not integer value.')
|
|
116
|
+
|
|
117
|
+
if self.name is not None:
|
|
118
|
+
if not isinstance(self.name, str):
|
|
119
|
+
raise ValueError(f'Property "Name" of "DeviceIdentity" is not a string.')
|
|
120
|
+
|
|
121
|
+
if self.axis_count is None:
|
|
122
|
+
raise ValueError(f'Property "AxisCount" of "DeviceIdentity" is None.')
|
|
123
|
+
|
|
124
|
+
if not isinstance(self.axis_count, (int, float, decimal.Decimal)):
|
|
125
|
+
raise ValueError(f'Property "AxisCount" of "DeviceIdentity" is not a number.')
|
|
126
|
+
|
|
127
|
+
if int(self.axis_count) != self.axis_count:
|
|
128
|
+
raise ValueError(f'Property "AxisCount" of "DeviceIdentity" is not integer value.')
|
|
129
|
+
|
|
130
|
+
if self.firmware_version is None:
|
|
131
|
+
raise ValueError(f'Property "FirmwareVersion" of "DeviceIdentity" is None.')
|
|
132
|
+
|
|
133
|
+
if not isinstance(self.firmware_version, FirmwareVersion):
|
|
134
|
+
raise ValueError(f'Property "FirmwareVersion" of "DeviceIdentity" is not an instance of "FirmwareVersion".')
|
|
135
|
+
|
|
136
|
+
self.firmware_version.validate()
|
|
@@ -1,108 +1,108 @@
|
|
|
1
|
-
# This file is generated. Do not modify by hand.
|
|
2
|
-
# pylint: disable=line-too-long, unused-argument, f-string-without-interpolation, too-many-branches, too-many-statements, unnecessary-pass
|
|
3
|
-
from dataclasses import dataclass
|
|
4
|
-
from typing import Any, Dict
|
|
5
|
-
import decimal
|
|
6
|
-
import zaber_bson
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
@dataclass
|
|
10
|
-
class DeviceIOInfo:
|
|
11
|
-
"""
|
|
12
|
-
Class representing information on the I/O channels of the device.
|
|
13
|
-
"""
|
|
14
|
-
|
|
15
|
-
number_analog_outputs: int
|
|
16
|
-
"""
|
|
17
|
-
Number of analog output channels.
|
|
18
|
-
"""
|
|
19
|
-
|
|
20
|
-
number_analog_inputs: int
|
|
21
|
-
"""
|
|
22
|
-
Number of analog input channels.
|
|
23
|
-
"""
|
|
24
|
-
|
|
25
|
-
number_digital_outputs: int
|
|
26
|
-
"""
|
|
27
|
-
Number of digital output channels.
|
|
28
|
-
"""
|
|
29
|
-
|
|
30
|
-
number_digital_inputs: int
|
|
31
|
-
"""
|
|
32
|
-
Number of digital input channels.
|
|
33
|
-
"""
|
|
34
|
-
|
|
35
|
-
@staticmethod
|
|
36
|
-
def zero_values() -> 'DeviceIOInfo':
|
|
37
|
-
return DeviceIOInfo(
|
|
38
|
-
number_analog_outputs=0,
|
|
39
|
-
number_analog_inputs=0,
|
|
40
|
-
number_digital_outputs=0,
|
|
41
|
-
number_digital_inputs=0,
|
|
42
|
-
)
|
|
43
|
-
|
|
44
|
-
@staticmethod
|
|
45
|
-
def from_binary(data_bytes: bytes) -> 'DeviceIOInfo':
|
|
46
|
-
"""" Deserialize a binary representation of this class. """
|
|
47
|
-
data = zaber_bson.loads(data_bytes) # type: Dict[str, Any]
|
|
48
|
-
return DeviceIOInfo.from_dict(data)
|
|
49
|
-
|
|
50
|
-
def to_binary(self) -> bytes:
|
|
51
|
-
"""" Serialize this class to a binary representation. """
|
|
52
|
-
self.validate()
|
|
53
|
-
return zaber_bson.dumps(self.to_dict()) # type: ignore
|
|
54
|
-
|
|
55
|
-
def to_dict(self) -> Dict[str, Any]:
|
|
56
|
-
return {
|
|
57
|
-
'numberAnalogOutputs': int(self.number_analog_outputs),
|
|
58
|
-
'numberAnalogInputs': int(self.number_analog_inputs),
|
|
59
|
-
'numberDigitalOutputs': int(self.number_digital_outputs),
|
|
60
|
-
'numberDigitalInputs': int(self.number_digital_inputs),
|
|
61
|
-
}
|
|
62
|
-
|
|
63
|
-
@staticmethod
|
|
64
|
-
def from_dict(data: Dict[str, Any]) -> 'DeviceIOInfo':
|
|
65
|
-
return DeviceIOInfo(
|
|
66
|
-
number_analog_outputs=data.get('numberAnalogOutputs'), # type: ignore
|
|
67
|
-
number_analog_inputs=data.get('numberAnalogInputs'), # type: ignore
|
|
68
|
-
number_digital_outputs=data.get('numberDigitalOutputs'), # type: ignore
|
|
69
|
-
number_digital_inputs=data.get('numberDigitalInputs'), # type: ignore
|
|
70
|
-
)
|
|
71
|
-
|
|
72
|
-
def validate(self) -> None:
|
|
73
|
-
"""" Validates the properties of the instance. """
|
|
74
|
-
if self.number_analog_outputs is None:
|
|
75
|
-
raise ValueError(f'Property "NumberAnalogOutputs" of "DeviceIOInfo" is None.')
|
|
76
|
-
|
|
77
|
-
if not isinstance(self.number_analog_outputs, (int, float, decimal.Decimal)):
|
|
78
|
-
raise ValueError(f'Property "NumberAnalogOutputs" of "DeviceIOInfo" is not a number.')
|
|
79
|
-
|
|
80
|
-
if int(self.number_analog_outputs) != self.number_analog_outputs:
|
|
81
|
-
raise ValueError(f'Property "NumberAnalogOutputs" of "DeviceIOInfo" is not integer value.')
|
|
82
|
-
|
|
83
|
-
if self.number_analog_inputs is None:
|
|
84
|
-
raise ValueError(f'Property "NumberAnalogInputs" of "DeviceIOInfo" is None.')
|
|
85
|
-
|
|
86
|
-
if not isinstance(self.number_analog_inputs, (int, float, decimal.Decimal)):
|
|
87
|
-
raise ValueError(f'Property "NumberAnalogInputs" of "DeviceIOInfo" is not a number.')
|
|
88
|
-
|
|
89
|
-
if int(self.number_analog_inputs) != self.number_analog_inputs:
|
|
90
|
-
raise ValueError(f'Property "NumberAnalogInputs" of "DeviceIOInfo" is not integer value.')
|
|
91
|
-
|
|
92
|
-
if self.number_digital_outputs is None:
|
|
93
|
-
raise ValueError(f'Property "NumberDigitalOutputs" of "DeviceIOInfo" is None.')
|
|
94
|
-
|
|
95
|
-
if not isinstance(self.number_digital_outputs, (int, float, decimal.Decimal)):
|
|
96
|
-
raise ValueError(f'Property "NumberDigitalOutputs" of "DeviceIOInfo" is not a number.')
|
|
97
|
-
|
|
98
|
-
if int(self.number_digital_outputs) != self.number_digital_outputs:
|
|
99
|
-
raise ValueError(f'Property "NumberDigitalOutputs" of "DeviceIOInfo" is not integer value.')
|
|
100
|
-
|
|
101
|
-
if self.number_digital_inputs is None:
|
|
102
|
-
raise ValueError(f'Property "NumberDigitalInputs" of "DeviceIOInfo" is None.')
|
|
103
|
-
|
|
104
|
-
if not isinstance(self.number_digital_inputs, (int, float, decimal.Decimal)):
|
|
105
|
-
raise ValueError(f'Property "NumberDigitalInputs" of "DeviceIOInfo" is not a number.')
|
|
106
|
-
|
|
107
|
-
if int(self.number_digital_inputs) != self.number_digital_inputs:
|
|
108
|
-
raise ValueError(f'Property "NumberDigitalInputs" of "DeviceIOInfo" is not integer value.')
|
|
1
|
+
# This file is generated. Do not modify by hand.
|
|
2
|
+
# pylint: disable=line-too-long, unused-argument, f-string-without-interpolation, too-many-branches, too-many-statements, unnecessary-pass
|
|
3
|
+
from dataclasses import dataclass
|
|
4
|
+
from typing import Any, Dict
|
|
5
|
+
import decimal
|
|
6
|
+
import zaber_bson
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
@dataclass
|
|
10
|
+
class DeviceIOInfo:
|
|
11
|
+
"""
|
|
12
|
+
Class representing information on the I/O channels of the device.
|
|
13
|
+
"""
|
|
14
|
+
|
|
15
|
+
number_analog_outputs: int
|
|
16
|
+
"""
|
|
17
|
+
Number of analog output channels.
|
|
18
|
+
"""
|
|
19
|
+
|
|
20
|
+
number_analog_inputs: int
|
|
21
|
+
"""
|
|
22
|
+
Number of analog input channels.
|
|
23
|
+
"""
|
|
24
|
+
|
|
25
|
+
number_digital_outputs: int
|
|
26
|
+
"""
|
|
27
|
+
Number of digital output channels.
|
|
28
|
+
"""
|
|
29
|
+
|
|
30
|
+
number_digital_inputs: int
|
|
31
|
+
"""
|
|
32
|
+
Number of digital input channels.
|
|
33
|
+
"""
|
|
34
|
+
|
|
35
|
+
@staticmethod
|
|
36
|
+
def zero_values() -> 'DeviceIOInfo':
|
|
37
|
+
return DeviceIOInfo(
|
|
38
|
+
number_analog_outputs=0,
|
|
39
|
+
number_analog_inputs=0,
|
|
40
|
+
number_digital_outputs=0,
|
|
41
|
+
number_digital_inputs=0,
|
|
42
|
+
)
|
|
43
|
+
|
|
44
|
+
@staticmethod
|
|
45
|
+
def from_binary(data_bytes: bytes) -> 'DeviceIOInfo':
|
|
46
|
+
"""" Deserialize a binary representation of this class. """
|
|
47
|
+
data = zaber_bson.loads(data_bytes) # type: Dict[str, Any]
|
|
48
|
+
return DeviceIOInfo.from_dict(data)
|
|
49
|
+
|
|
50
|
+
def to_binary(self) -> bytes:
|
|
51
|
+
"""" Serialize this class to a binary representation. """
|
|
52
|
+
self.validate()
|
|
53
|
+
return zaber_bson.dumps(self.to_dict()) # type: ignore
|
|
54
|
+
|
|
55
|
+
def to_dict(self) -> Dict[str, Any]:
|
|
56
|
+
return {
|
|
57
|
+
'numberAnalogOutputs': int(self.number_analog_outputs),
|
|
58
|
+
'numberAnalogInputs': int(self.number_analog_inputs),
|
|
59
|
+
'numberDigitalOutputs': int(self.number_digital_outputs),
|
|
60
|
+
'numberDigitalInputs': int(self.number_digital_inputs),
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
@staticmethod
|
|
64
|
+
def from_dict(data: Dict[str, Any]) -> 'DeviceIOInfo':
|
|
65
|
+
return DeviceIOInfo(
|
|
66
|
+
number_analog_outputs=data.get('numberAnalogOutputs'), # type: ignore
|
|
67
|
+
number_analog_inputs=data.get('numberAnalogInputs'), # type: ignore
|
|
68
|
+
number_digital_outputs=data.get('numberDigitalOutputs'), # type: ignore
|
|
69
|
+
number_digital_inputs=data.get('numberDigitalInputs'), # type: ignore
|
|
70
|
+
)
|
|
71
|
+
|
|
72
|
+
def validate(self) -> None:
|
|
73
|
+
"""" Validates the properties of the instance. """
|
|
74
|
+
if self.number_analog_outputs is None:
|
|
75
|
+
raise ValueError(f'Property "NumberAnalogOutputs" of "DeviceIOInfo" is None.')
|
|
76
|
+
|
|
77
|
+
if not isinstance(self.number_analog_outputs, (int, float, decimal.Decimal)):
|
|
78
|
+
raise ValueError(f'Property "NumberAnalogOutputs" of "DeviceIOInfo" is not a number.')
|
|
79
|
+
|
|
80
|
+
if int(self.number_analog_outputs) != self.number_analog_outputs:
|
|
81
|
+
raise ValueError(f'Property "NumberAnalogOutputs" of "DeviceIOInfo" is not integer value.')
|
|
82
|
+
|
|
83
|
+
if self.number_analog_inputs is None:
|
|
84
|
+
raise ValueError(f'Property "NumberAnalogInputs" of "DeviceIOInfo" is None.')
|
|
85
|
+
|
|
86
|
+
if not isinstance(self.number_analog_inputs, (int, float, decimal.Decimal)):
|
|
87
|
+
raise ValueError(f'Property "NumberAnalogInputs" of "DeviceIOInfo" is not a number.')
|
|
88
|
+
|
|
89
|
+
if int(self.number_analog_inputs) != self.number_analog_inputs:
|
|
90
|
+
raise ValueError(f'Property "NumberAnalogInputs" of "DeviceIOInfo" is not integer value.')
|
|
91
|
+
|
|
92
|
+
if self.number_digital_outputs is None:
|
|
93
|
+
raise ValueError(f'Property "NumberDigitalOutputs" of "DeviceIOInfo" is None.')
|
|
94
|
+
|
|
95
|
+
if not isinstance(self.number_digital_outputs, (int, float, decimal.Decimal)):
|
|
96
|
+
raise ValueError(f'Property "NumberDigitalOutputs" of "DeviceIOInfo" is not a number.')
|
|
97
|
+
|
|
98
|
+
if int(self.number_digital_outputs) != self.number_digital_outputs:
|
|
99
|
+
raise ValueError(f'Property "NumberDigitalOutputs" of "DeviceIOInfo" is not integer value.')
|
|
100
|
+
|
|
101
|
+
if self.number_digital_inputs is None:
|
|
102
|
+
raise ValueError(f'Property "NumberDigitalInputs" of "DeviceIOInfo" is None.')
|
|
103
|
+
|
|
104
|
+
if not isinstance(self.number_digital_inputs, (int, float, decimal.Decimal)):
|
|
105
|
+
raise ValueError(f'Property "NumberDigitalInputs" of "DeviceIOInfo" is not a number.')
|
|
106
|
+
|
|
107
|
+
if int(self.number_digital_inputs) != self.number_digital_inputs:
|
|
108
|
+
raise ValueError(f'Property "NumberDigitalInputs" of "DeviceIOInfo" is not integer value.')
|