zaber-motion 7.13.0__py3-none-win32.whl → 7.15.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 +96 -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 +163 -139
- zaber_motion/microscopy/illuminator_channel.py +629 -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.15.0.dist-info}/LICENSE.txt +2119 -2119
- {zaber_motion-7.13.0.dist-info → zaber_motion-7.15.0.dist-info}/METADATA +1 -1
- zaber_motion-7.15.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.15.0.dist-info}/WHEEL +0 -0
- {zaber_motion-7.13.0.dist-info → zaber_motion-7.15.0.dist-info}/top_level.txt +0 -0
|
@@ -1,240 +1,240 @@
|
|
|
1
|
-
# ===== THIS FILE IS GENERATED FROM A TEMPLATE ===== #
|
|
2
|
-
# ============== DO NOT EDIT DIRECTLY ============== #
|
|
3
|
-
from typing import List
|
|
4
|
-
from ..dto import requests as dto
|
|
5
|
-
from ..call import call_sync
|
|
6
|
-
from ..units import UnitsAndLiterals, Units, TimeUnits, FrequencyUnits
|
|
7
|
-
from ..dto.ascii.io_port_type import IoPortType
|
|
8
|
-
from ..dto.ascii.oscilloscope_data_source import OscilloscopeDataSource
|
|
9
|
-
from ..dto.ascii.oscilloscope_capture_properties import OscilloscopeCaptureProperties
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
class OscilloscopeData:
|
|
13
|
-
"""
|
|
14
|
-
Contains a block of contiguous recorded data for one channel of the device's oscilloscope.
|
|
15
|
-
"""
|
|
16
|
-
|
|
17
|
-
@property
|
|
18
|
-
def data_id(self) -> int:
|
|
19
|
-
"""
|
|
20
|
-
Unique ID for this block of recorded data.
|
|
21
|
-
"""
|
|
22
|
-
return self._data_id
|
|
23
|
-
|
|
24
|
-
@property
|
|
25
|
-
def data_source(self) -> OscilloscopeDataSource:
|
|
26
|
-
"""
|
|
27
|
-
Indicates whether the data came from a setting or an I/O pin.
|
|
28
|
-
"""
|
|
29
|
-
return self.__retrieve_properties().data_source
|
|
30
|
-
|
|
31
|
-
@property
|
|
32
|
-
def setting(self) -> str:
|
|
33
|
-
"""
|
|
34
|
-
The name of the recorded setting.
|
|
35
|
-
"""
|
|
36
|
-
return self.__retrieve_properties().setting
|
|
37
|
-
|
|
38
|
-
@property
|
|
39
|
-
def axis_number(self) -> int:
|
|
40
|
-
"""
|
|
41
|
-
The number of the axis the data was recorded from, or 0 for the controller.
|
|
42
|
-
"""
|
|
43
|
-
return self.__retrieve_properties().axis_number
|
|
44
|
-
|
|
45
|
-
@property
|
|
46
|
-
def io_type(self) -> IoPortType:
|
|
47
|
-
"""
|
|
48
|
-
Which kind of I/O port data was recorded from.
|
|
49
|
-
"""
|
|
50
|
-
return self.__retrieve_properties().io_type
|
|
51
|
-
|
|
52
|
-
@property
|
|
53
|
-
def io_channel(self) -> int:
|
|
54
|
-
"""
|
|
55
|
-
Which I/O pin within the port was recorded.
|
|
56
|
-
"""
|
|
57
|
-
return self.__retrieve_properties().io_channel
|
|
58
|
-
|
|
59
|
-
def __init__(self, data_id: int):
|
|
60
|
-
self._data_id: int = data_id
|
|
61
|
-
|
|
62
|
-
def get_timebase(
|
|
63
|
-
self,
|
|
64
|
-
unit: TimeUnits = Units.NATIVE
|
|
65
|
-
) -> float:
|
|
66
|
-
"""
|
|
67
|
-
Get the sample interval that this data was recorded with.
|
|
68
|
-
|
|
69
|
-
Args:
|
|
70
|
-
unit: Unit of measure to represent the timebase in.
|
|
71
|
-
|
|
72
|
-
Returns:
|
|
73
|
-
The timebase setting at the time the data was recorded.
|
|
74
|
-
"""
|
|
75
|
-
request = dto.OscilloscopeDataGetRequest(
|
|
76
|
-
data_id=self.data_id,
|
|
77
|
-
unit=unit,
|
|
78
|
-
)
|
|
79
|
-
response = call_sync(
|
|
80
|
-
"oscilloscopedata/get_timebase",
|
|
81
|
-
request,
|
|
82
|
-
dto.DoubleResponse.from_binary)
|
|
83
|
-
return response.value
|
|
84
|
-
|
|
85
|
-
def get_frequency(
|
|
86
|
-
self,
|
|
87
|
-
unit: FrequencyUnits = Units.NATIVE
|
|
88
|
-
) -> float:
|
|
89
|
-
"""
|
|
90
|
-
Get the sampling frequency that this data was recorded with.
|
|
91
|
-
|
|
92
|
-
Args:
|
|
93
|
-
unit: Unit of measure to represent the frequency in.
|
|
94
|
-
|
|
95
|
-
Returns:
|
|
96
|
-
The frequency (inverse of the timebase setting) at the time the data was recorded.
|
|
97
|
-
"""
|
|
98
|
-
request = dto.OscilloscopeDataGetRequest(
|
|
99
|
-
data_id=self.data_id,
|
|
100
|
-
unit=unit,
|
|
101
|
-
)
|
|
102
|
-
response = call_sync(
|
|
103
|
-
"oscilloscopedata/get_frequency",
|
|
104
|
-
request,
|
|
105
|
-
dto.DoubleResponse.from_binary)
|
|
106
|
-
return response.value
|
|
107
|
-
|
|
108
|
-
def get_delay(
|
|
109
|
-
self,
|
|
110
|
-
unit: TimeUnits = Units.NATIVE
|
|
111
|
-
) -> float:
|
|
112
|
-
"""
|
|
113
|
-
Get the user-specified time period between receipt of the start command and the first data point.
|
|
114
|
-
Under some circumstances, the actual delay may be different - call GetSampleTime(0) to get the effective delay.
|
|
115
|
-
|
|
116
|
-
Args:
|
|
117
|
-
unit: Unit of measure to represent the delay in.
|
|
118
|
-
|
|
119
|
-
Returns:
|
|
120
|
-
The delay setting at the time the data was recorded.
|
|
121
|
-
"""
|
|
122
|
-
request = dto.OscilloscopeDataGetRequest(
|
|
123
|
-
data_id=self.data_id,
|
|
124
|
-
unit=unit,
|
|
125
|
-
)
|
|
126
|
-
response = call_sync(
|
|
127
|
-
"oscilloscopedata/get_delay",
|
|
128
|
-
request,
|
|
129
|
-
dto.DoubleResponse.from_binary)
|
|
130
|
-
return response.value
|
|
131
|
-
|
|
132
|
-
def get_sample_time(
|
|
133
|
-
self,
|
|
134
|
-
index: int,
|
|
135
|
-
unit: TimeUnits = Units.NATIVE
|
|
136
|
-
) -> float:
|
|
137
|
-
"""
|
|
138
|
-
Calculate the time a sample was recorded, relative to when the recording was triggered.
|
|
139
|
-
|
|
140
|
-
Args:
|
|
141
|
-
index: 0-based index of the sample to calculate the time of.
|
|
142
|
-
unit: Unit of measure to represent the calculated time in.
|
|
143
|
-
|
|
144
|
-
Returns:
|
|
145
|
-
The calculated time offset of the data sample at the given index.
|
|
146
|
-
"""
|
|
147
|
-
request = dto.OscilloscopeDataGetSampleTimeRequest(
|
|
148
|
-
data_id=self.data_id,
|
|
149
|
-
index=index,
|
|
150
|
-
unit=unit,
|
|
151
|
-
)
|
|
152
|
-
response = call_sync(
|
|
153
|
-
"oscilloscopedata/get_sample_time",
|
|
154
|
-
request,
|
|
155
|
-
dto.DoubleResponse.from_binary)
|
|
156
|
-
return response.value
|
|
157
|
-
|
|
158
|
-
def get_sample_times(
|
|
159
|
-
self,
|
|
160
|
-
unit: TimeUnits = Units.NATIVE
|
|
161
|
-
) -> List[float]:
|
|
162
|
-
"""
|
|
163
|
-
Calculate the time for all samples, relative to when the recording was triggered.
|
|
164
|
-
|
|
165
|
-
Args:
|
|
166
|
-
unit: Unit of measure to represent the calculated time in.
|
|
167
|
-
|
|
168
|
-
Returns:
|
|
169
|
-
The calculated time offsets of all data samples.
|
|
170
|
-
"""
|
|
171
|
-
request = dto.OscilloscopeDataGetSampleTimeRequest(
|
|
172
|
-
data_id=self.data_id,
|
|
173
|
-
unit=unit,
|
|
174
|
-
)
|
|
175
|
-
response = call_sync(
|
|
176
|
-
"oscilloscopedata/get_sample_times",
|
|
177
|
-
request,
|
|
178
|
-
dto.DoubleArrayResponse.from_binary)
|
|
179
|
-
return response.values
|
|
180
|
-
|
|
181
|
-
def get_data(
|
|
182
|
-
self,
|
|
183
|
-
unit: UnitsAndLiterals = Units.NATIVE
|
|
184
|
-
) -> List[float]:
|
|
185
|
-
"""
|
|
186
|
-
Get the recorded data as an array of doubles, with optional unit conversion.
|
|
187
|
-
Note that not all quantities can be unit converted.
|
|
188
|
-
For example, digital I/O channels and pure numbers such as device mode settings have no units.
|
|
189
|
-
|
|
190
|
-
Args:
|
|
191
|
-
unit: Unit of measure to convert the data to.
|
|
192
|
-
|
|
193
|
-
Returns:
|
|
194
|
-
The recorded data for one oscilloscope channel, converted to the units specified.
|
|
195
|
-
"""
|
|
196
|
-
request = dto.OscilloscopeDataGetRequest(
|
|
197
|
-
data_id=self.data_id,
|
|
198
|
-
unit=unit,
|
|
199
|
-
)
|
|
200
|
-
response = call_sync(
|
|
201
|
-
"oscilloscopedata/get_samples",
|
|
202
|
-
request,
|
|
203
|
-
dto.OscilloscopeDataGetSamplesResponse.from_binary)
|
|
204
|
-
return response.data
|
|
205
|
-
|
|
206
|
-
@staticmethod
|
|
207
|
-
def __free(
|
|
208
|
-
data_id: int
|
|
209
|
-
) -> None:
|
|
210
|
-
"""
|
|
211
|
-
Releases native resources of an oscilloscope data buffer.
|
|
212
|
-
|
|
213
|
-
Args:
|
|
214
|
-
data_id: The ID of the data buffer to delete.
|
|
215
|
-
"""
|
|
216
|
-
request = dto.OscilloscopeDataIdentifier(
|
|
217
|
-
data_id=data_id,
|
|
218
|
-
)
|
|
219
|
-
call_sync("oscilloscopedata/free", request)
|
|
220
|
-
|
|
221
|
-
def __retrieve_properties(
|
|
222
|
-
self
|
|
223
|
-
) -> OscilloscopeCaptureProperties:
|
|
224
|
-
"""
|
|
225
|
-
Returns recording properties.
|
|
226
|
-
|
|
227
|
-
Returns:
|
|
228
|
-
Capture properties.
|
|
229
|
-
"""
|
|
230
|
-
request = dto.OscilloscopeDataIdentifier(
|
|
231
|
-
data_id=self.data_id,
|
|
232
|
-
)
|
|
233
|
-
response = call_sync(
|
|
234
|
-
"oscilloscopedata/get_properties",
|
|
235
|
-
request,
|
|
236
|
-
OscilloscopeCaptureProperties.from_binary)
|
|
237
|
-
return response
|
|
238
|
-
|
|
239
|
-
def __del__(self) -> None:
|
|
240
|
-
OscilloscopeData.__free(self.data_id)
|
|
1
|
+
# ===== THIS FILE IS GENERATED FROM A TEMPLATE ===== #
|
|
2
|
+
# ============== DO NOT EDIT DIRECTLY ============== #
|
|
3
|
+
from typing import List
|
|
4
|
+
from ..dto import requests as dto
|
|
5
|
+
from ..call import call_sync
|
|
6
|
+
from ..units import UnitsAndLiterals, Units, TimeUnits, FrequencyUnits
|
|
7
|
+
from ..dto.ascii.io_port_type import IoPortType
|
|
8
|
+
from ..dto.ascii.oscilloscope_data_source import OscilloscopeDataSource
|
|
9
|
+
from ..dto.ascii.oscilloscope_capture_properties import OscilloscopeCaptureProperties
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
class OscilloscopeData:
|
|
13
|
+
"""
|
|
14
|
+
Contains a block of contiguous recorded data for one channel of the device's oscilloscope.
|
|
15
|
+
"""
|
|
16
|
+
|
|
17
|
+
@property
|
|
18
|
+
def data_id(self) -> int:
|
|
19
|
+
"""
|
|
20
|
+
Unique ID for this block of recorded data.
|
|
21
|
+
"""
|
|
22
|
+
return self._data_id
|
|
23
|
+
|
|
24
|
+
@property
|
|
25
|
+
def data_source(self) -> OscilloscopeDataSource:
|
|
26
|
+
"""
|
|
27
|
+
Indicates whether the data came from a setting or an I/O pin.
|
|
28
|
+
"""
|
|
29
|
+
return self.__retrieve_properties().data_source
|
|
30
|
+
|
|
31
|
+
@property
|
|
32
|
+
def setting(self) -> str:
|
|
33
|
+
"""
|
|
34
|
+
The name of the recorded setting.
|
|
35
|
+
"""
|
|
36
|
+
return self.__retrieve_properties().setting
|
|
37
|
+
|
|
38
|
+
@property
|
|
39
|
+
def axis_number(self) -> int:
|
|
40
|
+
"""
|
|
41
|
+
The number of the axis the data was recorded from, or 0 for the controller.
|
|
42
|
+
"""
|
|
43
|
+
return self.__retrieve_properties().axis_number
|
|
44
|
+
|
|
45
|
+
@property
|
|
46
|
+
def io_type(self) -> IoPortType:
|
|
47
|
+
"""
|
|
48
|
+
Which kind of I/O port data was recorded from.
|
|
49
|
+
"""
|
|
50
|
+
return self.__retrieve_properties().io_type
|
|
51
|
+
|
|
52
|
+
@property
|
|
53
|
+
def io_channel(self) -> int:
|
|
54
|
+
"""
|
|
55
|
+
Which I/O pin within the port was recorded.
|
|
56
|
+
"""
|
|
57
|
+
return self.__retrieve_properties().io_channel
|
|
58
|
+
|
|
59
|
+
def __init__(self, data_id: int):
|
|
60
|
+
self._data_id: int = data_id
|
|
61
|
+
|
|
62
|
+
def get_timebase(
|
|
63
|
+
self,
|
|
64
|
+
unit: TimeUnits = Units.NATIVE
|
|
65
|
+
) -> float:
|
|
66
|
+
"""
|
|
67
|
+
Get the sample interval that this data was recorded with.
|
|
68
|
+
|
|
69
|
+
Args:
|
|
70
|
+
unit: Unit of measure to represent the timebase in.
|
|
71
|
+
|
|
72
|
+
Returns:
|
|
73
|
+
The timebase setting at the time the data was recorded.
|
|
74
|
+
"""
|
|
75
|
+
request = dto.OscilloscopeDataGetRequest(
|
|
76
|
+
data_id=self.data_id,
|
|
77
|
+
unit=unit,
|
|
78
|
+
)
|
|
79
|
+
response = call_sync(
|
|
80
|
+
"oscilloscopedata/get_timebase",
|
|
81
|
+
request,
|
|
82
|
+
dto.DoubleResponse.from_binary)
|
|
83
|
+
return response.value
|
|
84
|
+
|
|
85
|
+
def get_frequency(
|
|
86
|
+
self,
|
|
87
|
+
unit: FrequencyUnits = Units.NATIVE
|
|
88
|
+
) -> float:
|
|
89
|
+
"""
|
|
90
|
+
Get the sampling frequency that this data was recorded with.
|
|
91
|
+
|
|
92
|
+
Args:
|
|
93
|
+
unit: Unit of measure to represent the frequency in.
|
|
94
|
+
|
|
95
|
+
Returns:
|
|
96
|
+
The frequency (inverse of the timebase setting) at the time the data was recorded.
|
|
97
|
+
"""
|
|
98
|
+
request = dto.OscilloscopeDataGetRequest(
|
|
99
|
+
data_id=self.data_id,
|
|
100
|
+
unit=unit,
|
|
101
|
+
)
|
|
102
|
+
response = call_sync(
|
|
103
|
+
"oscilloscopedata/get_frequency",
|
|
104
|
+
request,
|
|
105
|
+
dto.DoubleResponse.from_binary)
|
|
106
|
+
return response.value
|
|
107
|
+
|
|
108
|
+
def get_delay(
|
|
109
|
+
self,
|
|
110
|
+
unit: TimeUnits = Units.NATIVE
|
|
111
|
+
) -> float:
|
|
112
|
+
"""
|
|
113
|
+
Get the user-specified time period between receipt of the start command and the first data point.
|
|
114
|
+
Under some circumstances, the actual delay may be different - call GetSampleTime(0) to get the effective delay.
|
|
115
|
+
|
|
116
|
+
Args:
|
|
117
|
+
unit: Unit of measure to represent the delay in.
|
|
118
|
+
|
|
119
|
+
Returns:
|
|
120
|
+
The delay setting at the time the data was recorded.
|
|
121
|
+
"""
|
|
122
|
+
request = dto.OscilloscopeDataGetRequest(
|
|
123
|
+
data_id=self.data_id,
|
|
124
|
+
unit=unit,
|
|
125
|
+
)
|
|
126
|
+
response = call_sync(
|
|
127
|
+
"oscilloscopedata/get_delay",
|
|
128
|
+
request,
|
|
129
|
+
dto.DoubleResponse.from_binary)
|
|
130
|
+
return response.value
|
|
131
|
+
|
|
132
|
+
def get_sample_time(
|
|
133
|
+
self,
|
|
134
|
+
index: int,
|
|
135
|
+
unit: TimeUnits = Units.NATIVE
|
|
136
|
+
) -> float:
|
|
137
|
+
"""
|
|
138
|
+
Calculate the time a sample was recorded, relative to when the recording was triggered.
|
|
139
|
+
|
|
140
|
+
Args:
|
|
141
|
+
index: 0-based index of the sample to calculate the time of.
|
|
142
|
+
unit: Unit of measure to represent the calculated time in.
|
|
143
|
+
|
|
144
|
+
Returns:
|
|
145
|
+
The calculated time offset of the data sample at the given index.
|
|
146
|
+
"""
|
|
147
|
+
request = dto.OscilloscopeDataGetSampleTimeRequest(
|
|
148
|
+
data_id=self.data_id,
|
|
149
|
+
index=index,
|
|
150
|
+
unit=unit,
|
|
151
|
+
)
|
|
152
|
+
response = call_sync(
|
|
153
|
+
"oscilloscopedata/get_sample_time",
|
|
154
|
+
request,
|
|
155
|
+
dto.DoubleResponse.from_binary)
|
|
156
|
+
return response.value
|
|
157
|
+
|
|
158
|
+
def get_sample_times(
|
|
159
|
+
self,
|
|
160
|
+
unit: TimeUnits = Units.NATIVE
|
|
161
|
+
) -> List[float]:
|
|
162
|
+
"""
|
|
163
|
+
Calculate the time for all samples, relative to when the recording was triggered.
|
|
164
|
+
|
|
165
|
+
Args:
|
|
166
|
+
unit: Unit of measure to represent the calculated time in.
|
|
167
|
+
|
|
168
|
+
Returns:
|
|
169
|
+
The calculated time offsets of all data samples.
|
|
170
|
+
"""
|
|
171
|
+
request = dto.OscilloscopeDataGetSampleTimeRequest(
|
|
172
|
+
data_id=self.data_id,
|
|
173
|
+
unit=unit,
|
|
174
|
+
)
|
|
175
|
+
response = call_sync(
|
|
176
|
+
"oscilloscopedata/get_sample_times",
|
|
177
|
+
request,
|
|
178
|
+
dto.DoubleArrayResponse.from_binary)
|
|
179
|
+
return response.values
|
|
180
|
+
|
|
181
|
+
def get_data(
|
|
182
|
+
self,
|
|
183
|
+
unit: UnitsAndLiterals = Units.NATIVE
|
|
184
|
+
) -> List[float]:
|
|
185
|
+
"""
|
|
186
|
+
Get the recorded data as an array of doubles, with optional unit conversion.
|
|
187
|
+
Note that not all quantities can be unit converted.
|
|
188
|
+
For example, digital I/O channels and pure numbers such as device mode settings have no units.
|
|
189
|
+
|
|
190
|
+
Args:
|
|
191
|
+
unit: Unit of measure to convert the data to.
|
|
192
|
+
|
|
193
|
+
Returns:
|
|
194
|
+
The recorded data for one oscilloscope channel, converted to the units specified.
|
|
195
|
+
"""
|
|
196
|
+
request = dto.OscilloscopeDataGetRequest(
|
|
197
|
+
data_id=self.data_id,
|
|
198
|
+
unit=unit,
|
|
199
|
+
)
|
|
200
|
+
response = call_sync(
|
|
201
|
+
"oscilloscopedata/get_samples",
|
|
202
|
+
request,
|
|
203
|
+
dto.OscilloscopeDataGetSamplesResponse.from_binary)
|
|
204
|
+
return response.data
|
|
205
|
+
|
|
206
|
+
@staticmethod
|
|
207
|
+
def __free(
|
|
208
|
+
data_id: int
|
|
209
|
+
) -> None:
|
|
210
|
+
"""
|
|
211
|
+
Releases native resources of an oscilloscope data buffer.
|
|
212
|
+
|
|
213
|
+
Args:
|
|
214
|
+
data_id: The ID of the data buffer to delete.
|
|
215
|
+
"""
|
|
216
|
+
request = dto.OscilloscopeDataIdentifier(
|
|
217
|
+
data_id=data_id,
|
|
218
|
+
)
|
|
219
|
+
call_sync("oscilloscopedata/free", request)
|
|
220
|
+
|
|
221
|
+
def __retrieve_properties(
|
|
222
|
+
self
|
|
223
|
+
) -> OscilloscopeCaptureProperties:
|
|
224
|
+
"""
|
|
225
|
+
Returns recording properties.
|
|
226
|
+
|
|
227
|
+
Returns:
|
|
228
|
+
Capture properties.
|
|
229
|
+
"""
|
|
230
|
+
request = dto.OscilloscopeDataIdentifier(
|
|
231
|
+
data_id=self.data_id,
|
|
232
|
+
)
|
|
233
|
+
response = call_sync(
|
|
234
|
+
"oscilloscopedata/get_properties",
|
|
235
|
+
request,
|
|
236
|
+
OscilloscopeCaptureProperties.from_binary)
|
|
237
|
+
return response
|
|
238
|
+
|
|
239
|
+
def __del__(self) -> None:
|
|
240
|
+
OscilloscopeData.__free(self.data_id)
|