@zaber/motion 6.4.2 → 6.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (104) hide show
  1. package/dist/binding/wasm/zaber-motion-lib.wasm +0 -0
  2. package/dist/lib/ascii/device_io.d.ts +12 -4
  3. package/dist/lib/ascii/device_io.d.ts.map +1 -1
  4. package/dist/lib/ascii/device_io.js +24 -3
  5. package/dist/lib/ascii/device_io.js.map +1 -1
  6. package/dist/lib/ascii/oscilloscope_data.d.ts +3 -1
  7. package/dist/lib/ascii/oscilloscope_data.d.ts.map +1 -1
  8. package/dist/lib/ascii/oscilloscope_data.js +3 -1
  9. package/dist/lib/ascii/oscilloscope_data.js.map +1 -1
  10. package/dist/lib/index.d.ts +1 -0
  11. package/dist/lib/index.d.ts.map +1 -1
  12. package/dist/lib/index.js +1 -0
  13. package/dist/lib/index.js.map +1 -1
  14. package/dist/lib/library.js +1 -1
  15. package/dist/lib/library.js.map +1 -1
  16. package/dist/lib/microscopy/autofocus.d.ts +109 -0
  17. package/dist/lib/microscopy/autofocus.d.ts.map +1 -0
  18. package/dist/lib/microscopy/autofocus.js +333 -0
  19. package/dist/lib/microscopy/autofocus.js.map +1 -0
  20. package/dist/lib/microscopy/autofocus_status.d.ts +20 -0
  21. package/dist/lib/microscopy/autofocus_status.d.ts.map +1 -0
  22. package/dist/lib/microscopy/autofocus_status.js +27 -0
  23. package/dist/lib/microscopy/autofocus_status.js.map +1 -0
  24. package/dist/lib/microscopy/index.d.ts +5 -0
  25. package/dist/lib/microscopy/index.d.ts.map +1 -1
  26. package/dist/lib/microscopy/index.js +5 -0
  27. package/dist/lib/microscopy/index.js.map +1 -1
  28. package/dist/lib/microscopy/microscope.d.ts +9 -1
  29. package/dist/lib/microscopy/microscope.d.ts.map +1 -1
  30. package/dist/lib/microscopy/microscope.js +14 -4
  31. package/dist/lib/microscopy/microscope.js.map +1 -1
  32. package/dist/lib/microscopy/microscope_config.d.ts +4 -0
  33. package/dist/lib/microscopy/microscope_config.d.ts.map +1 -1
  34. package/dist/lib/microscopy/microscope_config.js +2 -0
  35. package/dist/lib/microscopy/microscope_config.js.map +1 -1
  36. package/dist/lib/microscopy/objective_changer.d.ts +2 -0
  37. package/dist/lib/microscopy/objective_changer.d.ts.map +1 -1
  38. package/dist/lib/microscopy/objective_changer.js +2 -0
  39. package/dist/lib/microscopy/objective_changer.js.map +1 -1
  40. package/dist/lib/microscopy/third_party_components.d.ts +16 -0
  41. package/dist/lib/microscopy/third_party_components.d.ts.map +1 -0
  42. package/dist/lib/microscopy/third_party_components.js +25 -0
  43. package/dist/lib/microscopy/third_party_components.js.map +1 -0
  44. package/dist/lib/microscopy/wdi_autofocus_provider.d.ts +77 -0
  45. package/dist/lib/microscopy/wdi_autofocus_provider.d.ts.map +1 -0
  46. package/dist/lib/microscopy/wdi_autofocus_provider.js +190 -0
  47. package/dist/lib/microscopy/wdi_autofocus_provider.js.map +1 -0
  48. package/dist/lib/microscopy/wdi_autofocus_provider_status.d.ts +20 -0
  49. package/dist/lib/microscopy/wdi_autofocus_provider_status.d.ts.map +1 -0
  50. package/dist/lib/microscopy/wdi_autofocus_provider_status.js +27 -0
  51. package/dist/lib/microscopy/wdi_autofocus_provider_status.js.map +1 -0
  52. package/dist/lib/named_parameter.d.ts +20 -0
  53. package/dist/lib/named_parameter.d.ts.map +1 -0
  54. package/dist/lib/named_parameter.js +27 -0
  55. package/dist/lib/named_parameter.js.map +1 -0
  56. package/dist/lib/requests/autofocus_focus_request.d.ts +16 -0
  57. package/dist/lib/requests/autofocus_focus_request.d.ts.map +1 -0
  58. package/dist/lib/requests/autofocus_focus_request.js +37 -0
  59. package/dist/lib/requests/autofocus_focus_request.js.map +1 -0
  60. package/dist/lib/requests/autofocus_get_objective_params_request.d.ts +15 -0
  61. package/dist/lib/requests/autofocus_get_objective_params_request.d.ts.map +1 -0
  62. package/dist/lib/requests/autofocus_get_objective_params_request.js +35 -0
  63. package/dist/lib/requests/autofocus_get_objective_params_request.js.map +1 -0
  64. package/dist/lib/requests/autofocus_get_objective_params_response.d.ts +11 -0
  65. package/dist/lib/requests/autofocus_get_objective_params_response.d.ts.map +1 -0
  66. package/dist/lib/requests/autofocus_get_objective_params_response.js +26 -0
  67. package/dist/lib/requests/autofocus_get_objective_params_response.js.map +1 -0
  68. package/dist/lib/requests/autofocus_get_status_response.d.ts +11 -0
  69. package/dist/lib/requests/autofocus_get_status_response.d.ts.map +1 -0
  70. package/dist/lib/requests/autofocus_get_status_response.js +25 -0
  71. package/dist/lib/requests/autofocus_get_status_response.js.map +1 -0
  72. package/dist/lib/requests/autofocus_set_objective_params_request.d.ts +17 -0
  73. package/dist/lib/requests/autofocus_set_objective_params_request.d.ts.map +1 -0
  74. package/dist/lib/requests/autofocus_set_objective_params_request.js +39 -0
  75. package/dist/lib/requests/autofocus_set_objective_params_request.js.map +1 -0
  76. package/dist/lib/requests/device_set_lowpass_filter_request.d.ts +15 -0
  77. package/dist/lib/requests/device_set_lowpass_filter_request.d.ts.map +1 -0
  78. package/dist/lib/requests/device_set_lowpass_filter_request.js +34 -0
  79. package/dist/lib/requests/device_set_lowpass_filter_request.js.map +1 -0
  80. package/dist/lib/requests/empty_autofocus_request.d.ts +14 -0
  81. package/dist/lib/requests/empty_autofocus_request.d.ts.map +1 -0
  82. package/dist/lib/requests/empty_autofocus_request.js +33 -0
  83. package/dist/lib/requests/empty_autofocus_request.js.map +1 -0
  84. package/dist/lib/requests/index.d.ts +10 -0
  85. package/dist/lib/requests/index.d.ts.map +1 -1
  86. package/dist/lib/requests/index.js +10 -0
  87. package/dist/lib/requests/index.js.map +1 -1
  88. package/dist/lib/requests/microscope_find_request.d.ts +12 -0
  89. package/dist/lib/requests/microscope_find_request.d.ts.map +1 -0
  90. package/dist/lib/requests/microscope_find_request.js +28 -0
  91. package/dist/lib/requests/microscope_find_request.js.map +1 -0
  92. package/dist/lib/requests/microscope_init_request.d.ts +2 -0
  93. package/dist/lib/requests/microscope_init_request.d.ts.map +1 -1
  94. package/dist/lib/requests/microscope_init_request.js +3 -0
  95. package/dist/lib/requests/microscope_init_request.js.map +1 -1
  96. package/dist/lib/requests/wdi_generic_request.d.ts +16 -0
  97. package/dist/lib/requests/wdi_generic_request.d.ts.map +1 -0
  98. package/dist/lib/requests/wdi_generic_request.js +38 -0
  99. package/dist/lib/requests/wdi_generic_request.js.map +1 -0
  100. package/dist/lib/requests/wdi_get_status_response.d.ts +11 -0
  101. package/dist/lib/requests/wdi_get_status_response.d.ts.map +1 -0
  102. package/dist/lib/requests/wdi_get_status_response.js +25 -0
  103. package/dist/lib/requests/wdi_get_status_response.js.map +1 -0
  104. package/package.json +2 -1
@@ -1,5 +1,5 @@
1
1
  import { Device } from './device';
2
- import { Native, Time } from '../units';
2
+ import { Native, Time, Frequency } from '../units';
3
3
  import { DeviceIOInfo } from './device_io_info';
4
4
  import { DigitalOutputAction } from './digital_output_action';
5
5
  import { IoPortType } from './io_port_type';
@@ -50,7 +50,7 @@ export declare class DeviceIO {
50
50
  /**
51
51
  * Returns the current value of the specified analog input channel.
52
52
  * @param channelNumber Channel number starting at 1.
53
- * @returns A measurementsof the voltage present on the input channel.
53
+ * @returns A measurement of the voltage present on the input channel.
54
54
  */
55
55
  getAnalogInput(channelNumber: number): Promise<number>;
56
56
  /**
@@ -71,12 +71,12 @@ export declare class DeviceIO {
71
71
  getAllDigitalOutputs(): Promise<boolean[]>;
72
72
  /**
73
73
  * Returns the current values of all analog input channels.
74
- * @returns Measurements of the voltage present on the input channels.
74
+ * @returns Measurements of the voltages present on the input channels.
75
75
  */
76
76
  getAllAnalogInputs(): Promise<number[]>;
77
77
  /**
78
78
  * Returns the current values of all analog output channels.
79
- * @returns Measurements of voltage that the output channels are conducting.
79
+ * @returns Measurements of voltage that the output channels are conducting.
80
80
  */
81
81
  getAllAnalogOutputs(): Promise<number[]>;
82
82
  /**
@@ -139,6 +139,14 @@ export declare class DeviceIO {
139
139
  * @param [unit=Units.NATIVE] Units of time.
140
140
  */
141
141
  setAllAnalogOutputsSchedule(values: number[], futureValues: number[], delay: number, unit?: Time | Native): Promise<void>;
142
+ /**
143
+ * Sets the cutoff frequency of the low-pass filter for the specified analog input channel.
144
+ * Set the frequency to 0 to disable the filter.
145
+ * @param channelNumber Channel number starting at 1.
146
+ * @param cutoffFrequency Cutoff frequency of the low-pass filter.
147
+ * @param [unit=Units.NATIVE] Units of frequency.
148
+ */
149
+ setAnalogInputLowpassFilter(channelNumber: number, cutoffFrequency: number, unit?: Frequency | Native): Promise<void>;
142
150
  /**
143
151
  * Cancels a scheduled digital output action.
144
152
  * Requires at least Firmware 7.37.
@@ -1 +1 @@
1
- {"version":3,"file":"device_io.d.ts","sourceRoot":"","sources":["../../../src/ascii/device_io.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"device_io.d.ts","sourceRoot":"","sources":["../../../src/ascii/device_io.ts"],"names":[],"mappings":"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"}
@@ -151,7 +151,7 @@ class DeviceIO {
151
151
  /**
152
152
  * Returns the current value of the specified analog input channel.
153
153
  * @param channelNumber Channel number starting at 1.
154
- * @returns A measurementsof the voltage present on the input channel.
154
+ * @returns A measurement of the voltage present on the input channel.
155
155
  */
156
156
  async getAnalogInput(channelNumber) {
157
157
  const request = {
@@ -222,7 +222,7 @@ class DeviceIO {
222
222
  }
223
223
  /**
224
224
  * Returns the current values of all analog input channels.
225
- * @returns Measurements of the voltage present on the input channels.
225
+ * @returns Measurements of the voltages present on the input channels.
226
226
  */
227
227
  async getAllAnalogInputs() {
228
228
  const request = {
@@ -239,7 +239,7 @@ class DeviceIO {
239
239
  }
240
240
  /**
241
241
  * Returns the current values of all analog output channels.
242
- * @returns Measurements of voltage that the output channels are conducting.
242
+ * @returns Measurements of voltage that the output channels are conducting.
243
243
  */
244
244
  async getAllAnalogOutputs() {
245
245
  const request = {
@@ -430,6 +430,27 @@ class DeviceIO {
430
430
  };
431
431
  await gateway.callAsync('device/set_all_analog_outputs_schedule', request);
432
432
  }
433
+ /**
434
+ * Sets the cutoff frequency of the low-pass filter for the specified analog input channel.
435
+ * Set the frequency to 0 to disable the filter.
436
+ * @param channelNumber Channel number starting at 1.
437
+ * @param cutoffFrequency Cutoff frequency of the low-pass filter.
438
+ * @param [unit=Units.NATIVE] Units of frequency.
439
+ */
440
+ async setAnalogInputLowpassFilter(channelNumber, cutoffFrequency, unit = units_1.Units.NATIVE) {
441
+ const request = {
442
+ ...requests.DeviceSetLowpassFilterRequest.DEFAULT,
443
+ interfaceId: this._device.connection.interfaceId,
444
+ device: this._device.deviceAddress,
445
+ channelNumber: channelNumber,
446
+ cutoffFrequency: cutoffFrequency,
447
+ unit: unit,
448
+ toBinary() {
449
+ return requests.DeviceSetLowpassFilterRequest.toBinary(this);
450
+ },
451
+ };
452
+ await gateway.callAsync('device/set_lowpass_filter', request);
453
+ }
433
454
  /**
434
455
  * Cancels a scheduled digital output action.
435
456
  * Requires at least Firmware 7.37.
@@ -1 +1 @@
1
- {"version":3,"file":"device_io.js","sourceRoot":"","sources":["../../../src/ascii/device_io.ts"],"names":[],"mappings":"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","sourcesContent":["// ==== THIS FILE IS GENERATED FROM A TEMPLATE ==== //\n// ============= DO NOT EDIT DIRECTLY ============= //\n\nimport { Device } from './device';\nimport * as gateway from '../gateway';\nimport * as requests from '../requests';\nimport { Native, Units, Time } from '../units';\nimport { DeviceIOInfo } from './device_io_info';\nimport { DigitalOutputAction } from './digital_output_action';\nimport { IoPortType } from './io_port_type';\nimport { IoPortLabel } from './io_port_label';\n\n/**\n * Class providing access to the I/O channels of the device.\n */\nexport class DeviceIO {\n private _device: Device;\n\n constructor(device: Device) {\n this._device = device;\n }\n\n /**\n * Returns the number of I/O channels the device has.\n * @returns An object containing the number of I/O channels the device has.\n */\n public async getChannelsInfo(): Promise<DeviceIOInfo> {\n const request: requests.DeviceEmptyRequest & gateway.Message = {\n ...requests.DeviceEmptyRequest.DEFAULT,\n interfaceId: this._device.connection.interfaceId,\n device: this._device.deviceAddress,\n toBinary() {\n return requests.DeviceEmptyRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<DeviceIOInfo>(\n 'device/get_io_info',\n request,\n DeviceIOInfo.fromBinary);\n return response;\n }\n\n /**\n * Sets the label of the specified channel.\n * @param portType The type of channel to set the label of.\n * @param channelNumber Channel number starting at 1.\n * @param label The label to set for the specified channel.\n * If no value or an empty string is provided, this label is deleted.\n */\n public async setLabel(\n portType: IoPortType,\n channelNumber: number,\n label?: string\n ): Promise<void> {\n const request: requests.SetIoPortLabelRequest & gateway.Message = {\n ...requests.SetIoPortLabelRequest.DEFAULT,\n interfaceId: this._device.connection.interfaceId,\n device: this._device.deviceAddress,\n portType: portType,\n channelNumber: channelNumber,\n label: label,\n toBinary() {\n return requests.SetIoPortLabelRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/set_io_label', request);\n }\n\n /**\n * Returns the label of the specified channel.\n * @param portType The type of channel to get the label of.\n * @param channelNumber Channel number starting at 1.\n * @returns The label of the specified channel.\n */\n public async getLabel(\n portType: IoPortType,\n channelNumber: number\n ): Promise<string> {\n const request: requests.GetIoPortLabelRequest & gateway.Message = {\n ...requests.GetIoPortLabelRequest.DEFAULT,\n interfaceId: this._device.connection.interfaceId,\n device: this._device.deviceAddress,\n portType: portType,\n channelNumber: channelNumber,\n toBinary() {\n return requests.GetIoPortLabelRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.StringResponse>(\n 'device/get_io_label',\n request,\n requests.StringResponse.fromBinary);\n return response.value;\n }\n\n /**\n * Returns every label assigned to an IO port on this device.\n * @returns The labels set for this device's IO.\n */\n public async getAllLabels(): Promise<IoPortLabel[]> {\n const request: requests.DeviceEmptyRequest & gateway.Message = {\n ...requests.DeviceEmptyRequest.DEFAULT,\n interfaceId: this._device.connection.interfaceId,\n device: this._device.deviceAddress,\n toBinary() {\n return requests.DeviceEmptyRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.GetAllIoPortLabelsResponse>(\n 'device/get_all_io_labels',\n request,\n requests.GetAllIoPortLabelsResponse.fromBinary);\n return response.labels;\n }\n\n /**\n * Returns the current value of the specified digital input channel.\n * @param channelNumber Channel number starting at 1.\n * @returns True if voltage is present on the input channel and false otherwise.\n */\n public async getDigitalInput(\n channelNumber: number\n ): Promise<boolean> {\n const request: requests.DeviceGetDigitalIORequest & gateway.Message = {\n ...requests.DeviceGetDigitalIORequest.DEFAULT,\n interfaceId: this._device.connection.interfaceId,\n device: this._device.deviceAddress,\n channelType: 'di',\n channelNumber: channelNumber,\n toBinary() {\n return requests.DeviceGetDigitalIORequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.BoolResponse>(\n 'device/get_digital_io',\n request,\n requests.BoolResponse.fromBinary);\n return response.value;\n }\n\n /**\n * Returns the current value of the specified digital output channel.\n * @param channelNumber Channel number starting at 1.\n * @returns True if the output channel is conducting and false otherwise.\n */\n public async getDigitalOutput(\n channelNumber: number\n ): Promise<boolean> {\n const request: requests.DeviceGetDigitalIORequest & gateway.Message = {\n ...requests.DeviceGetDigitalIORequest.DEFAULT,\n interfaceId: this._device.connection.interfaceId,\n device: this._device.deviceAddress,\n channelType: 'do',\n channelNumber: channelNumber,\n toBinary() {\n return requests.DeviceGetDigitalIORequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.BoolResponse>(\n 'device/get_digital_io',\n request,\n requests.BoolResponse.fromBinary);\n return response.value;\n }\n\n /**\n * Returns the current value of the specified analog input channel.\n * @param channelNumber Channel number starting at 1.\n * @returns A measurementsof the voltage present on the input channel.\n */\n public async getAnalogInput(\n channelNumber: number\n ): Promise<number> {\n const request: requests.DeviceGetAnalogIORequest & gateway.Message = {\n ...requests.DeviceGetAnalogIORequest.DEFAULT,\n interfaceId: this._device.connection.interfaceId,\n device: this._device.deviceAddress,\n channelType: 'ai',\n channelNumber: channelNumber,\n toBinary() {\n return requests.DeviceGetAnalogIORequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.DoubleResponse>(\n 'device/get_analog_io',\n request,\n requests.DoubleResponse.fromBinary);\n return response.value;\n }\n\n /**\n * Returns the current values of the specified analog output channel.\n * @param channelNumber Channel number starting at 1.\n * @returns A measurement of voltage that the output channel is conducting.\n */\n public async getAnalogOutput(\n channelNumber: number\n ): Promise<number> {\n const request: requests.DeviceGetAnalogIORequest & gateway.Message = {\n ...requests.DeviceGetAnalogIORequest.DEFAULT,\n interfaceId: this._device.connection.interfaceId,\n device: this._device.deviceAddress,\n channelType: 'ao',\n channelNumber: channelNumber,\n toBinary() {\n return requests.DeviceGetAnalogIORequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.DoubleResponse>(\n 'device/get_analog_io',\n request,\n requests.DoubleResponse.fromBinary);\n return response.value;\n }\n\n /**\n * Returns the current values of all digital input channels.\n * @returns True if voltage is present on the input channel and false otherwise.\n */\n public async getAllDigitalInputs(): Promise<boolean[]> {\n const request: requests.DeviceGetAllDigitalIORequest & gateway.Message = {\n ...requests.DeviceGetAllDigitalIORequest.DEFAULT,\n interfaceId: this._device.connection.interfaceId,\n device: this._device.deviceAddress,\n channelType: 'di',\n toBinary() {\n return requests.DeviceGetAllDigitalIORequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.DeviceGetAllDigitalIOResponse>(\n 'device/get_all_digital_io',\n request,\n requests.DeviceGetAllDigitalIOResponse.fromBinary);\n return response.values;\n }\n\n /**\n * Returns the current values of all digital output channels.\n * @returns True if the output channel is conducting and false otherwise.\n */\n public async getAllDigitalOutputs(): Promise<boolean[]> {\n const request: requests.DeviceGetAllDigitalIORequest & gateway.Message = {\n ...requests.DeviceGetAllDigitalIORequest.DEFAULT,\n interfaceId: this._device.connection.interfaceId,\n device: this._device.deviceAddress,\n channelType: 'do',\n toBinary() {\n return requests.DeviceGetAllDigitalIORequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.DeviceGetAllDigitalIOResponse>(\n 'device/get_all_digital_io',\n request,\n requests.DeviceGetAllDigitalIOResponse.fromBinary);\n return response.values;\n }\n\n /**\n * Returns the current values of all analog input channels.\n * @returns Measurements of the voltage present on the input channels.\n */\n public async getAllAnalogInputs(): Promise<number[]> {\n const request: requests.DeviceGetAllAnalogIORequest & gateway.Message = {\n ...requests.DeviceGetAllAnalogIORequest.DEFAULT,\n interfaceId: this._device.connection.interfaceId,\n device: this._device.deviceAddress,\n channelType: 'ai',\n toBinary() {\n return requests.DeviceGetAllAnalogIORequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.DeviceGetAllAnalogIOResponse>(\n 'device/get_all_analog_io',\n request,\n requests.DeviceGetAllAnalogIOResponse.fromBinary);\n return response.values;\n }\n\n /**\n * Returns the current values of all analog output channels.\n * @returns Measurements of voltage that the output channels are conducting.\n */\n public async getAllAnalogOutputs(): Promise<number[]> {\n const request: requests.DeviceGetAllAnalogIORequest & gateway.Message = {\n ...requests.DeviceGetAllAnalogIORequest.DEFAULT,\n interfaceId: this._device.connection.interfaceId,\n device: this._device.deviceAddress,\n channelType: 'ao',\n toBinary() {\n return requests.DeviceGetAllAnalogIORequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.DeviceGetAllAnalogIOResponse>(\n 'device/get_all_analog_io',\n request,\n requests.DeviceGetAllAnalogIOResponse.fromBinary);\n return response.values;\n }\n\n /**\n * Sets value for the specified digital output channel.\n * @param channelNumber Channel number starting at 1.\n * @param value The type of action to perform on the channel.\n */\n public async setDigitalOutput(\n channelNumber: number,\n value: DigitalOutputAction\n ): Promise<void> {\n const request: requests.DeviceSetDigitalOutputRequest & gateway.Message = {\n ...requests.DeviceSetDigitalOutputRequest.DEFAULT,\n interfaceId: this._device.connection.interfaceId,\n device: this._device.deviceAddress,\n channelNumber: channelNumber,\n value: value,\n toBinary() {\n return requests.DeviceSetDigitalOutputRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/set_digital_output', request);\n }\n\n /**\n * Sets values for all digital output channels.\n * @param values The type of action to perform on the channel.\n */\n public async setAllDigitalOutputs(\n values: DigitalOutputAction[]\n ): Promise<void> {\n const request: requests.DeviceSetAllDigitalOutputsRequest & gateway.Message = {\n ...requests.DeviceSetAllDigitalOutputsRequest.DEFAULT,\n interfaceId: this._device.connection.interfaceId,\n device: this._device.deviceAddress,\n values: values,\n toBinary() {\n return requests.DeviceSetAllDigitalOutputsRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/set_all_digital_outputs', request);\n }\n\n /**\n * Sets current and future value for the specified digital output channel.\n * Requires at least Firmware 7.37.\n * @param channelNumber Channel number starting at 1.\n * @param value The type of action to perform immediately on the channel.\n * @param futureValue The type of action to perform in the future on the channel.\n * @param delay Delay between setting current value and setting future value.\n * @param [unit=Units.NATIVE] Units of time.\n */\n public async setDigitalOutputSchedule(\n channelNumber: number,\n value: DigitalOutputAction,\n futureValue: DigitalOutputAction,\n delay: number,\n unit: Time | Native = Units.NATIVE\n ): Promise<void> {\n if (delay <= 0) {\n throw new TypeError('Delay must be a positive value.');\n }\n const request: requests.DeviceSetDigitalOutputScheduleRequest & gateway.Message = {\n ...requests.DeviceSetDigitalOutputScheduleRequest.DEFAULT,\n interfaceId: this._device.connection.interfaceId,\n device: this._device.deviceAddress,\n channelNumber: channelNumber,\n value: value,\n futureValue: futureValue,\n delay: delay,\n unit: unit,\n toBinary() {\n return requests.DeviceSetDigitalOutputScheduleRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/set_digital_output_schedule', request);\n }\n\n /**\n * Sets current and future values for all digital output channels.\n * Requires at least Firmware 7.37.\n * @param values The type of actions to perform immediately on output channels.\n * @param futureValues The type of actions to perform in the future on output channels.\n * @param delay Delay between setting current values and setting future values.\n * @param [unit=Units.NATIVE] Units of time.\n */\n public async setAllDigitalOutputsSchedule(\n values: DigitalOutputAction[],\n futureValues: DigitalOutputAction[],\n delay: number,\n unit: Time | Native = Units.NATIVE\n ): Promise<void> {\n if (delay <= 0) {\n throw new TypeError('Delay must be a positive value.');\n }\n const request: requests.DeviceSetAllDigitalOutputsScheduleRequest & gateway.Message = {\n ...requests.DeviceSetAllDigitalOutputsScheduleRequest.DEFAULT,\n interfaceId: this._device.connection.interfaceId,\n device: this._device.deviceAddress,\n values: values,\n futureValues: futureValues,\n delay: delay,\n unit: unit,\n toBinary() {\n return requests.DeviceSetAllDigitalOutputsScheduleRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/set_all_digital_outputs_schedule', request);\n }\n\n /**\n * Sets value for the specified analog output channel.\n * @param channelNumber Channel number starting at 1.\n * @param value Value to set the output channel voltage to.\n */\n public async setAnalogOutput(\n channelNumber: number,\n value: number\n ): Promise<void> {\n const request: requests.DeviceSetAnalogOutputRequest & gateway.Message = {\n ...requests.DeviceSetAnalogOutputRequest.DEFAULT,\n interfaceId: this._device.connection.interfaceId,\n device: this._device.deviceAddress,\n channelNumber: channelNumber,\n value: value,\n toBinary() {\n return requests.DeviceSetAnalogOutputRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/set_analog_output', request);\n }\n\n /**\n * Sets values for all analog output channels.\n * @param values Voltage values to set the output channels to.\n */\n public async setAllAnalogOutputs(\n values: number[]\n ): Promise<void> {\n const request: requests.DeviceSetAllAnalogOutputsRequest & gateway.Message = {\n ...requests.DeviceSetAllAnalogOutputsRequest.DEFAULT,\n interfaceId: this._device.connection.interfaceId,\n device: this._device.deviceAddress,\n values: values,\n toBinary() {\n return requests.DeviceSetAllAnalogOutputsRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/set_all_analog_outputs', request);\n }\n\n /**\n * Sets current and future value for the specified analog output channel.\n * Requires at least Firmware 7.38.\n * @param channelNumber Channel number starting at 1.\n * @param value Value to set the output channel voltage to immediately.\n * @param futureValue Value to set the output channel voltage to in the future.\n * @param delay Delay between setting current value and setting future value.\n * @param [unit=Units.NATIVE] Units of time.\n */\n public async setAnalogOutputSchedule(\n channelNumber: number,\n value: number,\n futureValue: number,\n delay: number,\n unit: Time | Native = Units.NATIVE\n ): Promise<void> {\n if (delay <= 0) {\n throw new TypeError('Delay must be a positive value.');\n }\n const request: requests.DeviceSetAnalogOutputScheduleRequest & gateway.Message = {\n ...requests.DeviceSetAnalogOutputScheduleRequest.DEFAULT,\n interfaceId: this._device.connection.interfaceId,\n device: this._device.deviceAddress,\n channelNumber: channelNumber,\n value: value,\n futureValue: futureValue,\n delay: delay,\n unit: unit,\n toBinary() {\n return requests.DeviceSetAnalogOutputScheduleRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/set_analog_output_schedule', request);\n }\n\n /**\n * Sets current and future values for all analog output channels.\n * Requires at least Firmware 7.38.\n * @param values Voltage values to set the output channels to immediately.\n * @param futureValues Voltage values to set the output channels to in the future.\n * @param delay Delay between setting current values and setting future values.\n * @param [unit=Units.NATIVE] Units of time.\n */\n public async setAllAnalogOutputsSchedule(\n values: number[],\n futureValues: number[],\n delay: number,\n unit: Time | Native = Units.NATIVE\n ): Promise<void> {\n if (delay <= 0) {\n throw new TypeError('Delay must be a positive value.');\n }\n const request: requests.DeviceSetAllAnalogOutputsScheduleRequest & gateway.Message = {\n ...requests.DeviceSetAllAnalogOutputsScheduleRequest.DEFAULT,\n interfaceId: this._device.connection.interfaceId,\n device: this._device.deviceAddress,\n values: values,\n futureValues: futureValues,\n delay: delay,\n unit: unit,\n toBinary() {\n return requests.DeviceSetAllAnalogOutputsScheduleRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/set_all_analog_outputs_schedule', request);\n }\n\n /**\n * Cancels a scheduled digital output action.\n * Requires at least Firmware 7.37.\n * @param channelNumber Channel number starting at 1.\n */\n public async cancelDigitalOutputSchedule(\n channelNumber: number\n ): Promise<void> {\n const request: requests.DeviceCancelOutputScheduleRequest & gateway.Message = {\n ...requests.DeviceCancelOutputScheduleRequest.DEFAULT,\n interfaceId: this._device.connection.interfaceId,\n device: this._device.deviceAddress,\n analog: false,\n channelNumber: channelNumber,\n toBinary() {\n return requests.DeviceCancelOutputScheduleRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/cancel_output_schedule', request);\n }\n\n /**\n * Cancel all scheduled digital output actions.\n * Requires at least Firmware 7.37.\n * @param [channels=[]] Optionally specify which channels to cancel.\n * Array length must be empty or equal to the number of channels on device.\n * Specifying \"True\" for a channel will cancel the scheduled digital output action for that channel.\n */\n public async cancelAllDigitalOutputsSchedule(\n channels: boolean[] = []\n ): Promise<void> {\n const request: requests.DeviceCancelAllOutputsScheduleRequest & gateway.Message = {\n ...requests.DeviceCancelAllOutputsScheduleRequest.DEFAULT,\n interfaceId: this._device.connection.interfaceId,\n device: this._device.deviceAddress,\n analog: false,\n channels: channels,\n toBinary() {\n return requests.DeviceCancelAllOutputsScheduleRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/cancel_all_outputs_schedule', request);\n }\n\n /**\n * Cancels a scheduled analog output value.\n * Requires at least Firmware 7.38.\n * @param channelNumber Channel number starting at 1.\n */\n public async cancelAnalogOutputSchedule(\n channelNumber: number\n ): Promise<void> {\n const request: requests.DeviceCancelOutputScheduleRequest & gateway.Message = {\n ...requests.DeviceCancelOutputScheduleRequest.DEFAULT,\n interfaceId: this._device.connection.interfaceId,\n device: this._device.deviceAddress,\n analog: true,\n channelNumber: channelNumber,\n toBinary() {\n return requests.DeviceCancelOutputScheduleRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/cancel_output_schedule', request);\n }\n\n /**\n * Cancel all scheduled analog output actions.\n * Requires at least Firmware 7.38.\n * @param [channels=[]] Optionally specify which channels to cancel.\n * Array length must be empty or equal to the number of channels on device.\n * Specifying \"True\" for a channel will cancel the scheduled analog output value for that channel.\n */\n public async cancelAllAnalogOutputsSchedule(\n channels: boolean[] = []\n ): Promise<void> {\n const request: requests.DeviceCancelAllOutputsScheduleRequest & gateway.Message = {\n ...requests.DeviceCancelAllOutputsScheduleRequest.DEFAULT,\n interfaceId: this._device.connection.interfaceId,\n device: this._device.deviceAddress,\n analog: true,\n channels: channels,\n toBinary() {\n return requests.DeviceCancelAllOutputsScheduleRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/cancel_all_outputs_schedule', request);\n }\n}\n"]}
1
+ {"version":3,"file":"device_io.js","sourceRoot":"","sources":["../../../src/ascii/device_io.ts"],"names":[],"mappings":"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","sourcesContent":["// ==== THIS FILE IS GENERATED FROM A TEMPLATE ==== //\n// ============= DO NOT EDIT DIRECTLY ============= //\n\nimport { Device } from './device';\nimport * as gateway from '../gateway';\nimport * as requests from '../requests';\nimport { Native, Units, Time, Frequency } from '../units';\nimport { DeviceIOInfo } from './device_io_info';\nimport { DigitalOutputAction } from './digital_output_action';\nimport { IoPortType } from './io_port_type';\nimport { IoPortLabel } from './io_port_label';\n\n/**\n * Class providing access to the I/O channels of the device.\n */\nexport class DeviceIO {\n private _device: Device;\n\n constructor(device: Device) {\n this._device = device;\n }\n\n /**\n * Returns the number of I/O channels the device has.\n * @returns An object containing the number of I/O channels the device has.\n */\n public async getChannelsInfo(): Promise<DeviceIOInfo> {\n const request: requests.DeviceEmptyRequest & gateway.Message = {\n ...requests.DeviceEmptyRequest.DEFAULT,\n interfaceId: this._device.connection.interfaceId,\n device: this._device.deviceAddress,\n toBinary() {\n return requests.DeviceEmptyRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<DeviceIOInfo>(\n 'device/get_io_info',\n request,\n DeviceIOInfo.fromBinary);\n return response;\n }\n\n /**\n * Sets the label of the specified channel.\n * @param portType The type of channel to set the label of.\n * @param channelNumber Channel number starting at 1.\n * @param label The label to set for the specified channel.\n * If no value or an empty string is provided, this label is deleted.\n */\n public async setLabel(\n portType: IoPortType,\n channelNumber: number,\n label?: string\n ): Promise<void> {\n const request: requests.SetIoPortLabelRequest & gateway.Message = {\n ...requests.SetIoPortLabelRequest.DEFAULT,\n interfaceId: this._device.connection.interfaceId,\n device: this._device.deviceAddress,\n portType: portType,\n channelNumber: channelNumber,\n label: label,\n toBinary() {\n return requests.SetIoPortLabelRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/set_io_label', request);\n }\n\n /**\n * Returns the label of the specified channel.\n * @param portType The type of channel to get the label of.\n * @param channelNumber Channel number starting at 1.\n * @returns The label of the specified channel.\n */\n public async getLabel(\n portType: IoPortType,\n channelNumber: number\n ): Promise<string> {\n const request: requests.GetIoPortLabelRequest & gateway.Message = {\n ...requests.GetIoPortLabelRequest.DEFAULT,\n interfaceId: this._device.connection.interfaceId,\n device: this._device.deviceAddress,\n portType: portType,\n channelNumber: channelNumber,\n toBinary() {\n return requests.GetIoPortLabelRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.StringResponse>(\n 'device/get_io_label',\n request,\n requests.StringResponse.fromBinary);\n return response.value;\n }\n\n /**\n * Returns every label assigned to an IO port on this device.\n * @returns The labels set for this device's IO.\n */\n public async getAllLabels(): Promise<IoPortLabel[]> {\n const request: requests.DeviceEmptyRequest & gateway.Message = {\n ...requests.DeviceEmptyRequest.DEFAULT,\n interfaceId: this._device.connection.interfaceId,\n device: this._device.deviceAddress,\n toBinary() {\n return requests.DeviceEmptyRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.GetAllIoPortLabelsResponse>(\n 'device/get_all_io_labels',\n request,\n requests.GetAllIoPortLabelsResponse.fromBinary);\n return response.labels;\n }\n\n /**\n * Returns the current value of the specified digital input channel.\n * @param channelNumber Channel number starting at 1.\n * @returns True if voltage is present on the input channel and false otherwise.\n */\n public async getDigitalInput(\n channelNumber: number\n ): Promise<boolean> {\n const request: requests.DeviceGetDigitalIORequest & gateway.Message = {\n ...requests.DeviceGetDigitalIORequest.DEFAULT,\n interfaceId: this._device.connection.interfaceId,\n device: this._device.deviceAddress,\n channelType: 'di',\n channelNumber: channelNumber,\n toBinary() {\n return requests.DeviceGetDigitalIORequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.BoolResponse>(\n 'device/get_digital_io',\n request,\n requests.BoolResponse.fromBinary);\n return response.value;\n }\n\n /**\n * Returns the current value of the specified digital output channel.\n * @param channelNumber Channel number starting at 1.\n * @returns True if the output channel is conducting and false otherwise.\n */\n public async getDigitalOutput(\n channelNumber: number\n ): Promise<boolean> {\n const request: requests.DeviceGetDigitalIORequest & gateway.Message = {\n ...requests.DeviceGetDigitalIORequest.DEFAULT,\n interfaceId: this._device.connection.interfaceId,\n device: this._device.deviceAddress,\n channelType: 'do',\n channelNumber: channelNumber,\n toBinary() {\n return requests.DeviceGetDigitalIORequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.BoolResponse>(\n 'device/get_digital_io',\n request,\n requests.BoolResponse.fromBinary);\n return response.value;\n }\n\n /**\n * Returns the current value of the specified analog input channel.\n * @param channelNumber Channel number starting at 1.\n * @returns A measurement of the voltage present on the input channel.\n */\n public async getAnalogInput(\n channelNumber: number\n ): Promise<number> {\n const request: requests.DeviceGetAnalogIORequest & gateway.Message = {\n ...requests.DeviceGetAnalogIORequest.DEFAULT,\n interfaceId: this._device.connection.interfaceId,\n device: this._device.deviceAddress,\n channelType: 'ai',\n channelNumber: channelNumber,\n toBinary() {\n return requests.DeviceGetAnalogIORequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.DoubleResponse>(\n 'device/get_analog_io',\n request,\n requests.DoubleResponse.fromBinary);\n return response.value;\n }\n\n /**\n * Returns the current values of the specified analog output channel.\n * @param channelNumber Channel number starting at 1.\n * @returns A measurement of voltage that the output channel is conducting.\n */\n public async getAnalogOutput(\n channelNumber: number\n ): Promise<number> {\n const request: requests.DeviceGetAnalogIORequest & gateway.Message = {\n ...requests.DeviceGetAnalogIORequest.DEFAULT,\n interfaceId: this._device.connection.interfaceId,\n device: this._device.deviceAddress,\n channelType: 'ao',\n channelNumber: channelNumber,\n toBinary() {\n return requests.DeviceGetAnalogIORequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.DoubleResponse>(\n 'device/get_analog_io',\n request,\n requests.DoubleResponse.fromBinary);\n return response.value;\n }\n\n /**\n * Returns the current values of all digital input channels.\n * @returns True if voltage is present on the input channel and false otherwise.\n */\n public async getAllDigitalInputs(): Promise<boolean[]> {\n const request: requests.DeviceGetAllDigitalIORequest & gateway.Message = {\n ...requests.DeviceGetAllDigitalIORequest.DEFAULT,\n interfaceId: this._device.connection.interfaceId,\n device: this._device.deviceAddress,\n channelType: 'di',\n toBinary() {\n return requests.DeviceGetAllDigitalIORequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.DeviceGetAllDigitalIOResponse>(\n 'device/get_all_digital_io',\n request,\n requests.DeviceGetAllDigitalIOResponse.fromBinary);\n return response.values;\n }\n\n /**\n * Returns the current values of all digital output channels.\n * @returns True if the output channel is conducting and false otherwise.\n */\n public async getAllDigitalOutputs(): Promise<boolean[]> {\n const request: requests.DeviceGetAllDigitalIORequest & gateway.Message = {\n ...requests.DeviceGetAllDigitalIORequest.DEFAULT,\n interfaceId: this._device.connection.interfaceId,\n device: this._device.deviceAddress,\n channelType: 'do',\n toBinary() {\n return requests.DeviceGetAllDigitalIORequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.DeviceGetAllDigitalIOResponse>(\n 'device/get_all_digital_io',\n request,\n requests.DeviceGetAllDigitalIOResponse.fromBinary);\n return response.values;\n }\n\n /**\n * Returns the current values of all analog input channels.\n * @returns Measurements of the voltages present on the input channels.\n */\n public async getAllAnalogInputs(): Promise<number[]> {\n const request: requests.DeviceGetAllAnalogIORequest & gateway.Message = {\n ...requests.DeviceGetAllAnalogIORequest.DEFAULT,\n interfaceId: this._device.connection.interfaceId,\n device: this._device.deviceAddress,\n channelType: 'ai',\n toBinary() {\n return requests.DeviceGetAllAnalogIORequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.DeviceGetAllAnalogIOResponse>(\n 'device/get_all_analog_io',\n request,\n requests.DeviceGetAllAnalogIOResponse.fromBinary);\n return response.values;\n }\n\n /**\n * Returns the current values of all analog output channels.\n * @returns Measurements of voltage that the output channels are conducting.\n */\n public async getAllAnalogOutputs(): Promise<number[]> {\n const request: requests.DeviceGetAllAnalogIORequest & gateway.Message = {\n ...requests.DeviceGetAllAnalogIORequest.DEFAULT,\n interfaceId: this._device.connection.interfaceId,\n device: this._device.deviceAddress,\n channelType: 'ao',\n toBinary() {\n return requests.DeviceGetAllAnalogIORequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.DeviceGetAllAnalogIOResponse>(\n 'device/get_all_analog_io',\n request,\n requests.DeviceGetAllAnalogIOResponse.fromBinary);\n return response.values;\n }\n\n /**\n * Sets value for the specified digital output channel.\n * @param channelNumber Channel number starting at 1.\n * @param value The type of action to perform on the channel.\n */\n public async setDigitalOutput(\n channelNumber: number,\n value: DigitalOutputAction\n ): Promise<void> {\n const request: requests.DeviceSetDigitalOutputRequest & gateway.Message = {\n ...requests.DeviceSetDigitalOutputRequest.DEFAULT,\n interfaceId: this._device.connection.interfaceId,\n device: this._device.deviceAddress,\n channelNumber: channelNumber,\n value: value,\n toBinary() {\n return requests.DeviceSetDigitalOutputRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/set_digital_output', request);\n }\n\n /**\n * Sets values for all digital output channels.\n * @param values The type of action to perform on the channel.\n */\n public async setAllDigitalOutputs(\n values: DigitalOutputAction[]\n ): Promise<void> {\n const request: requests.DeviceSetAllDigitalOutputsRequest & gateway.Message = {\n ...requests.DeviceSetAllDigitalOutputsRequest.DEFAULT,\n interfaceId: this._device.connection.interfaceId,\n device: this._device.deviceAddress,\n values: values,\n toBinary() {\n return requests.DeviceSetAllDigitalOutputsRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/set_all_digital_outputs', request);\n }\n\n /**\n * Sets current and future value for the specified digital output channel.\n * Requires at least Firmware 7.37.\n * @param channelNumber Channel number starting at 1.\n * @param value The type of action to perform immediately on the channel.\n * @param futureValue The type of action to perform in the future on the channel.\n * @param delay Delay between setting current value and setting future value.\n * @param [unit=Units.NATIVE] Units of time.\n */\n public async setDigitalOutputSchedule(\n channelNumber: number,\n value: DigitalOutputAction,\n futureValue: DigitalOutputAction,\n delay: number,\n unit: Time | Native = Units.NATIVE\n ): Promise<void> {\n if (delay <= 0) {\n throw new TypeError('Delay must be a positive value.');\n }\n const request: requests.DeviceSetDigitalOutputScheduleRequest & gateway.Message = {\n ...requests.DeviceSetDigitalOutputScheduleRequest.DEFAULT,\n interfaceId: this._device.connection.interfaceId,\n device: this._device.deviceAddress,\n channelNumber: channelNumber,\n value: value,\n futureValue: futureValue,\n delay: delay,\n unit: unit,\n toBinary() {\n return requests.DeviceSetDigitalOutputScheduleRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/set_digital_output_schedule', request);\n }\n\n /**\n * Sets current and future values for all digital output channels.\n * Requires at least Firmware 7.37.\n * @param values The type of actions to perform immediately on output channels.\n * @param futureValues The type of actions to perform in the future on output channels.\n * @param delay Delay between setting current values and setting future values.\n * @param [unit=Units.NATIVE] Units of time.\n */\n public async setAllDigitalOutputsSchedule(\n values: DigitalOutputAction[],\n futureValues: DigitalOutputAction[],\n delay: number,\n unit: Time | Native = Units.NATIVE\n ): Promise<void> {\n if (delay <= 0) {\n throw new TypeError('Delay must be a positive value.');\n }\n const request: requests.DeviceSetAllDigitalOutputsScheduleRequest & gateway.Message = {\n ...requests.DeviceSetAllDigitalOutputsScheduleRequest.DEFAULT,\n interfaceId: this._device.connection.interfaceId,\n device: this._device.deviceAddress,\n values: values,\n futureValues: futureValues,\n delay: delay,\n unit: unit,\n toBinary() {\n return requests.DeviceSetAllDigitalOutputsScheduleRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/set_all_digital_outputs_schedule', request);\n }\n\n /**\n * Sets value for the specified analog output channel.\n * @param channelNumber Channel number starting at 1.\n * @param value Value to set the output channel voltage to.\n */\n public async setAnalogOutput(\n channelNumber: number,\n value: number\n ): Promise<void> {\n const request: requests.DeviceSetAnalogOutputRequest & gateway.Message = {\n ...requests.DeviceSetAnalogOutputRequest.DEFAULT,\n interfaceId: this._device.connection.interfaceId,\n device: this._device.deviceAddress,\n channelNumber: channelNumber,\n value: value,\n toBinary() {\n return requests.DeviceSetAnalogOutputRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/set_analog_output', request);\n }\n\n /**\n * Sets values for all analog output channels.\n * @param values Voltage values to set the output channels to.\n */\n public async setAllAnalogOutputs(\n values: number[]\n ): Promise<void> {\n const request: requests.DeviceSetAllAnalogOutputsRequest & gateway.Message = {\n ...requests.DeviceSetAllAnalogOutputsRequest.DEFAULT,\n interfaceId: this._device.connection.interfaceId,\n device: this._device.deviceAddress,\n values: values,\n toBinary() {\n return requests.DeviceSetAllAnalogOutputsRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/set_all_analog_outputs', request);\n }\n\n /**\n * Sets current and future value for the specified analog output channel.\n * Requires at least Firmware 7.38.\n * @param channelNumber Channel number starting at 1.\n * @param value Value to set the output channel voltage to immediately.\n * @param futureValue Value to set the output channel voltage to in the future.\n * @param delay Delay between setting current value and setting future value.\n * @param [unit=Units.NATIVE] Units of time.\n */\n public async setAnalogOutputSchedule(\n channelNumber: number,\n value: number,\n futureValue: number,\n delay: number,\n unit: Time | Native = Units.NATIVE\n ): Promise<void> {\n if (delay <= 0) {\n throw new TypeError('Delay must be a positive value.');\n }\n const request: requests.DeviceSetAnalogOutputScheduleRequest & gateway.Message = {\n ...requests.DeviceSetAnalogOutputScheduleRequest.DEFAULT,\n interfaceId: this._device.connection.interfaceId,\n device: this._device.deviceAddress,\n channelNumber: channelNumber,\n value: value,\n futureValue: futureValue,\n delay: delay,\n unit: unit,\n toBinary() {\n return requests.DeviceSetAnalogOutputScheduleRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/set_analog_output_schedule', request);\n }\n\n /**\n * Sets current and future values for all analog output channels.\n * Requires at least Firmware 7.38.\n * @param values Voltage values to set the output channels to immediately.\n * @param futureValues Voltage values to set the output channels to in the future.\n * @param delay Delay between setting current values and setting future values.\n * @param [unit=Units.NATIVE] Units of time.\n */\n public async setAllAnalogOutputsSchedule(\n values: number[],\n futureValues: number[],\n delay: number,\n unit: Time | Native = Units.NATIVE\n ): Promise<void> {\n if (delay <= 0) {\n throw new TypeError('Delay must be a positive value.');\n }\n const request: requests.DeviceSetAllAnalogOutputsScheduleRequest & gateway.Message = {\n ...requests.DeviceSetAllAnalogOutputsScheduleRequest.DEFAULT,\n interfaceId: this._device.connection.interfaceId,\n device: this._device.deviceAddress,\n values: values,\n futureValues: futureValues,\n delay: delay,\n unit: unit,\n toBinary() {\n return requests.DeviceSetAllAnalogOutputsScheduleRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/set_all_analog_outputs_schedule', request);\n }\n\n /**\n * Sets the cutoff frequency of the low-pass filter for the specified analog input channel.\n * Set the frequency to 0 to disable the filter.\n * @param channelNumber Channel number starting at 1.\n * @param cutoffFrequency Cutoff frequency of the low-pass filter.\n * @param [unit=Units.NATIVE] Units of frequency.\n */\n public async setAnalogInputLowpassFilter(\n channelNumber: number,\n cutoffFrequency: number,\n unit: Frequency | Native = Units.NATIVE\n ): Promise<void> {\n const request: requests.DeviceSetLowpassFilterRequest & gateway.Message = {\n ...requests.DeviceSetLowpassFilterRequest.DEFAULT,\n interfaceId: this._device.connection.interfaceId,\n device: this._device.deviceAddress,\n channelNumber: channelNumber,\n cutoffFrequency: cutoffFrequency,\n unit: unit,\n toBinary() {\n return requests.DeviceSetLowpassFilterRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/set_lowpass_filter', request);\n }\n\n /**\n * Cancels a scheduled digital output action.\n * Requires at least Firmware 7.37.\n * @param channelNumber Channel number starting at 1.\n */\n public async cancelDigitalOutputSchedule(\n channelNumber: number\n ): Promise<void> {\n const request: requests.DeviceCancelOutputScheduleRequest & gateway.Message = {\n ...requests.DeviceCancelOutputScheduleRequest.DEFAULT,\n interfaceId: this._device.connection.interfaceId,\n device: this._device.deviceAddress,\n analog: false,\n channelNumber: channelNumber,\n toBinary() {\n return requests.DeviceCancelOutputScheduleRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/cancel_output_schedule', request);\n }\n\n /**\n * Cancel all scheduled digital output actions.\n * Requires at least Firmware 7.37.\n * @param [channels=[]] Optionally specify which channels to cancel.\n * Array length must be empty or equal to the number of channels on device.\n * Specifying \"True\" for a channel will cancel the scheduled digital output action for that channel.\n */\n public async cancelAllDigitalOutputsSchedule(\n channels: boolean[] = []\n ): Promise<void> {\n const request: requests.DeviceCancelAllOutputsScheduleRequest & gateway.Message = {\n ...requests.DeviceCancelAllOutputsScheduleRequest.DEFAULT,\n interfaceId: this._device.connection.interfaceId,\n device: this._device.deviceAddress,\n analog: false,\n channels: channels,\n toBinary() {\n return requests.DeviceCancelAllOutputsScheduleRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/cancel_all_outputs_schedule', request);\n }\n\n /**\n * Cancels a scheduled analog output value.\n * Requires at least Firmware 7.38.\n * @param channelNumber Channel number starting at 1.\n */\n public async cancelAnalogOutputSchedule(\n channelNumber: number\n ): Promise<void> {\n const request: requests.DeviceCancelOutputScheduleRequest & gateway.Message = {\n ...requests.DeviceCancelOutputScheduleRequest.DEFAULT,\n interfaceId: this._device.connection.interfaceId,\n device: this._device.deviceAddress,\n analog: true,\n channelNumber: channelNumber,\n toBinary() {\n return requests.DeviceCancelOutputScheduleRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/cancel_output_schedule', request);\n }\n\n /**\n * Cancel all scheduled analog output actions.\n * Requires at least Firmware 7.38.\n * @param [channels=[]] Optionally specify which channels to cancel.\n * Array length must be empty or equal to the number of channels on device.\n * Specifying \"True\" for a channel will cancel the scheduled analog output value for that channel.\n */\n public async cancelAllAnalogOutputsSchedule(\n channels: boolean[] = []\n ): Promise<void> {\n const request: requests.DeviceCancelAllOutputsScheduleRequest & gateway.Message = {\n ...requests.DeviceCancelAllOutputsScheduleRequest.DEFAULT,\n interfaceId: this._device.connection.interfaceId,\n device: this._device.deviceAddress,\n analog: true,\n channels: channels,\n toBinary() {\n return requests.DeviceCancelAllOutputsScheduleRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/cancel_all_outputs_schedule', request);\n }\n}\n"]}
@@ -64,7 +64,9 @@ export declare class OscilloscopeData {
64
64
  */
65
65
  getSampleTimes(unit?: Time | Native): number[];
66
66
  /**
67
- * Get the recorded data as an array of doubles.
67
+ * Get the recorded data as an array of doubles, with optional unit conversion.
68
+ * Note that not all quantities can be unit converted.
69
+ * For example, digital I/O channels and pure numbers such as device mode settings have no units.
68
70
  * @param [unit=Units.NATIVE] Unit of measure to convert the data to.
69
71
  * @returns The recorded data for one oscilloscope channel, converted to the units specified.
70
72
  */
@@ -1 +1 @@
1
- {"version":3,"file":"oscilloscope_data.d.ts","sourceRoot":"","sources":["../../../src/ascii/oscilloscope_data.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAK1D,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AAGpE;;GAEG;AACH,qBAAa,gBAAgB;IAC3B;;OAEG;IACH,IAAW,MAAM,IAAI,MAAM,CAE1B;IACD,OAAO,CAAC,OAAO,CAAS;IAExB;;OAEG;IACH,IAAW,UAAU,IAAI,sBAAsB,CAE9C;IAED;;OAEG;IACH,IAAW,OAAO,IAAI,MAAM,CAE3B;IAED;;OAEG;IACH,IAAW,UAAU,IAAI,MAAM,CAE9B;IAED;;OAEG;IACH,IAAW,MAAM,IAAI,UAAU,CAE9B;IAED;;OAEG;IACH,IAAW,SAAS,IAAI,MAAM,CAE7B;gBAEW,MAAM,EAAE,MAAM;IAK1B;;;;OAIG;IACI,WAAW,CAChB,IAAI,GAAE,IAAI,GAAG,MAAqB,GACjC,MAAM;IAiBT;;;;OAIG;IACI,YAAY,CACjB,IAAI,GAAE,SAAS,GAAG,MAAqB,GACtC,MAAM;IAiBT;;;;;OAKG;IACI,QAAQ,CACb,IAAI,GAAE,IAAI,GAAG,MAAqB,GACjC,MAAM;IAiBT;;;;;OAKG;IACI,aAAa,CAClB,KAAK,EAAE,MAAM,EACb,IAAI,GAAE,IAAI,GAAG,MAAqB,GACjC,MAAM;IAkBT;;;;OAIG;IACI,cAAc,CACnB,IAAI,GAAE,IAAI,GAAG,MAAqB,GACjC,MAAM,EAAE;IAiBX;;;;OAIG;IACI,OAAO,CACZ,IAAI,GAAE,KAAoB,GACzB,MAAM,EAAE;IAiBX;;;OAGG;IACH,OAAO,CAAC,MAAM,CAAC,KAAK;IAcpB;;;OAGG;IACH,OAAO,CAAC,mBAAmB;IAgB3B;;;;OAIG;IACI,IAAI,IAAI,IAAI;CAGpB"}
1
+ {"version":3,"file":"oscilloscope_data.d.ts","sourceRoot":"","sources":["../../../src/ascii/oscilloscope_data.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAK1D,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AAGpE;;GAEG;AACH,qBAAa,gBAAgB;IAC3B;;OAEG;IACH,IAAW,MAAM,IAAI,MAAM,CAE1B;IACD,OAAO,CAAC,OAAO,CAAS;IAExB;;OAEG;IACH,IAAW,UAAU,IAAI,sBAAsB,CAE9C;IAED;;OAEG;IACH,IAAW,OAAO,IAAI,MAAM,CAE3B;IAED;;OAEG;IACH,IAAW,UAAU,IAAI,MAAM,CAE9B;IAED;;OAEG;IACH,IAAW,MAAM,IAAI,UAAU,CAE9B;IAED;;OAEG;IACH,IAAW,SAAS,IAAI,MAAM,CAE7B;gBAEW,MAAM,EAAE,MAAM;IAK1B;;;;OAIG;IACI,WAAW,CAChB,IAAI,GAAE,IAAI,GAAG,MAAqB,GACjC,MAAM;IAiBT;;;;OAIG;IACI,YAAY,CACjB,IAAI,GAAE,SAAS,GAAG,MAAqB,GACtC,MAAM;IAiBT;;;;;OAKG;IACI,QAAQ,CACb,IAAI,GAAE,IAAI,GAAG,MAAqB,GACjC,MAAM;IAiBT;;;;;OAKG;IACI,aAAa,CAClB,KAAK,EAAE,MAAM,EACb,IAAI,GAAE,IAAI,GAAG,MAAqB,GACjC,MAAM;IAkBT;;;;OAIG;IACI,cAAc,CACnB,IAAI,GAAE,IAAI,GAAG,MAAqB,GACjC,MAAM,EAAE;IAiBX;;;;;;OAMG;IACI,OAAO,CACZ,IAAI,GAAE,KAAoB,GACzB,MAAM,EAAE;IAiBX;;;OAGG;IACH,OAAO,CAAC,MAAM,CAAC,KAAK;IAcpB;;;OAGG;IACH,OAAO,CAAC,mBAAmB;IAgB3B;;;;OAIG;IACI,IAAI,IAAI,IAAI;CAGpB"}
@@ -164,7 +164,9 @@ class OscilloscopeData {
164
164
  return response.values;
165
165
  }
166
166
  /**
167
- * Get the recorded data as an array of doubles.
167
+ * Get the recorded data as an array of doubles, with optional unit conversion.
168
+ * Note that not all quantities can be unit converted.
169
+ * For example, digital I/O channels and pure numbers such as device mode settings have no units.
168
170
  * @param [unit=Units.NATIVE] Unit of measure to convert the data to.
169
171
  * @returns The recorded data for one oscilloscope channel, converted to the units specified.
170
172
  */
@@ -1 +1 @@
1
- {"version":3,"file":"oscilloscope_data.js","sourceRoot":"","sources":["../../../src/ascii/oscilloscope_data.ts"],"names":[],"mappings":"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","sourcesContent":["// ==== THIS FILE IS GENERATED FROM A TEMPLATE ==== //\n// ============= DO NOT EDIT DIRECTLY ============= //\n\nimport { Native, Time, Frequency, Units } from '../units';\nimport * as gateway from '../gateway';\nimport * as requests from '../requests';\nimport { registerForFinalization } from '../finalizer';\n\nimport { IoPortType } from './io_port_type';\nimport { OscilloscopeDataSource } from './oscilloscope_data_source';\nimport { OscilloscopeCaptureProperties } from './oscilloscope_capture_properties';\n\n/**\n * Contains a block of contiguous recorded data for one channel of the device's oscilloscope.\n */\nexport class OscilloscopeData {\n /**\n * Unique ID for this block of recorded data.\n */\n public get dataId(): number {\n return this._dataId;\n }\n private _dataId: number;\n\n /**\n * Indicates whether the data came from a setting or an I/O pin.\n */\n public get dataSource(): OscilloscopeDataSource {\n return this._retrieveProperties().dataSource;\n }\n\n /**\n * The name of the recorded setting.\n */\n public get setting(): string {\n return this._retrieveProperties().setting;\n }\n\n /**\n * The number of the axis the data was recorded from, or 0 for the controller.\n */\n public get axisNumber(): number {\n return this._retrieveProperties().axisNumber;\n }\n\n /**\n * Which kind of I/O port data was recorded from.\n */\n public get ioType(): IoPortType {\n return this._retrieveProperties().ioType;\n }\n\n /**\n * Which I/O pin within the port was recorded.\n */\n public get ioChannel(): number {\n return this._retrieveProperties().ioChannel;\n }\n\n constructor(dataId: number) {\n this._dataId = dataId;\n registerForFinalization(this, OscilloscopeData._free.bind(null, dataId));\n }\n\n /**\n * Get the sample interval that this data was recorded with.\n * @param [unit=Units.NATIVE] Unit of measure to represent the timebase in.\n * @returns The timebase setting at the time the data was recorded.\n */\n public getTimebase(\n unit: Time | Native = Units.NATIVE\n ): number {\n const request: requests.OscilloscopeDataGetRequest & gateway.Message = {\n ...requests.OscilloscopeDataGetRequest.DEFAULT,\n dataId: this.dataId,\n unit: unit,\n toBinary() {\n return requests.OscilloscopeDataGetRequest.toBinary(this);\n },\n };\n\n const response = gateway.callSync<requests.DoubleResponse>(\n 'oscilloscopedata/get_timebase',\n request,\n requests.DoubleResponse.fromBinary);\n return response.value;\n }\n\n /**\n * Get the sampling frequency that this data was recorded with.\n * @param [unit=Units.NATIVE] Unit of measure to represent the frequency in.\n * @returns The frequency (inverse of the timebase setting) at the time the data was recorded.\n */\n public getFrequency(\n unit: Frequency | Native = Units.NATIVE\n ): number {\n const request: requests.OscilloscopeDataGetRequest & gateway.Message = {\n ...requests.OscilloscopeDataGetRequest.DEFAULT,\n dataId: this.dataId,\n unit: unit,\n toBinary() {\n return requests.OscilloscopeDataGetRequest.toBinary(this);\n },\n };\n\n const response = gateway.callSync<requests.DoubleResponse>(\n 'oscilloscopedata/get_frequency',\n request,\n requests.DoubleResponse.fromBinary);\n return response.value;\n }\n\n /**\n * Get the user-specified time period between receipt of the start command and the first data point.\n * Under some circumstances, the actual delay may be different - call GetSampleTime(0) to get the effective delay.\n * @param [unit=Units.NATIVE] Unit of measure to represent the delay in.\n * @returns The delay setting at the time the data was recorded.\n */\n public getDelay(\n unit: Time | Native = Units.NATIVE\n ): number {\n const request: requests.OscilloscopeDataGetRequest & gateway.Message = {\n ...requests.OscilloscopeDataGetRequest.DEFAULT,\n dataId: this.dataId,\n unit: unit,\n toBinary() {\n return requests.OscilloscopeDataGetRequest.toBinary(this);\n },\n };\n\n const response = gateway.callSync<requests.DoubleResponse>(\n 'oscilloscopedata/get_delay',\n request,\n requests.DoubleResponse.fromBinary);\n return response.value;\n }\n\n /**\n * Calculate the time a sample was recorded, relative to when the recording was triggered.\n * @param index 0-based index of the sample to calculate the time of.\n * @param [unit=Units.NATIVE] Unit of measure to represent the calculated time in.\n * @returns The calculated time offset of the data sample at the given index.\n */\n public getSampleTime(\n index: number,\n unit: Time | Native = Units.NATIVE\n ): number {\n const request: requests.OscilloscopeDataGetSampleTimeRequest & gateway.Message = {\n ...requests.OscilloscopeDataGetSampleTimeRequest.DEFAULT,\n dataId: this.dataId,\n index: index,\n unit: unit,\n toBinary() {\n return requests.OscilloscopeDataGetSampleTimeRequest.toBinary(this);\n },\n };\n\n const response = gateway.callSync<requests.DoubleResponse>(\n 'oscilloscopedata/get_sample_time',\n request,\n requests.DoubleResponse.fromBinary);\n return response.value;\n }\n\n /**\n * Calculate the time for all samples, relative to when the recording was triggered.\n * @param [unit=Units.NATIVE] Unit of measure to represent the calculated time in.\n * @returns The calculated time offsets of all data samples.\n */\n public getSampleTimes(\n unit: Time | Native = Units.NATIVE\n ): number[] {\n const request: requests.OscilloscopeDataGetSampleTimeRequest & gateway.Message = {\n ...requests.OscilloscopeDataGetSampleTimeRequest.DEFAULT,\n dataId: this.dataId,\n unit: unit,\n toBinary() {\n return requests.OscilloscopeDataGetSampleTimeRequest.toBinary(this);\n },\n };\n\n const response = gateway.callSync<requests.DoubleArrayResponse>(\n 'oscilloscopedata/get_sample_times',\n request,\n requests.DoubleArrayResponse.fromBinary);\n return response.values;\n }\n\n /**\n * Get the recorded data as an array of doubles.\n * @param [unit=Units.NATIVE] Unit of measure to convert the data to.\n * @returns The recorded data for one oscilloscope channel, converted to the units specified.\n */\n public getData(\n unit: Units = Units.NATIVE\n ): number[] {\n const request: requests.OscilloscopeDataGetRequest & gateway.Message = {\n ...requests.OscilloscopeDataGetRequest.DEFAULT,\n dataId: this.dataId,\n unit: unit,\n toBinary() {\n return requests.OscilloscopeDataGetRequest.toBinary(this);\n },\n };\n\n const response = gateway.callSync<requests.OscilloscopeDataGetSamplesResponse>(\n 'oscilloscopedata/get_samples',\n request,\n requests.OscilloscopeDataGetSamplesResponse.fromBinary);\n return response.data;\n }\n\n /**\n * Releases native resources of an oscilloscope data buffer.\n * @param dataId The ID of the data buffer to delete.\n */\n private static _free(\n dataId: number\n ): void {\n const request: requests.OscilloscopeDataIdentifier & gateway.Message = {\n ...requests.OscilloscopeDataIdentifier.DEFAULT,\n dataId: dataId,\n toBinary() {\n return requests.OscilloscopeDataIdentifier.toBinary(this);\n },\n };\n\n gateway.callSync('oscilloscopedata/free', request);\n }\n\n /**\n * Returns recording properties.\n * @returns Capture properties.\n */\n private _retrieveProperties(): OscilloscopeCaptureProperties {\n const request: requests.OscilloscopeDataIdentifier & gateway.Message = {\n ...requests.OscilloscopeDataIdentifier.DEFAULT,\n dataId: this.dataId,\n toBinary() {\n return requests.OscilloscopeDataIdentifier.toBinary(this);\n },\n };\n\n const response = gateway.callSync<OscilloscopeCaptureProperties>(\n 'oscilloscopedata/get_properties',\n request,\n OscilloscopeCaptureProperties.fromBinary);\n return response;\n }\n\n /**\n * Releases the native resources of the oscilloscope data.\n * Should only be called if your environment does not support FinalizationRegistry.\n * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/FinalizationRegistry\n */\n public free(): void {\n OscilloscopeData._free(this.dataId);\n }\n}\n"]}
1
+ {"version":3,"file":"oscilloscope_data.js","sourceRoot":"","sources":["../../../src/ascii/oscilloscope_data.ts"],"names":[],"mappings":"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","sourcesContent":["// ==== THIS FILE IS GENERATED FROM A TEMPLATE ==== //\n// ============= DO NOT EDIT DIRECTLY ============= //\n\nimport { Native, Time, Frequency, Units } from '../units';\nimport * as gateway from '../gateway';\nimport * as requests from '../requests';\nimport { registerForFinalization } from '../finalizer';\n\nimport { IoPortType } from './io_port_type';\nimport { OscilloscopeDataSource } from './oscilloscope_data_source';\nimport { OscilloscopeCaptureProperties } from './oscilloscope_capture_properties';\n\n/**\n * Contains a block of contiguous recorded data for one channel of the device's oscilloscope.\n */\nexport class OscilloscopeData {\n /**\n * Unique ID for this block of recorded data.\n */\n public get dataId(): number {\n return this._dataId;\n }\n private _dataId: number;\n\n /**\n * Indicates whether the data came from a setting or an I/O pin.\n */\n public get dataSource(): OscilloscopeDataSource {\n return this._retrieveProperties().dataSource;\n }\n\n /**\n * The name of the recorded setting.\n */\n public get setting(): string {\n return this._retrieveProperties().setting;\n }\n\n /**\n * The number of the axis the data was recorded from, or 0 for the controller.\n */\n public get axisNumber(): number {\n return this._retrieveProperties().axisNumber;\n }\n\n /**\n * Which kind of I/O port data was recorded from.\n */\n public get ioType(): IoPortType {\n return this._retrieveProperties().ioType;\n }\n\n /**\n * Which I/O pin within the port was recorded.\n */\n public get ioChannel(): number {\n return this._retrieveProperties().ioChannel;\n }\n\n constructor(dataId: number) {\n this._dataId = dataId;\n registerForFinalization(this, OscilloscopeData._free.bind(null, dataId));\n }\n\n /**\n * Get the sample interval that this data was recorded with.\n * @param [unit=Units.NATIVE] Unit of measure to represent the timebase in.\n * @returns The timebase setting at the time the data was recorded.\n */\n public getTimebase(\n unit: Time | Native = Units.NATIVE\n ): number {\n const request: requests.OscilloscopeDataGetRequest & gateway.Message = {\n ...requests.OscilloscopeDataGetRequest.DEFAULT,\n dataId: this.dataId,\n unit: unit,\n toBinary() {\n return requests.OscilloscopeDataGetRequest.toBinary(this);\n },\n };\n\n const response = gateway.callSync<requests.DoubleResponse>(\n 'oscilloscopedata/get_timebase',\n request,\n requests.DoubleResponse.fromBinary);\n return response.value;\n }\n\n /**\n * Get the sampling frequency that this data was recorded with.\n * @param [unit=Units.NATIVE] Unit of measure to represent the frequency in.\n * @returns The frequency (inverse of the timebase setting) at the time the data was recorded.\n */\n public getFrequency(\n unit: Frequency | Native = Units.NATIVE\n ): number {\n const request: requests.OscilloscopeDataGetRequest & gateway.Message = {\n ...requests.OscilloscopeDataGetRequest.DEFAULT,\n dataId: this.dataId,\n unit: unit,\n toBinary() {\n return requests.OscilloscopeDataGetRequest.toBinary(this);\n },\n };\n\n const response = gateway.callSync<requests.DoubleResponse>(\n 'oscilloscopedata/get_frequency',\n request,\n requests.DoubleResponse.fromBinary);\n return response.value;\n }\n\n /**\n * Get the user-specified time period between receipt of the start command and the first data point.\n * Under some circumstances, the actual delay may be different - call GetSampleTime(0) to get the effective delay.\n * @param [unit=Units.NATIVE] Unit of measure to represent the delay in.\n * @returns The delay setting at the time the data was recorded.\n */\n public getDelay(\n unit: Time | Native = Units.NATIVE\n ): number {\n const request: requests.OscilloscopeDataGetRequest & gateway.Message = {\n ...requests.OscilloscopeDataGetRequest.DEFAULT,\n dataId: this.dataId,\n unit: unit,\n toBinary() {\n return requests.OscilloscopeDataGetRequest.toBinary(this);\n },\n };\n\n const response = gateway.callSync<requests.DoubleResponse>(\n 'oscilloscopedata/get_delay',\n request,\n requests.DoubleResponse.fromBinary);\n return response.value;\n }\n\n /**\n * Calculate the time a sample was recorded, relative to when the recording was triggered.\n * @param index 0-based index of the sample to calculate the time of.\n * @param [unit=Units.NATIVE] Unit of measure to represent the calculated time in.\n * @returns The calculated time offset of the data sample at the given index.\n */\n public getSampleTime(\n index: number,\n unit: Time | Native = Units.NATIVE\n ): number {\n const request: requests.OscilloscopeDataGetSampleTimeRequest & gateway.Message = {\n ...requests.OscilloscopeDataGetSampleTimeRequest.DEFAULT,\n dataId: this.dataId,\n index: index,\n unit: unit,\n toBinary() {\n return requests.OscilloscopeDataGetSampleTimeRequest.toBinary(this);\n },\n };\n\n const response = gateway.callSync<requests.DoubleResponse>(\n 'oscilloscopedata/get_sample_time',\n request,\n requests.DoubleResponse.fromBinary);\n return response.value;\n }\n\n /**\n * Calculate the time for all samples, relative to when the recording was triggered.\n * @param [unit=Units.NATIVE] Unit of measure to represent the calculated time in.\n * @returns The calculated time offsets of all data samples.\n */\n public getSampleTimes(\n unit: Time | Native = Units.NATIVE\n ): number[] {\n const request: requests.OscilloscopeDataGetSampleTimeRequest & gateway.Message = {\n ...requests.OscilloscopeDataGetSampleTimeRequest.DEFAULT,\n dataId: this.dataId,\n unit: unit,\n toBinary() {\n return requests.OscilloscopeDataGetSampleTimeRequest.toBinary(this);\n },\n };\n\n const response = gateway.callSync<requests.DoubleArrayResponse>(\n 'oscilloscopedata/get_sample_times',\n request,\n requests.DoubleArrayResponse.fromBinary);\n return response.values;\n }\n\n /**\n * Get the recorded data as an array of doubles, with optional unit conversion.\n * Note that not all quantities can be unit converted.\n * For example, digital I/O channels and pure numbers such as device mode settings have no units.\n * @param [unit=Units.NATIVE] Unit of measure to convert the data to.\n * @returns The recorded data for one oscilloscope channel, converted to the units specified.\n */\n public getData(\n unit: Units = Units.NATIVE\n ): number[] {\n const request: requests.OscilloscopeDataGetRequest & gateway.Message = {\n ...requests.OscilloscopeDataGetRequest.DEFAULT,\n dataId: this.dataId,\n unit: unit,\n toBinary() {\n return requests.OscilloscopeDataGetRequest.toBinary(this);\n },\n };\n\n const response = gateway.callSync<requests.OscilloscopeDataGetSamplesResponse>(\n 'oscilloscopedata/get_samples',\n request,\n requests.OscilloscopeDataGetSamplesResponse.fromBinary);\n return response.data;\n }\n\n /**\n * Releases native resources of an oscilloscope data buffer.\n * @param dataId The ID of the data buffer to delete.\n */\n private static _free(\n dataId: number\n ): void {\n const request: requests.OscilloscopeDataIdentifier & gateway.Message = {\n ...requests.OscilloscopeDataIdentifier.DEFAULT,\n dataId: dataId,\n toBinary() {\n return requests.OscilloscopeDataIdentifier.toBinary(this);\n },\n };\n\n gateway.callSync('oscilloscopedata/free', request);\n }\n\n /**\n * Returns recording properties.\n * @returns Capture properties.\n */\n private _retrieveProperties(): OscilloscopeCaptureProperties {\n const request: requests.OscilloscopeDataIdentifier & gateway.Message = {\n ...requests.OscilloscopeDataIdentifier.DEFAULT,\n dataId: this.dataId,\n toBinary() {\n return requests.OscilloscopeDataIdentifier.toBinary(this);\n },\n };\n\n const response = gateway.callSync<OscilloscopeCaptureProperties>(\n 'oscilloscopedata/get_properties',\n request,\n OscilloscopeCaptureProperties.fromBinary);\n return response;\n }\n\n /**\n * Releases the native resources of the oscilloscope data.\n * Should only be called if your environment does not support FinalizationRegistry.\n * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/FinalizationRegistry\n */\n public free(): void {\n OscilloscopeData._free(this.dataId);\n }\n}\n"]}
@@ -10,6 +10,7 @@ export * from './firmware_version';
10
10
  export * from './library';
11
11
  export * from './log_output_mode';
12
12
  export * from './measurement';
13
+ export * from './named_parameter';
13
14
  export * from './rotation_direction';
14
15
  export * from './tools';
15
16
  export * from './unit_table';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,UAAU,MAAM,cAAc,CAAC;AAC3C,OAAO,KAAK,OAAO,MAAM,WAAW,CAAC;AACrC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,yBAAyB,CAAC;AACxC,cAAc,cAAc,CAAC;AAC7B,cAAc,oBAAoB,CAAC;AACnC,cAAc,WAAW,CAAC;AAC1B,cAAc,mBAAmB,CAAC;AAClC,cAAc,eAAe,CAAC;AAC9B,cAAc,sBAAsB,CAAC;AACrC,cAAc,SAAS,CAAC;AACxB,cAAc,cAAc,CAAC;AAC7B,cAAc,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,UAAU,MAAM,cAAc,CAAC;AAC3C,OAAO,KAAK,OAAO,MAAM,WAAW,CAAC;AACrC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,yBAAyB,CAAC;AACxC,cAAc,cAAc,CAAC;AAC7B,cAAc,oBAAoB,CAAC;AACnC,cAAc,WAAW,CAAC;AAC1B,cAAc,mBAAmB,CAAC;AAClC,cAAc,eAAe,CAAC;AAC9B,cAAc,mBAAmB,CAAC;AAClC,cAAc,sBAAsB,CAAC;AACrC,cAAc,SAAS,CAAC;AACxB,cAAc,cAAc,CAAC;AAC7B,cAAc,SAAS,CAAC"}
package/dist/lib/index.js CHANGED
@@ -40,6 +40,7 @@ __exportStar(require("./firmware_version"), exports);
40
40
  __exportStar(require("./library"), exports);
41
41
  __exportStar(require("./log_output_mode"), exports);
42
42
  __exportStar(require("./measurement"), exports);
43
+ __exportStar(require("./named_parameter"), exports);
43
44
  __exportStar(require("./rotation_direction"), exports);
44
45
  __exportStar(require("./tools"), exports);
45
46
  __exportStar(require("./unit_table"), exports);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,oDAAoD;AACpD,iDAAiC;AACjC,mDAAmC;AACnC,iDAAiC;AACjC,2DAA2C;AAC3C,qDAAqC;AACrC,iDAA+B;AAC/B,0DAAwC;AACxC,+CAA6B;AAC7B,qDAAmC;AACnC,4CAA0B;AAC1B,oDAAkC;AAClC,gDAA8B;AAC9B,uDAAqC;AACrC,0CAAwB;AACxB,+CAA6B;AAC7B,0CAAwB","sourcesContent":["/* This file is generated. Do not modify by hand. */\nexport * as ascii from './ascii';\nexport * as binary from './binary';\nexport * as gcode from './gcode';\nexport * as microscopy from './microscopy';\nexport * as product from './product';\nexport * from './axis_address';\nexport * from './device_db_source_type';\nexport * from './exceptions';\nexport * from './firmware_version';\nexport * from './library';\nexport * from './log_output_mode';\nexport * from './measurement';\nexport * from './rotation_direction';\nexport * from './tools';\nexport * from './unit_table';\nexport * from './units';\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,oDAAoD;AACpD,iDAAiC;AACjC,mDAAmC;AACnC,iDAAiC;AACjC,2DAA2C;AAC3C,qDAAqC;AACrC,iDAA+B;AAC/B,0DAAwC;AACxC,+CAA6B;AAC7B,qDAAmC;AACnC,4CAA0B;AAC1B,oDAAkC;AAClC,gDAA8B;AAC9B,oDAAkC;AAClC,uDAAqC;AACrC,0CAAwB;AACxB,+CAA6B;AAC7B,0CAAwB","sourcesContent":["/* This file is generated. Do not modify by hand. */\nexport * as ascii from './ascii';\nexport * as binary from './binary';\nexport * as gcode from './gcode';\nexport * as microscopy from './microscopy';\nexport * as product from './product';\nexport * from './axis_address';\nexport * from './device_db_source_type';\nexport * from './exceptions';\nexport * from './firmware_version';\nexport * from './library';\nexport * from './log_output_mode';\nexport * from './measurement';\nexport * from './named_parameter';\nexport * from './rotation_direction';\nexport * from './tools';\nexport * from './unit_table';\nexport * from './units';\n"]}
@@ -130,7 +130,7 @@ class Library {
130
130
  const request = {
131
131
  ...requests.CheckVersionRequest.DEFAULT,
132
132
  host: 'js',
133
- version: '6.4.2',
133
+ version: '6.6.0',
134
134
  toBinary() {
135
135
  return requests.CheckVersionRequest.toBinary(this);
136
136
  },
@@ -1 +1 @@
1
- {"version":3,"file":"library.js","sourceRoot":"","sources":["../../src/library.ts"],"names":[],"mappings":"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","sourcesContent":["// ==== THIS FILE IS GENERATED FROM A TEMPLATE ==== //\n// ============= DO NOT EDIT DIRECTLY ============= //\n\nimport * as gateway from './gateway';\nimport * as requests from './requests';\nimport { LogOutputMode } from './log_output_mode';\nimport { DeviceDbSourceType } from './device_db_source_type';\n\nexport class Library {\n /**\n * Sets library logging output.\n * @param mode Logging output mode.\n * @param filePath Path of the file to open.\n */\n public static setLogOutput(\n mode: LogOutputMode,\n filePath?: string\n ): void {\n const request: requests.SetLogOutputRequest & gateway.Message = {\n ...requests.SetLogOutputRequest.DEFAULT,\n mode: mode,\n filePath: filePath,\n toBinary() {\n return requests.SetLogOutputRequest.toBinary(this);\n },\n };\n\n gateway.callSync('logging/set_output', request);\n }\n\n /**\n * Sets source of Device DB data. Allows selection of a web service or a local file.\n * @param sourceType Source type.\n * @param urlOrFilePath URL of the web service or path to the local file.\n * Leave empty for the default URL of Zaber web service.\n */\n public static setDeviceDbSource(\n sourceType: DeviceDbSourceType,\n urlOrFilePath?: string\n ): void {\n const request: requests.SetDeviceDbSourceRequest & gateway.Message = {\n ...requests.SetDeviceDbSourceRequest.DEFAULT,\n sourceType: sourceType,\n urlOrFilePath: urlOrFilePath,\n toBinary() {\n return requests.SetDeviceDbSourceRequest.toBinary(this);\n },\n };\n\n gateway.callSync('device_db/set_source', request);\n }\n\n /**\n * Enables Device DB store.\n * The store uses filesystem to save information obtained from the Device DB.\n * The stored data are later used instead of the Device DB.\n * @param storeLocation Specifies relative or absolute path of the folder used by the store.\n * If left empty defaults to a folder in user home directory.\n * Must be accessible by the process.\n */\n public static enableDeviceDbStore(\n storeLocation?: string\n ): void {\n const request: requests.ToggleDeviceDbStoreRequest & gateway.Message = {\n ...requests.ToggleDeviceDbStoreRequest.DEFAULT,\n toggleOn: true,\n storeLocation: storeLocation,\n toBinary() {\n return requests.ToggleDeviceDbStoreRequest.toBinary(this);\n },\n };\n\n gateway.callSync('device_db/toggle_store', request);\n }\n\n /**\n * Disables Device DB store.\n */\n public static disableDeviceDbStore(): void {\n const request: requests.ToggleDeviceDbStoreRequest & gateway.Message = {\n ...requests.ToggleDeviceDbStoreRequest.DEFAULT,\n toBinary() {\n return requests.ToggleDeviceDbStoreRequest.toBinary(this);\n },\n };\n\n gateway.callSync('device_db/toggle_store', request);\n }\n\n /**\n * Disables certain customer checks (like FF flag).\n * @param mode Whether to turn internal mode on or off.\n */\n public static setInternalMode(\n mode: boolean\n ): void {\n const request: requests.SetInternalModeRequest & gateway.Message = {\n ...requests.SetInternalModeRequest.DEFAULT,\n mode: mode,\n toBinary() {\n return requests.SetInternalModeRequest.toBinary(this);\n },\n };\n\n gateway.callSync('library/set_internal_mode', request);\n }\n\n /**\n * Sets the period between polling for IDLE during movements.\n * Caution: Setting the period too low may cause performance issues.\n * @param period Period in milliseconds.\n * Negative value restores the default period.\n */\n public static setIdlePollingPeriod(\n period: number\n ): void {\n const request: requests.IntRequest & gateway.Message = {\n ...requests.IntRequest.DEFAULT,\n value: period,\n toBinary() {\n return requests.IntRequest.toBinary(this);\n },\n };\n\n gateway.callSync('library/set_idle_polling_period', request);\n }\n\n /**\n * Throws an error if the version of the loaded shared library does not match the caller's version.\n */\n public static checkVersion(): void {\n const request: requests.CheckVersionRequest & gateway.Message = {\n ...requests.CheckVersionRequest.DEFAULT,\n host: 'js',\n version: '6.4.2',\n toBinary() {\n return requests.CheckVersionRequest.toBinary(this);\n },\n };\n\n gateway.callSync('library/check_version', request);\n }\n}\n\ngateway.addInitCallback(Library.checkVersion);\n"]}
1
+ {"version":3,"file":"library.js","sourceRoot":"","sources":["../../src/library.ts"],"names":[],"mappings":"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","sourcesContent":["// ==== THIS FILE IS GENERATED FROM A TEMPLATE ==== //\n// ============= DO NOT EDIT DIRECTLY ============= //\n\nimport * as gateway from './gateway';\nimport * as requests from './requests';\nimport { LogOutputMode } from './log_output_mode';\nimport { DeviceDbSourceType } from './device_db_source_type';\n\nexport class Library {\n /**\n * Sets library logging output.\n * @param mode Logging output mode.\n * @param filePath Path of the file to open.\n */\n public static setLogOutput(\n mode: LogOutputMode,\n filePath?: string\n ): void {\n const request: requests.SetLogOutputRequest & gateway.Message = {\n ...requests.SetLogOutputRequest.DEFAULT,\n mode: mode,\n filePath: filePath,\n toBinary() {\n return requests.SetLogOutputRequest.toBinary(this);\n },\n };\n\n gateway.callSync('logging/set_output', request);\n }\n\n /**\n * Sets source of Device DB data. Allows selection of a web service or a local file.\n * @param sourceType Source type.\n * @param urlOrFilePath URL of the web service or path to the local file.\n * Leave empty for the default URL of Zaber web service.\n */\n public static setDeviceDbSource(\n sourceType: DeviceDbSourceType,\n urlOrFilePath?: string\n ): void {\n const request: requests.SetDeviceDbSourceRequest & gateway.Message = {\n ...requests.SetDeviceDbSourceRequest.DEFAULT,\n sourceType: sourceType,\n urlOrFilePath: urlOrFilePath,\n toBinary() {\n return requests.SetDeviceDbSourceRequest.toBinary(this);\n },\n };\n\n gateway.callSync('device_db/set_source', request);\n }\n\n /**\n * Enables Device DB store.\n * The store uses filesystem to save information obtained from the Device DB.\n * The stored data are later used instead of the Device DB.\n * @param storeLocation Specifies relative or absolute path of the folder used by the store.\n * If left empty defaults to a folder in user home directory.\n * Must be accessible by the process.\n */\n public static enableDeviceDbStore(\n storeLocation?: string\n ): void {\n const request: requests.ToggleDeviceDbStoreRequest & gateway.Message = {\n ...requests.ToggleDeviceDbStoreRequest.DEFAULT,\n toggleOn: true,\n storeLocation: storeLocation,\n toBinary() {\n return requests.ToggleDeviceDbStoreRequest.toBinary(this);\n },\n };\n\n gateway.callSync('device_db/toggle_store', request);\n }\n\n /**\n * Disables Device DB store.\n */\n public static disableDeviceDbStore(): void {\n const request: requests.ToggleDeviceDbStoreRequest & gateway.Message = {\n ...requests.ToggleDeviceDbStoreRequest.DEFAULT,\n toBinary() {\n return requests.ToggleDeviceDbStoreRequest.toBinary(this);\n },\n };\n\n gateway.callSync('device_db/toggle_store', request);\n }\n\n /**\n * Disables certain customer checks (like FF flag).\n * @param mode Whether to turn internal mode on or off.\n */\n public static setInternalMode(\n mode: boolean\n ): void {\n const request: requests.SetInternalModeRequest & gateway.Message = {\n ...requests.SetInternalModeRequest.DEFAULT,\n mode: mode,\n toBinary() {\n return requests.SetInternalModeRequest.toBinary(this);\n },\n };\n\n gateway.callSync('library/set_internal_mode', request);\n }\n\n /**\n * Sets the period between polling for IDLE during movements.\n * Caution: Setting the period too low may cause performance issues.\n * @param period Period in milliseconds.\n * Negative value restores the default period.\n */\n public static setIdlePollingPeriod(\n period: number\n ): void {\n const request: requests.IntRequest & gateway.Message = {\n ...requests.IntRequest.DEFAULT,\n value: period,\n toBinary() {\n return requests.IntRequest.toBinary(this);\n },\n };\n\n gateway.callSync('library/set_idle_polling_period', request);\n }\n\n /**\n * Throws an error if the version of the loaded shared library does not match the caller's version.\n */\n public static checkVersion(): void {\n const request: requests.CheckVersionRequest & gateway.Message = {\n ...requests.CheckVersionRequest.DEFAULT,\n host: 'js',\n version: '6.6.0',\n toBinary() {\n return requests.CheckVersionRequest.toBinary(this);\n },\n };\n\n gateway.callSync('library/check_version', request);\n }\n}\n\ngateway.addInitCallback(Library.checkVersion);\n"]}
@@ -0,0 +1,109 @@
1
+ import { Device } from '../ascii/device';
2
+ import { Axis } from '../ascii/axis';
3
+ import { Angle, Length, Native } from '../units';
4
+ import { NamedParameter } from '../named_parameter';
5
+ import { AutofocusStatus } from './autofocus_status';
6
+ /**
7
+ * A generic autofocus device.
8
+ */
9
+ export declare class Autofocus {
10
+ /**
11
+ * The identification of external device providing the capability.
12
+ */
13
+ get providerId(): number;
14
+ private _providerId;
15
+ /**
16
+ * The focus axis.
17
+ */
18
+ get focusAxis(): Axis;
19
+ private _focusAxis;
20
+ /**
21
+ * The objective turret device if the microscope has one.
22
+ */
23
+ get objectiveTurret(): Device | undefined;
24
+ private _objectiveTurret;
25
+ /**
26
+ * Creates instance of `Autofocus` based on the given provider id.
27
+ */
28
+ constructor(providerId: number, focusAxis: Axis, objectiveTurret?: Device);
29
+ /**
30
+ * Sets the current focus to be target for the autofocus control loop.
31
+ */
32
+ setFocusZero(): Promise<void>;
33
+ /**
34
+ * Returns the status of the autofocus.
35
+ * @returns The status of the autofocus.
36
+ */
37
+ getStatus(): Promise<AutofocusStatus>;
38
+ /**
39
+ * Moves the device until it's in focus.
40
+ * @param [scan=false] If true, the autofocus will approach from the limit moving until it's in range.
41
+ */
42
+ focusOnce(scan?: boolean): Promise<void>;
43
+ /**
44
+ * Moves the focus axis continuously maintaining focus.
45
+ * Starts the autofocus control loop.
46
+ * Note that the control loop may stop if the autofocus comes out of range or a movement error occurs.
47
+ */
48
+ startFocusLoop(): Promise<void>;
49
+ /**
50
+ * Stops autofocus control loop.
51
+ * If the focus axis already stopped moving because of an error, an exception will be thrown.
52
+ */
53
+ stopFocusLoop(): Promise<void>;
54
+ /**
55
+ * Gets the lower motion limit for the autofocus control loop.
56
+ * Gets motion.tracking.limit.min setting of the focus axis.
57
+ * @param [unit=Units.NATIVE] The units of the limit.
58
+ * @returns Limit value.
59
+ */
60
+ getLimitMin(unit?: Length | Angle | Native): Promise<number>;
61
+ /**
62
+ * Gets the upper motion limit for the autofocus control loop.
63
+ * Gets motion.tracking.limit.max setting of the focus axis.
64
+ * @param [unit=Units.NATIVE] The units of the limit.
65
+ * @returns Limit value.
66
+ */
67
+ getLimitMax(unit?: Length | Angle | Native): Promise<number>;
68
+ /**
69
+ * Sets the lower motion limit for the autofocus control loop.
70
+ * Use the limits to prevent the focus axis from crashing into the sample.
71
+ * Changes motion.tracking.limit.min setting of the focus axis.
72
+ * @param limit The lower limit of the focus axis.
73
+ * @param [unit=Units.NATIVE] The units of the limit.
74
+ */
75
+ setLimitMin(limit: number, unit?: Length | Angle | Native): Promise<void>;
76
+ /**
77
+ * Sets the upper motion limit for the autofocus control loop.
78
+ * Use the limits to prevent the focus axis from crashing into the sample.
79
+ * Changes motion.tracking.limit.max setting of the focus axis.
80
+ * @param limit The upper limit of the focus axis.
81
+ * @param [unit=Units.NATIVE] The units of the limit.
82
+ */
83
+ setLimitMax(limit: number, unit?: Length | Angle | Native): Promise<void>;
84
+ /**
85
+ * Typically, the control loop parameters and objective are kept synchronized by the library.
86
+ * If the parameters or current objective changes outside of the library, call this method to synchronize them.
87
+ */
88
+ synchronizeParameters(): Promise<void>;
89
+ /**
90
+ * Sets the parameters for the autofocus objective.
91
+ * @param objective The objective (numbered from 1) to set the parameters for.
92
+ * If your microscope has only one objective, use value of 1.
93
+ * @param parameters The parameters for the autofocus objective.
94
+ */
95
+ setObjectiveParameters(objective: number, parameters: NamedParameter[]): Promise<void>;
96
+ /**
97
+ * Returns the parameters for the autofocus objective.
98
+ * @param objective The objective (numbered from 1) to get the parameters for.
99
+ * If your microscope has only one objective, use value of 1.
100
+ * @returns The parameters for the autofocus objective.
101
+ */
102
+ getObjectiveParameters(objective: number): Promise<NamedParameter[]>;
103
+ /**
104
+ * Returns a string that represents the autofocus.
105
+ * @returns A string that represents the autofocus.
106
+ */
107
+ toString(): string;
108
+ }
109
+ //# sourceMappingURL=autofocus.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"autofocus.d.ts","sourceRoot":"","sources":["../../../src/microscopy/autofocus.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzC,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AACrC,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAS,MAAM,UAAU,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAGrD;;GAEG;AACH,qBAAa,SAAS;IACpB;;OAEG;IACH,IAAW,UAAU,IAAI,MAAM,CAE9B;IACD,OAAO,CAAC,WAAW,CAAS;IAE5B;;OAEG;IACH,IAAW,SAAS,IAAI,IAAI,CAE3B;IACD,OAAO,CAAC,UAAU,CAAO;IAEzB;;OAEG;IACH,IAAW,eAAe,IAAI,MAAM,GAAG,SAAS,CAE/C;IACD,OAAO,CAAC,gBAAgB,CAAqB;IAE7C;;OAEG;gBACS,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,eAAe,CAAC,EAAE,MAAM;IAMzE;;OAEG;IACU,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC;IAgB1C;;;OAGG;IACU,SAAS,IAAI,OAAO,CAAC,eAAe,CAAC;IAoBlD;;;OAGG;IACU,SAAS,CACpB,IAAI,GAAE,OAAe,GACpB,OAAO,CAAC,IAAI,CAAC;IAkBhB;;;;OAIG;IACU,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC;IAgB5C;;;OAGG;IACU,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC;IAgB3C;;;;;OAKG;IACU,WAAW,CACtB,IAAI,GAAE,MAAM,GAAG,KAAK,GAAG,MAAqB,GAC3C,OAAO,CAAC,MAAM,CAAC;IAoBlB;;;;;OAKG;IACU,WAAW,CACtB,IAAI,GAAE,MAAM,GAAG,KAAK,GAAG,MAAqB,GAC3C,OAAO,CAAC,MAAM,CAAC;IAoBlB;;;;;;OAMG;IACU,WAAW,CACtB,KAAK,EAAE,MAAM,EACb,IAAI,GAAE,MAAM,GAAG,KAAK,GAAG,MAAqB,GAC3C,OAAO,CAAC,IAAI,CAAC;IAiBhB;;;;;;OAMG;IACU,WAAW,CACtB,KAAK,EAAE,MAAM,EACb,IAAI,GAAE,MAAM,GAAG,KAAK,GAAG,MAAqB,GAC3C,OAAO,CAAC,IAAI,CAAC;IAiBhB;;;OAGG;IACU,qBAAqB,IAAI,OAAO,CAAC,IAAI,CAAC;IAgBnD;;;;;OAKG;IACU,sBAAsB,CACjC,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,cAAc,EAAE,GAC3B,OAAO,CAAC,IAAI,CAAC;IAkBhB;;;;;OAKG;IACU,sBAAsB,CACjC,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,cAAc,EAAE,CAAC;IAqB5B;;;OAGG;IACI,QAAQ,IAAI,MAAM;CAmB1B"}