@zaber/motion 6.6.1 → 7.0.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.
- package/binding.gyp +9 -9
- package/dist/binding/wasm/{zaber-motion-lib.wasm → zaber-motion-core.wasm} +0 -0
- package/dist/lib/ascii/axis.d.ts +27 -1
- package/dist/lib/ascii/axis.d.ts.map +1 -1
- package/dist/lib/ascii/axis.js +50 -0
- package/dist/lib/ascii/axis.js.map +1 -1
- package/dist/lib/ascii/connection.js +4 -4
- package/dist/lib/ascii/connection.js.map +1 -1
- package/dist/lib/ascii/device.d.ts +8 -0
- package/dist/lib/ascii/device.d.ts.map +1 -1
- package/dist/lib/ascii/device.js +23 -0
- package/dist/lib/ascii/device.js.map +1 -1
- package/dist/lib/ascii/lockstep.d.ts +28 -1
- package/dist/lib/ascii/lockstep.d.ts.map +1 -1
- package/dist/lib/ascii/lockstep.js +51 -0
- package/dist/lib/ascii/lockstep.js.map +1 -1
- package/dist/lib/library.js +1 -1
- package/dist/lib/library.js.map +1 -1
- package/dist/lib/microscopy/autofocus.d.ts +4 -1
- package/dist/lib/microscopy/autofocus.d.ts.map +1 -1
- package/dist/lib/microscopy/autofocus.js +5 -1
- package/dist/lib/microscopy/autofocus.js.map +1 -1
- package/dist/lib/requests/autofocus_focus_request.d.ts +1 -0
- package/dist/lib/requests/autofocus_focus_request.d.ts.map +1 -1
- package/dist/lib/requests/autofocus_focus_request.js +2 -0
- package/dist/lib/requests/autofocus_focus_request.js.map +1 -1
- package/dist/lib/requests/device_move_sin_request.d.ts +19 -0
- package/dist/lib/requests/device_move_sin_request.d.ts.map +1 -0
- package/dist/lib/requests/device_move_sin_request.js +42 -0
- package/dist/lib/requests/device_move_sin_request.js.map +1 -0
- package/dist/lib/requests/index.d.ts +3 -1
- package/dist/lib/requests/index.d.ts.map +1 -1
- package/dist/lib/requests/index.js +3 -1
- package/dist/lib/requests/index.js.map +1 -1
- package/dist/lib/requests/lockstep_move_sin_request.d.ts +19 -0
- package/dist/lib/requests/lockstep_move_sin_request.d.ts.map +1 -0
- package/dist/lib/requests/lockstep_move_sin_request.js +42 -0
- package/dist/lib/requests/lockstep_move_sin_request.js.map +1 -0
- package/dist/lib/requests/renumber_request.d.ts +12 -0
- package/dist/lib/requests/renumber_request.d.ts.map +1 -0
- package/dist/lib/requests/{device_renumber_request.js → renumber_request.js} +10 -8
- package/dist/lib/requests/renumber_request.js.map +1 -0
- package/package.json +1 -1
- package/dist/lib/requests/device_renumber_request.d.ts +0 -11
- package/dist/lib/requests/device_renumber_request.d.ts.map +0 -1
- package/dist/lib/requests/device_renumber_request.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lockstep.js","sourceRoot":"","sources":["../../../src/ascii/lockstep.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 { Angle, Length, Native, AngularVelocity, Velocity, Acceleration, AngularAcceleration, Units } from '../units';\nimport * as gateway from '../gateway';\nimport * as requests from '../requests';\nimport { LockstepAxes } from './lockstep_axes';\n\n/**\n * Represents a lockstep group with this ID on a device.\n * A lockstep group is a movement synchronized pair of axes on a device.\n * Requires at least Firmware 6.15 or 7.11.\n */\nexport class Lockstep {\n /**\n * Device that controls this lockstep group.\n */\n public get device(): Device {\n return this._device;\n }\n private _device: Device;\n\n /**\n * The number that identifies the lockstep group on the device.\n */\n public get lockstepGroupId(): number {\n return this._lockstepGroupId;\n }\n private _lockstepGroupId: number;\n\n constructor(device: Device, lockstepGroupId: number) {\n this._device = device;\n this._lockstepGroupId = lockstepGroupId;\n }\n\n /**\n * Activate the lockstep group on the axes specified.\n * @param axes The numbers of axes in the lockstep group.\n */\n public async enable(\n ...axes: number[]\n ): Promise<void> {\n const request: requests.LockstepEnableRequest & gateway.Message = {\n ...requests.LockstepEnableRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n lockstepGroupId: this.lockstepGroupId,\n axes: axes,\n toBinary() {\n return requests.LockstepEnableRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/lockstep_enable', request);\n }\n\n /**\n * Disable the lockstep group.\n */\n public async disable(): Promise<void> {\n const request: requests.LockstepDisableRequest & gateway.Message = {\n ...requests.LockstepDisableRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n lockstepGroupId: this.lockstepGroupId,\n toBinary() {\n return requests.LockstepDisableRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/lockstep_disable', request);\n }\n\n /**\n * Stops ongoing lockstep group movement. Decelerates until zero speed.\n * @param [options.waitUntilIdle=true] Determines whether function should return after the movement is finished or just started.\n */\n public async stop(\n options: Lockstep.StopOptions = {}\n ): Promise<void> {\n const {\n waitUntilIdle = true,\n } = options;\n const request: requests.LockstepStopRequest & gateway.Message = {\n ...requests.LockstepStopRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n lockstepGroupId: this.lockstepGroupId,\n waitUntilIdle: waitUntilIdle,\n toBinary() {\n return requests.LockstepStopRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/lockstep_stop', request);\n }\n\n /**\n * Retracts the axes of the lockstep group until a home associated with an individual axis is detected.\n * @param [options.waitUntilIdle=true] Determines whether function should return after the movement is finished or just started.\n */\n public async home(\n options: Lockstep.HomeOptions = {}\n ): Promise<void> {\n const {\n waitUntilIdle = true,\n } = options;\n const request: requests.LockstepHomeRequest & gateway.Message = {\n ...requests.LockstepHomeRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n lockstepGroupId: this.lockstepGroupId,\n waitUntilIdle: waitUntilIdle,\n toBinary() {\n return requests.LockstepHomeRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/lockstep_home', request);\n }\n\n /**\n * Move the first axis of the lockstep group to an absolute position.\n * The other axes in the lockstep group maintain their offsets throughout movement.\n * @param position Absolute position.\n * @param [unit=Units.NATIVE] Units of position.\n * @param [options.waitUntilIdle=true] Determines whether function should return after the movement is finished or just started.\n * @param [options.velocity=0] Movement velocity.\n * Default value of 0 indicates that the maxspeed setting is used instead.\n * Requires at least Firmware 7.25.\n * @param [options.velocityUnit=Units.NATIVE] Units of velocity.\n * @param [options.acceleration=0] Movement acceleration.\n * Default value of 0 indicates that the accel setting is used instead.\n * Requires at least Firmware 7.25.\n * @param [options.accelerationUnit=Units.NATIVE] Units of acceleration.\n */\n public async moveAbsolute(\n position: number,\n unit: Length | Angle | Native = Units.NATIVE,\n options: Lockstep.MoveAbsoluteOptions = {}\n ): Promise<void> {\n const {\n waitUntilIdle = true,\n velocity = 0,\n velocityUnit = Units.NATIVE,\n acceleration = 0,\n accelerationUnit = Units.NATIVE,\n } = options;\n const request: requests.LockstepMoveRequest & gateway.Message = {\n ...requests.LockstepMoveRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n lockstepGroupId: this.lockstepGroupId,\n type: requests.AxisMoveType.ABS,\n arg: position,\n unit: unit,\n waitUntilIdle: waitUntilIdle,\n velocity: velocity,\n velocityUnit: velocityUnit,\n acceleration: acceleration,\n accelerationUnit: accelerationUnit,\n toBinary() {\n return requests.LockstepMoveRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/lockstep_move', request);\n }\n\n /**\n * Move the first axis of the lockstep group to a position relative to its current position.\n * The other axes in the lockstep group maintain their offsets throughout movement.\n * @param position Relative position.\n * @param [unit=Units.NATIVE] Units of position.\n * @param [options.waitUntilIdle=true] Determines whether function should return after the movement is finished or just started.\n * @param [options.velocity=0] Movement velocity.\n * Default value of 0 indicates that the maxspeed setting is used instead.\n * Requires at least Firmware 7.25.\n * @param [options.velocityUnit=Units.NATIVE] Units of velocity.\n * @param [options.acceleration=0] Movement acceleration.\n * Default value of 0 indicates that the accel setting is used instead.\n * Requires at least Firmware 7.25.\n * @param [options.accelerationUnit=Units.NATIVE] Units of acceleration.\n */\n public async moveRelative(\n position: number,\n unit: Length | Angle | Native = Units.NATIVE,\n options: Lockstep.MoveRelativeOptions = {}\n ): Promise<void> {\n const {\n waitUntilIdle = true,\n velocity = 0,\n velocityUnit = Units.NATIVE,\n acceleration = 0,\n accelerationUnit = Units.NATIVE,\n } = options;\n const request: requests.LockstepMoveRequest & gateway.Message = {\n ...requests.LockstepMoveRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n lockstepGroupId: this.lockstepGroupId,\n type: requests.AxisMoveType.REL,\n arg: position,\n unit: unit,\n waitUntilIdle: waitUntilIdle,\n velocity: velocity,\n velocityUnit: velocityUnit,\n acceleration: acceleration,\n accelerationUnit: accelerationUnit,\n toBinary() {\n return requests.LockstepMoveRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/lockstep_move', request);\n }\n\n /**\n * Moves the first axis of the lockstep group at the specified speed.\n * The other axes in the lockstep group maintain their offsets throughout movement.\n * @param velocity Movement velocity.\n * @param [unit=Units.NATIVE] Units of velocity.\n * @param [options.acceleration=0] Movement acceleration.\n * Default value of 0 indicates that the accel setting is used instead.\n * Requires at least Firmware 7.25.\n * @param [options.accelerationUnit=Units.NATIVE] Units of acceleration.\n */\n public async moveVelocity(\n velocity: number,\n unit: Velocity | AngularVelocity | Native = Units.NATIVE,\n options: Lockstep.MoveVelocityOptions = {}\n ): Promise<void> {\n const {\n acceleration = 0,\n accelerationUnit = Units.NATIVE,\n } = options;\n const request: requests.LockstepMoveRequest & gateway.Message = {\n ...requests.LockstepMoveRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n lockstepGroupId: this.lockstepGroupId,\n type: requests.AxisMoveType.VEL,\n arg: velocity,\n unit: unit,\n acceleration: acceleration,\n accelerationUnit: accelerationUnit,\n toBinary() {\n return requests.LockstepMoveRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/lockstep_move', request);\n }\n\n /**\n * Moves the axes to the maximum valid position.\n * The axes in the lockstep group maintain their offsets throughout movement.\n * Respects lim.max for all axes in the group.\n * @param [options.waitUntilIdle=true] Determines whether function should return after the movement is finished or just started.\n * @param [options.velocity=0] Movement velocity.\n * Default value of 0 indicates that the maxspeed setting is used instead.\n * Requires at least Firmware 7.25.\n * @param [options.velocityUnit=Units.NATIVE] Units of velocity.\n * @param [options.acceleration=0] Movement acceleration.\n * Default value of 0 indicates that the accel setting is used instead.\n * Requires at least Firmware 7.25.\n * @param [options.accelerationUnit=Units.NATIVE] Units of acceleration.\n */\n public async moveMax(\n options: Lockstep.MoveMaxOptions = {}\n ): Promise<void> {\n const {\n waitUntilIdle = true,\n velocity = 0,\n velocityUnit = Units.NATIVE,\n acceleration = 0,\n accelerationUnit = Units.NATIVE,\n } = options;\n const request: requests.LockstepMoveRequest & gateway.Message = {\n ...requests.LockstepMoveRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n lockstepGroupId: this.lockstepGroupId,\n type: requests.AxisMoveType.MAX,\n waitUntilIdle: waitUntilIdle,\n velocity: velocity,\n velocityUnit: velocityUnit,\n acceleration: acceleration,\n accelerationUnit: accelerationUnit,\n toBinary() {\n return requests.LockstepMoveRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/lockstep_move', request);\n }\n\n /**\n * Moves the axes to the minimum valid position.\n * The axes in the lockstep group maintain their offsets throughout movement.\n * Respects lim.min for all axes in the group.\n * @param [options.waitUntilIdle=true] Determines whether function should return after the movement is finished or just started.\n * @param [options.velocity=0] Movement velocity.\n * Default value of 0 indicates that the maxspeed setting is used instead.\n * Requires at least Firmware 7.25.\n * @param [options.velocityUnit=Units.NATIVE] Units of velocity.\n * @param [options.acceleration=0] Movement acceleration.\n * Default value of 0 indicates that the accel setting is used instead.\n * Requires at least Firmware 7.25.\n * @param [options.accelerationUnit=Units.NATIVE] Units of acceleration.\n */\n public async moveMin(\n options: Lockstep.MoveMinOptions = {}\n ): Promise<void> {\n const {\n waitUntilIdle = true,\n velocity = 0,\n velocityUnit = Units.NATIVE,\n acceleration = 0,\n accelerationUnit = Units.NATIVE,\n } = options;\n const request: requests.LockstepMoveRequest & gateway.Message = {\n ...requests.LockstepMoveRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n lockstepGroupId: this.lockstepGroupId,\n type: requests.AxisMoveType.MIN,\n waitUntilIdle: waitUntilIdle,\n velocity: velocity,\n velocityUnit: velocityUnit,\n acceleration: acceleration,\n accelerationUnit: accelerationUnit,\n toBinary() {\n return requests.LockstepMoveRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/lockstep_move', request);\n }\n\n /**\n * Waits until the lockstep group stops moving.\n * @param [options.throwErrorOnFault=true] Determines whether to throw error when fault is observed.\n */\n public async waitUntilIdle(\n options: Lockstep.WaitUntilIdleOptions = {}\n ): Promise<void> {\n const {\n throwErrorOnFault = true,\n } = options;\n const request: requests.LockstepWaitUntilIdleRequest & gateway.Message = {\n ...requests.LockstepWaitUntilIdleRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n lockstepGroupId: this.lockstepGroupId,\n throwErrorOnFault: throwErrorOnFault,\n toBinary() {\n return requests.LockstepWaitUntilIdleRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/lockstep_wait_until_idle', request);\n }\n\n /**\n * Returns bool indicating whether the lockstep group is executing a motion command.\n * @returns True if the axes are currently executing a motion command.\n */\n public async isBusy(): Promise<boolean> {\n const request: requests.LockstepEmptyRequest & gateway.Message = {\n ...requests.LockstepEmptyRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n lockstepGroupId: this.lockstepGroupId,\n toBinary() {\n return requests.LockstepEmptyRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.BoolResponse>(\n 'device/lockstep_is_busy',\n request,\n requests.BoolResponse.fromBinary);\n return response.value;\n }\n\n /**\n * @deprecated Use GetAxisNumbers instead.\n *\n * Gets the axes of the lockstep group.\n * @returns LockstepAxes instance which contains the axes numbers of the lockstep group.\n */\n public async getAxes(): Promise<LockstepAxes> {\n const request: requests.LockstepEmptyRequest & gateway.Message = {\n ...requests.LockstepEmptyRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n lockstepGroupId: this.lockstepGroupId,\n toBinary() {\n return requests.LockstepEmptyRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<LockstepAxes>(\n 'device/lockstep_get_axes',\n request,\n LockstepAxes.fromBinary);\n return response;\n }\n\n /**\n * Gets the axis numbers of the lockstep group.\n * @returns Axis numbers in order specified when enabling lockstep.\n */\n public async getAxisNumbers(): Promise<number[]> {\n const request: requests.LockstepEmptyRequest & gateway.Message = {\n ...requests.LockstepEmptyRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n lockstepGroupId: this.lockstepGroupId,\n toBinary() {\n return requests.LockstepEmptyRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.LockstepGetAxisNumbersResponse>(\n 'device/lockstep_get_axis_numbers',\n request,\n requests.LockstepGetAxisNumbersResponse.fromBinary);\n return response.axes;\n }\n\n /**\n * Gets the initial offsets of secondary axes of an enabled lockstep group.\n * @param [unit=Units.NATIVE] Units of position.\n * Uses primary axis unit conversion.\n * @returns Initial offset for each axis of the lockstep group.\n */\n public async getOffsets(\n unit: Length | Angle | Native = Units.NATIVE\n ): Promise<number[]> {\n const request: requests.LockstepGetRequest & gateway.Message = {\n ...requests.LockstepGetRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n lockstepGroupId: this.lockstepGroupId,\n unit: unit,\n toBinary() {\n return requests.LockstepGetRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.DoubleArrayResponse>(\n 'device/lockstep_get_offsets',\n request,\n requests.DoubleArrayResponse.fromBinary);\n return response.values;\n }\n\n /**\n * Gets the twists of secondary axes of an enabled lockstep group.\n * @param [unit=Units.NATIVE] Units of position.\n * Uses primary axis unit conversion.\n * @returns Difference between the initial offset and the actual offset for each axis of the lockstep group.\n */\n public async getTwists(\n unit: Length | Angle | Native = Units.NATIVE\n ): Promise<number[]> {\n const request: requests.LockstepGetRequest & gateway.Message = {\n ...requests.LockstepGetRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n lockstepGroupId: this.lockstepGroupId,\n unit: unit,\n toBinary() {\n return requests.LockstepGetRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.DoubleArrayResponse>(\n 'device/lockstep_get_twists',\n request,\n requests.DoubleArrayResponse.fromBinary);\n return response.values;\n }\n\n /**\n * Returns current position of the primary axis.\n * @param [unit=Units.NATIVE] Units of the position.\n * @returns Primary axis position.\n */\n public async getPosition(\n unit: Length | Angle | Native = Units.NATIVE\n ): Promise<number> {\n const request: requests.LockstepGetRequest & gateway.Message = {\n ...requests.LockstepGetRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n lockstepGroupId: this.lockstepGroupId,\n unit: unit,\n toBinary() {\n return requests.LockstepGetRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.DoubleResponse>(\n 'device/lockstep_get_pos',\n request,\n requests.DoubleResponse.fromBinary);\n return response.value;\n }\n\n /**\n * Sets lockstep twist tolerance.\n * Twist tolerances that do not match the system configuration can reduce performance or damage the system.\n * @param tolerance Twist tolerance.\n * @param [unit=Units.NATIVE] Units of the tolerance.\n * Uses primary axis unit conversion when setting to all axes,\n * otherwise uses specified secondary axis unit conversion.\n * @param [options.axisIndex=0] Optional index of a secondary axis to set the tolerance for.\n * If left empty or set to 0, the tolerance is set to all the secondary axes.\n */\n public async setTolerance(\n tolerance: number,\n unit: Length | Angle | Native = Units.NATIVE,\n options: Lockstep.SetToleranceOptions = {}\n ): Promise<void> {\n const {\n axisIndex = 0,\n } = options;\n const request: requests.LockstepSetRequest & gateway.Message = {\n ...requests.LockstepSetRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n lockstepGroupId: this.lockstepGroupId,\n value: tolerance,\n unit: unit,\n axisIndex: axisIndex,\n toBinary() {\n return requests.LockstepSetRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/lockstep_set_tolerance', request);\n }\n\n /**\n * Checks if the lockstep group is currently enabled on the device.\n * @returns True if a lockstep group with this ID is enabled on the device.\n */\n public async isEnabled(): Promise<boolean> {\n const request: requests.LockstepEmptyRequest & gateway.Message = {\n ...requests.LockstepEmptyRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n lockstepGroupId: this.lockstepGroupId,\n toBinary() {\n return requests.LockstepEmptyRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.BoolResponse>(\n 'device/lockstep_is_enabled',\n request,\n requests.BoolResponse.fromBinary);\n return response.value;\n }\n\n /**\n * Returns a string which represents the enabled lockstep group.\n * @returns String which represents the enabled lockstep group.\n */\n public toString(): string {\n const request: requests.LockstepEmptyRequest & gateway.Message = {\n ...requests.LockstepEmptyRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n lockstepGroupId: this.lockstepGroupId,\n toBinary() {\n return requests.LockstepEmptyRequest.toBinary(this);\n },\n };\n\n const response = gateway.callSync<requests.StringResponse>(\n 'device/lockstep_to_string',\n request,\n requests.StringResponse.fromBinary);\n return response.value;\n }\n}\n\nnamespace Lockstep {\n export interface StopOptions {\n waitUntilIdle?: boolean;\n }\n export interface HomeOptions {\n waitUntilIdle?: boolean;\n }\n export interface MoveAbsoluteOptions {\n waitUntilIdle?: boolean;\n velocity?: number;\n velocityUnit?: Velocity | AngularVelocity | Native;\n acceleration?: number;\n accelerationUnit?: Acceleration | AngularAcceleration | Native;\n }\n export interface MoveRelativeOptions {\n waitUntilIdle?: boolean;\n velocity?: number;\n velocityUnit?: Velocity | AngularVelocity | Native;\n acceleration?: number;\n accelerationUnit?: Acceleration | AngularAcceleration | Native;\n }\n export interface MoveVelocityOptions {\n acceleration?: number;\n accelerationUnit?: Acceleration | AngularAcceleration | Native;\n }\n export interface MoveMaxOptions {\n waitUntilIdle?: boolean;\n velocity?: number;\n velocityUnit?: Velocity | AngularVelocity | Native;\n acceleration?: number;\n accelerationUnit?: Acceleration | AngularAcceleration | Native;\n }\n export interface MoveMinOptions {\n waitUntilIdle?: boolean;\n velocity?: number;\n velocityUnit?: Velocity | AngularVelocity | Native;\n acceleration?: number;\n accelerationUnit?: Acceleration | AngularAcceleration | Native;\n }\n export interface WaitUntilIdleOptions {\n throwErrorOnFault?: boolean;\n }\n export interface SetToleranceOptions {\n axisIndex?: number;\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"lockstep.js","sourceRoot":"","sources":["../../../src/ascii/lockstep.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 { Angle, Length, Native, AngularVelocity, Velocity, Acceleration, AngularAcceleration, Units, Time } from '../units';\nimport * as gateway from '../gateway';\nimport * as requests from '../requests';\nimport { LockstepAxes } from './lockstep_axes';\n\n/**\n * Represents a lockstep group with this ID on a device.\n * A lockstep group is a movement synchronized pair of axes on a device.\n * Requires at least Firmware 6.15 or 7.11.\n */\nexport class Lockstep {\n /**\n * Device that controls this lockstep group.\n */\n public get device(): Device {\n return this._device;\n }\n private _device: Device;\n\n /**\n * The number that identifies the lockstep group on the device.\n */\n public get lockstepGroupId(): number {\n return this._lockstepGroupId;\n }\n private _lockstepGroupId: number;\n\n constructor(device: Device, lockstepGroupId: number) {\n this._device = device;\n this._lockstepGroupId = lockstepGroupId;\n }\n\n /**\n * Activate the lockstep group on the axes specified.\n * @param axes The numbers of axes in the lockstep group.\n */\n public async enable(\n ...axes: number[]\n ): Promise<void> {\n const request: requests.LockstepEnableRequest & gateway.Message = {\n ...requests.LockstepEnableRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n lockstepGroupId: this.lockstepGroupId,\n axes: axes,\n toBinary() {\n return requests.LockstepEnableRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/lockstep_enable', request);\n }\n\n /**\n * Disable the lockstep group.\n */\n public async disable(): Promise<void> {\n const request: requests.LockstepDisableRequest & gateway.Message = {\n ...requests.LockstepDisableRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n lockstepGroupId: this.lockstepGroupId,\n toBinary() {\n return requests.LockstepDisableRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/lockstep_disable', request);\n }\n\n /**\n * Stops ongoing lockstep group movement. Decelerates until zero speed.\n * @param [options.waitUntilIdle=true] Determines whether function should return after the movement is finished or just started.\n */\n public async stop(\n options: Lockstep.StopOptions = {}\n ): Promise<void> {\n const {\n waitUntilIdle = true,\n } = options;\n const request: requests.LockstepStopRequest & gateway.Message = {\n ...requests.LockstepStopRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n lockstepGroupId: this.lockstepGroupId,\n waitUntilIdle: waitUntilIdle,\n toBinary() {\n return requests.LockstepStopRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/lockstep_stop', request);\n }\n\n /**\n * Retracts the axes of the lockstep group until a home associated with an individual axis is detected.\n * @param [options.waitUntilIdle=true] Determines whether function should return after the movement is finished or just started.\n */\n public async home(\n options: Lockstep.HomeOptions = {}\n ): Promise<void> {\n const {\n waitUntilIdle = true,\n } = options;\n const request: requests.LockstepHomeRequest & gateway.Message = {\n ...requests.LockstepHomeRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n lockstepGroupId: this.lockstepGroupId,\n waitUntilIdle: waitUntilIdle,\n toBinary() {\n return requests.LockstepHomeRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/lockstep_home', request);\n }\n\n /**\n * Move the first axis of the lockstep group to an absolute position.\n * The other axes in the lockstep group maintain their offsets throughout movement.\n * @param position Absolute position.\n * @param [unit=Units.NATIVE] Units of position.\n * @param [options.waitUntilIdle=true] Determines whether function should return after the movement is finished or just started.\n * @param [options.velocity=0] Movement velocity.\n * Default value of 0 indicates that the maxspeed setting is used instead.\n * Requires at least Firmware 7.25.\n * @param [options.velocityUnit=Units.NATIVE] Units of velocity.\n * @param [options.acceleration=0] Movement acceleration.\n * Default value of 0 indicates that the accel setting is used instead.\n * Requires at least Firmware 7.25.\n * @param [options.accelerationUnit=Units.NATIVE] Units of acceleration.\n */\n public async moveAbsolute(\n position: number,\n unit: Length | Angle | Native = Units.NATIVE,\n options: Lockstep.MoveAbsoluteOptions = {}\n ): Promise<void> {\n const {\n waitUntilIdle = true,\n velocity = 0,\n velocityUnit = Units.NATIVE,\n acceleration = 0,\n accelerationUnit = Units.NATIVE,\n } = options;\n const request: requests.LockstepMoveRequest & gateway.Message = {\n ...requests.LockstepMoveRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n lockstepGroupId: this.lockstepGroupId,\n type: requests.AxisMoveType.ABS,\n arg: position,\n unit: unit,\n waitUntilIdle: waitUntilIdle,\n velocity: velocity,\n velocityUnit: velocityUnit,\n acceleration: acceleration,\n accelerationUnit: accelerationUnit,\n toBinary() {\n return requests.LockstepMoveRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/lockstep_move', request);\n }\n\n /**\n * Move the first axis of the lockstep group to a position relative to its current position.\n * The other axes in the lockstep group maintain their offsets throughout movement.\n * @param position Relative position.\n * @param [unit=Units.NATIVE] Units of position.\n * @param [options.waitUntilIdle=true] Determines whether function should return after the movement is finished or just started.\n * @param [options.velocity=0] Movement velocity.\n * Default value of 0 indicates that the maxspeed setting is used instead.\n * Requires at least Firmware 7.25.\n * @param [options.velocityUnit=Units.NATIVE] Units of velocity.\n * @param [options.acceleration=0] Movement acceleration.\n * Default value of 0 indicates that the accel setting is used instead.\n * Requires at least Firmware 7.25.\n * @param [options.accelerationUnit=Units.NATIVE] Units of acceleration.\n */\n public async moveRelative(\n position: number,\n unit: Length | Angle | Native = Units.NATIVE,\n options: Lockstep.MoveRelativeOptions = {}\n ): Promise<void> {\n const {\n waitUntilIdle = true,\n velocity = 0,\n velocityUnit = Units.NATIVE,\n acceleration = 0,\n accelerationUnit = Units.NATIVE,\n } = options;\n const request: requests.LockstepMoveRequest & gateway.Message = {\n ...requests.LockstepMoveRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n lockstepGroupId: this.lockstepGroupId,\n type: requests.AxisMoveType.REL,\n arg: position,\n unit: unit,\n waitUntilIdle: waitUntilIdle,\n velocity: velocity,\n velocityUnit: velocityUnit,\n acceleration: acceleration,\n accelerationUnit: accelerationUnit,\n toBinary() {\n return requests.LockstepMoveRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/lockstep_move', request);\n }\n\n /**\n * Moves the first axis of the lockstep group at the specified speed.\n * The other axes in the lockstep group maintain their offsets throughout movement.\n * @param velocity Movement velocity.\n * @param [unit=Units.NATIVE] Units of velocity.\n * @param [options.acceleration=0] Movement acceleration.\n * Default value of 0 indicates that the accel setting is used instead.\n * Requires at least Firmware 7.25.\n * @param [options.accelerationUnit=Units.NATIVE] Units of acceleration.\n */\n public async moveVelocity(\n velocity: number,\n unit: Velocity | AngularVelocity | Native = Units.NATIVE,\n options: Lockstep.MoveVelocityOptions = {}\n ): Promise<void> {\n const {\n acceleration = 0,\n accelerationUnit = Units.NATIVE,\n } = options;\n const request: requests.LockstepMoveRequest & gateway.Message = {\n ...requests.LockstepMoveRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n lockstepGroupId: this.lockstepGroupId,\n type: requests.AxisMoveType.VEL,\n arg: velocity,\n unit: unit,\n acceleration: acceleration,\n accelerationUnit: accelerationUnit,\n toBinary() {\n return requests.LockstepMoveRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/lockstep_move', request);\n }\n\n /**\n * Moves the first axis of the lockstep group in a sinusoidal trajectory.\n * The other axes in the lockstep group maintain their offsets throughout movement.\n * @param amplitude Amplitude of the sinusoidal motion (half of the motion's peak-to-peak range).\n * @param amplitudeUnits Units of position.\n * @param period Period of the sinusoidal motion in milliseconds.\n * @param periodUnits Units of time.\n * @param [options.count=0] Number of sinusoidal cycles to complete.\n * Must be a multiple of 0.5\n * If count is not specified or set to 0, the axis will move indefinitely.\n * @param [options.waitUntilIdle=true] Determines whether function should return after the movement is finished or just started.\n */\n public async moveSin(\n amplitude: number,\n amplitudeUnits: Length | Angle | Native,\n period: number,\n periodUnits: Time | Native,\n options: Lockstep.MoveSinOptions = {}\n ): Promise<void> {\n const {\n count = 0,\n waitUntilIdle = true,\n } = options;\n const request: requests.LockstepMoveSinRequest & gateway.Message = {\n ...requests.LockstepMoveSinRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n lockstepGroupId: this.lockstepGroupId,\n amplitude: amplitude,\n amplitudeUnits: amplitudeUnits,\n period: period,\n periodUnits: periodUnits,\n count: count,\n waitUntilIdle: waitUntilIdle,\n toBinary() {\n return requests.LockstepMoveSinRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/lockstep_move_sin', request);\n }\n\n /**\n * Stops the lockstep group at the end of the sinusoidal trajectory for the first axis.\n * If the sinusoidal motion was started with an integer-plus-half cycle count,\n * the motion ends at the half-way point of the sinusoidal trajectory.\n * @param [options.waitUntilIdle=true] Determines whether function should return after the movement is finished.\n */\n public async moveSinStop(\n options: Lockstep.MoveSinStopOptions = {}\n ): Promise<void> {\n const {\n waitUntilIdle = true,\n } = options;\n const request: requests.LockstepStopRequest & gateway.Message = {\n ...requests.LockstepStopRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n lockstepGroupId: this.lockstepGroupId,\n waitUntilIdle: waitUntilIdle,\n toBinary() {\n return requests.LockstepStopRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/lockstep_move_sin_stop', request);\n }\n\n /**\n * Moves the axes to the maximum valid position.\n * The axes in the lockstep group maintain their offsets throughout movement.\n * Respects lim.max for all axes in the group.\n * @param [options.waitUntilIdle=true] Determines whether function should return after the movement is finished or just started.\n * @param [options.velocity=0] Movement velocity.\n * Default value of 0 indicates that the maxspeed setting is used instead.\n * Requires at least Firmware 7.25.\n * @param [options.velocityUnit=Units.NATIVE] Units of velocity.\n * @param [options.acceleration=0] Movement acceleration.\n * Default value of 0 indicates that the accel setting is used instead.\n * Requires at least Firmware 7.25.\n * @param [options.accelerationUnit=Units.NATIVE] Units of acceleration.\n */\n public async moveMax(\n options: Lockstep.MoveMaxOptions = {}\n ): Promise<void> {\n const {\n waitUntilIdle = true,\n velocity = 0,\n velocityUnit = Units.NATIVE,\n acceleration = 0,\n accelerationUnit = Units.NATIVE,\n } = options;\n const request: requests.LockstepMoveRequest & gateway.Message = {\n ...requests.LockstepMoveRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n lockstepGroupId: this.lockstepGroupId,\n type: requests.AxisMoveType.MAX,\n waitUntilIdle: waitUntilIdle,\n velocity: velocity,\n velocityUnit: velocityUnit,\n acceleration: acceleration,\n accelerationUnit: accelerationUnit,\n toBinary() {\n return requests.LockstepMoveRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/lockstep_move', request);\n }\n\n /**\n * Moves the axes to the minimum valid position.\n * The axes in the lockstep group maintain their offsets throughout movement.\n * Respects lim.min for all axes in the group.\n * @param [options.waitUntilIdle=true] Determines whether function should return after the movement is finished or just started.\n * @param [options.velocity=0] Movement velocity.\n * Default value of 0 indicates that the maxspeed setting is used instead.\n * Requires at least Firmware 7.25.\n * @param [options.velocityUnit=Units.NATIVE] Units of velocity.\n * @param [options.acceleration=0] Movement acceleration.\n * Default value of 0 indicates that the accel setting is used instead.\n * Requires at least Firmware 7.25.\n * @param [options.accelerationUnit=Units.NATIVE] Units of acceleration.\n */\n public async moveMin(\n options: Lockstep.MoveMinOptions = {}\n ): Promise<void> {\n const {\n waitUntilIdle = true,\n velocity = 0,\n velocityUnit = Units.NATIVE,\n acceleration = 0,\n accelerationUnit = Units.NATIVE,\n } = options;\n const request: requests.LockstepMoveRequest & gateway.Message = {\n ...requests.LockstepMoveRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n lockstepGroupId: this.lockstepGroupId,\n type: requests.AxisMoveType.MIN,\n waitUntilIdle: waitUntilIdle,\n velocity: velocity,\n velocityUnit: velocityUnit,\n acceleration: acceleration,\n accelerationUnit: accelerationUnit,\n toBinary() {\n return requests.LockstepMoveRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/lockstep_move', request);\n }\n\n /**\n * Waits until the lockstep group stops moving.\n * @param [options.throwErrorOnFault=true] Determines whether to throw error when fault is observed.\n */\n public async waitUntilIdle(\n options: Lockstep.WaitUntilIdleOptions = {}\n ): Promise<void> {\n const {\n throwErrorOnFault = true,\n } = options;\n const request: requests.LockstepWaitUntilIdleRequest & gateway.Message = {\n ...requests.LockstepWaitUntilIdleRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n lockstepGroupId: this.lockstepGroupId,\n throwErrorOnFault: throwErrorOnFault,\n toBinary() {\n return requests.LockstepWaitUntilIdleRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/lockstep_wait_until_idle', request);\n }\n\n /**\n * Returns bool indicating whether the lockstep group is executing a motion command.\n * @returns True if the axes are currently executing a motion command.\n */\n public async isBusy(): Promise<boolean> {\n const request: requests.LockstepEmptyRequest & gateway.Message = {\n ...requests.LockstepEmptyRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n lockstepGroupId: this.lockstepGroupId,\n toBinary() {\n return requests.LockstepEmptyRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.BoolResponse>(\n 'device/lockstep_is_busy',\n request,\n requests.BoolResponse.fromBinary);\n return response.value;\n }\n\n /**\n * @deprecated Use GetAxisNumbers instead.\n *\n * Gets the axes of the lockstep group.\n * @returns LockstepAxes instance which contains the axes numbers of the lockstep group.\n */\n public async getAxes(): Promise<LockstepAxes> {\n const request: requests.LockstepEmptyRequest & gateway.Message = {\n ...requests.LockstepEmptyRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n lockstepGroupId: this.lockstepGroupId,\n toBinary() {\n return requests.LockstepEmptyRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<LockstepAxes>(\n 'device/lockstep_get_axes',\n request,\n LockstepAxes.fromBinary);\n return response;\n }\n\n /**\n * Gets the axis numbers of the lockstep group.\n * @returns Axis numbers in order specified when enabling lockstep.\n */\n public async getAxisNumbers(): Promise<number[]> {\n const request: requests.LockstepEmptyRequest & gateway.Message = {\n ...requests.LockstepEmptyRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n lockstepGroupId: this.lockstepGroupId,\n toBinary() {\n return requests.LockstepEmptyRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.LockstepGetAxisNumbersResponse>(\n 'device/lockstep_get_axis_numbers',\n request,\n requests.LockstepGetAxisNumbersResponse.fromBinary);\n return response.axes;\n }\n\n /**\n * Gets the initial offsets of secondary axes of an enabled lockstep group.\n * @param [unit=Units.NATIVE] Units of position.\n * Uses primary axis unit conversion.\n * @returns Initial offset for each axis of the lockstep group.\n */\n public async getOffsets(\n unit: Length | Angle | Native = Units.NATIVE\n ): Promise<number[]> {\n const request: requests.LockstepGetRequest & gateway.Message = {\n ...requests.LockstepGetRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n lockstepGroupId: this.lockstepGroupId,\n unit: unit,\n toBinary() {\n return requests.LockstepGetRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.DoubleArrayResponse>(\n 'device/lockstep_get_offsets',\n request,\n requests.DoubleArrayResponse.fromBinary);\n return response.values;\n }\n\n /**\n * Gets the twists of secondary axes of an enabled lockstep group.\n * @param [unit=Units.NATIVE] Units of position.\n * Uses primary axis unit conversion.\n * @returns Difference between the initial offset and the actual offset for each axis of the lockstep group.\n */\n public async getTwists(\n unit: Length | Angle | Native = Units.NATIVE\n ): Promise<number[]> {\n const request: requests.LockstepGetRequest & gateway.Message = {\n ...requests.LockstepGetRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n lockstepGroupId: this.lockstepGroupId,\n unit: unit,\n toBinary() {\n return requests.LockstepGetRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.DoubleArrayResponse>(\n 'device/lockstep_get_twists',\n request,\n requests.DoubleArrayResponse.fromBinary);\n return response.values;\n }\n\n /**\n * Returns current position of the primary axis.\n * @param [unit=Units.NATIVE] Units of the position.\n * @returns Primary axis position.\n */\n public async getPosition(\n unit: Length | Angle | Native = Units.NATIVE\n ): Promise<number> {\n const request: requests.LockstepGetRequest & gateway.Message = {\n ...requests.LockstepGetRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n lockstepGroupId: this.lockstepGroupId,\n unit: unit,\n toBinary() {\n return requests.LockstepGetRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.DoubleResponse>(\n 'device/lockstep_get_pos',\n request,\n requests.DoubleResponse.fromBinary);\n return response.value;\n }\n\n /**\n * Sets lockstep twist tolerance.\n * Twist tolerances that do not match the system configuration can reduce performance or damage the system.\n * @param tolerance Twist tolerance.\n * @param [unit=Units.NATIVE] Units of the tolerance.\n * Uses primary axis unit conversion when setting to all axes,\n * otherwise uses specified secondary axis unit conversion.\n * @param [options.axisIndex=0] Optional index of a secondary axis to set the tolerance for.\n * If left empty or set to 0, the tolerance is set to all the secondary axes.\n */\n public async setTolerance(\n tolerance: number,\n unit: Length | Angle | Native = Units.NATIVE,\n options: Lockstep.SetToleranceOptions = {}\n ): Promise<void> {\n const {\n axisIndex = 0,\n } = options;\n const request: requests.LockstepSetRequest & gateway.Message = {\n ...requests.LockstepSetRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n lockstepGroupId: this.lockstepGroupId,\n value: tolerance,\n unit: unit,\n axisIndex: axisIndex,\n toBinary() {\n return requests.LockstepSetRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/lockstep_set_tolerance', request);\n }\n\n /**\n * Checks if the lockstep group is currently enabled on the device.\n * @returns True if a lockstep group with this ID is enabled on the device.\n */\n public async isEnabled(): Promise<boolean> {\n const request: requests.LockstepEmptyRequest & gateway.Message = {\n ...requests.LockstepEmptyRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n lockstepGroupId: this.lockstepGroupId,\n toBinary() {\n return requests.LockstepEmptyRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.BoolResponse>(\n 'device/lockstep_is_enabled',\n request,\n requests.BoolResponse.fromBinary);\n return response.value;\n }\n\n /**\n * Returns a string which represents the enabled lockstep group.\n * @returns String which represents the enabled lockstep group.\n */\n public toString(): string {\n const request: requests.LockstepEmptyRequest & gateway.Message = {\n ...requests.LockstepEmptyRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n lockstepGroupId: this.lockstepGroupId,\n toBinary() {\n return requests.LockstepEmptyRequest.toBinary(this);\n },\n };\n\n const response = gateway.callSync<requests.StringResponse>(\n 'device/lockstep_to_string',\n request,\n requests.StringResponse.fromBinary);\n return response.value;\n }\n}\n\nnamespace Lockstep {\n export interface StopOptions {\n waitUntilIdle?: boolean;\n }\n export interface HomeOptions {\n waitUntilIdle?: boolean;\n }\n export interface MoveAbsoluteOptions {\n waitUntilIdle?: boolean;\n velocity?: number;\n velocityUnit?: Velocity | AngularVelocity | Native;\n acceleration?: number;\n accelerationUnit?: Acceleration | AngularAcceleration | Native;\n }\n export interface MoveRelativeOptions {\n waitUntilIdle?: boolean;\n velocity?: number;\n velocityUnit?: Velocity | AngularVelocity | Native;\n acceleration?: number;\n accelerationUnit?: Acceleration | AngularAcceleration | Native;\n }\n export interface MoveVelocityOptions {\n acceleration?: number;\n accelerationUnit?: Acceleration | AngularAcceleration | Native;\n }\n export interface MoveSinOptions {\n count?: number;\n waitUntilIdle?: boolean;\n }\n export interface MoveSinStopOptions {\n waitUntilIdle?: boolean;\n }\n export interface MoveMaxOptions {\n waitUntilIdle?: boolean;\n velocity?: number;\n velocityUnit?: Velocity | AngularVelocity | Native;\n acceleration?: number;\n accelerationUnit?: Acceleration | AngularAcceleration | Native;\n }\n export interface MoveMinOptions {\n waitUntilIdle?: boolean;\n velocity?: number;\n velocityUnit?: Velocity | AngularVelocity | Native;\n acceleration?: number;\n accelerationUnit?: Acceleration | AngularAcceleration | Native;\n }\n export interface WaitUntilIdleOptions {\n throwErrorOnFault?: boolean;\n }\n export interface SetToleranceOptions {\n axisIndex?: number;\n }\n}\n"]}
|
package/dist/lib/library.js
CHANGED
package/dist/lib/library.js.map
CHANGED
|
@@ -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: '
|
|
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: '7.0.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"]}
|
|
@@ -38,8 +38,9 @@ export declare class Autofocus {
|
|
|
38
38
|
/**
|
|
39
39
|
* Moves the device until it's in focus.
|
|
40
40
|
* @param [scan=false] If true, the autofocus will approach from the limit moving until it's in range.
|
|
41
|
+
* @param [timeout=-1] Sets autofocus timeout duration in milliseconds.
|
|
41
42
|
*/
|
|
42
|
-
focusOnce(scan?: boolean): Promise<void>;
|
|
43
|
+
focusOnce(scan?: boolean, timeout?: number): Promise<void>;
|
|
43
44
|
/**
|
|
44
45
|
* Moves the focus axis continuously maintaining focus.
|
|
45
46
|
* Starts the autofocus control loop.
|
|
@@ -88,6 +89,7 @@ export declare class Autofocus {
|
|
|
88
89
|
synchronizeParameters(): Promise<void>;
|
|
89
90
|
/**
|
|
90
91
|
* Sets the parameters for the autofocus objective.
|
|
92
|
+
* Note that the method temporarily switches current objective to set the parameters.
|
|
91
93
|
* @param objective The objective (numbered from 1) to set the parameters for.
|
|
92
94
|
* If your microscope has only one objective, use value of 1.
|
|
93
95
|
* @param parameters The parameters for the autofocus objective.
|
|
@@ -97,6 +99,7 @@ export declare class Autofocus {
|
|
|
97
99
|
* Returns the parameters for the autofocus objective.
|
|
98
100
|
* @param objective The objective (numbered from 1) to get the parameters for.
|
|
99
101
|
* If your microscope has only one objective, use value of 1.
|
|
102
|
+
* Note that the method temporarily switches current objective to get the parameters.
|
|
100
103
|
* @returns The parameters for the autofocus objective.
|
|
101
104
|
*/
|
|
102
105
|
getObjectiveParameters(objective: number): Promise<NamedParameter[]>;
|
|
@@ -1 +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
|
|
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;;;;OAIG;IACU,SAAS,CACpB,IAAI,GAAE,OAAe,EACrB,OAAO,GAAE,MAAW,GACnB,OAAO,CAAC,IAAI,CAAC;IAmBhB;;;;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;;;;;;OAMG;IACU,sBAAsB,CACjC,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,cAAc,EAAE,GAC3B,OAAO,CAAC,IAAI,CAAC;IAkBhB;;;;;;OAMG;IACU,sBAAsB,CACjC,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,cAAc,EAAE,CAAC;IAqB5B;;;OAGG;IACI,QAAQ,IAAI,MAAM;CAmB1B"}
|
|
@@ -100,8 +100,9 @@ class Autofocus {
|
|
|
100
100
|
/**
|
|
101
101
|
* Moves the device until it's in focus.
|
|
102
102
|
* @param [scan=false] If true, the autofocus will approach from the limit moving until it's in range.
|
|
103
|
+
* @param [timeout=-1] Sets autofocus timeout duration in milliseconds.
|
|
103
104
|
*/
|
|
104
|
-
async focusOnce(scan = false) {
|
|
105
|
+
async focusOnce(scan = false, timeout = -1) {
|
|
105
106
|
var _a, _b;
|
|
106
107
|
const request = {
|
|
107
108
|
...requests.AutofocusFocusRequest.DEFAULT,
|
|
@@ -112,6 +113,7 @@ class Autofocus {
|
|
|
112
113
|
turretAddress: (_b = (_a = this.objectiveTurret) === null || _a === void 0 ? void 0 : _a.deviceAddress) !== null && _b !== void 0 ? _b : 0,
|
|
113
114
|
once: true,
|
|
114
115
|
scan: scan,
|
|
116
|
+
timeout: timeout,
|
|
115
117
|
toBinary() {
|
|
116
118
|
return requests.AutofocusFocusRequest.toBinary(this);
|
|
117
119
|
},
|
|
@@ -264,6 +266,7 @@ class Autofocus {
|
|
|
264
266
|
}
|
|
265
267
|
/**
|
|
266
268
|
* Sets the parameters for the autofocus objective.
|
|
269
|
+
* Note that the method temporarily switches current objective to set the parameters.
|
|
267
270
|
* @param objective The objective (numbered from 1) to set the parameters for.
|
|
268
271
|
* If your microscope has only one objective, use value of 1.
|
|
269
272
|
* @param parameters The parameters for the autofocus objective.
|
|
@@ -289,6 +292,7 @@ class Autofocus {
|
|
|
289
292
|
* Returns the parameters for the autofocus objective.
|
|
290
293
|
* @param objective The objective (numbered from 1) to get the parameters for.
|
|
291
294
|
* If your microscope has only one objective, use value of 1.
|
|
295
|
+
* Note that the method temporarily switches current objective to get the parameters.
|
|
292
296
|
* @returns The parameters for the autofocus objective.
|
|
293
297
|
*/
|
|
294
298
|
async getObjectiveParameters(objective) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"autofocus.js","sourceRoot":"","sources":["../../../src/microscopy/autofocus.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 { Device } from '../ascii/device';\nimport { Axis } from '../ascii/axis';\nimport { Angle, Length, Native, Units } from '../units';\nimport { NamedParameter } from '../named_parameter';\nimport { AutofocusStatus } from './autofocus_status';\n\n\n/**\n * A generic autofocus device.\n */\nexport class Autofocus {\n /**\n * The identification of external device providing the capability.\n */\n public get providerId(): number {\n return this._providerId;\n }\n private _providerId: number;\n\n /**\n * The focus axis.\n */\n public get focusAxis(): Axis {\n return this._focusAxis;\n }\n private _focusAxis: Axis;\n\n /**\n * The objective turret device if the microscope has one.\n */\n public get objectiveTurret(): Device | undefined {\n return this._objectiveTurret;\n }\n private _objectiveTurret: Device | undefined;\n\n /**\n * Creates instance of `Autofocus` based on the given provider id.\n */\n constructor(providerId: number, focusAxis: Axis, objectiveTurret?: Device) {\n this._providerId = providerId;\n this._focusAxis = focusAxis;\n this._objectiveTurret = objectiveTurret;\n }\n\n /**\n * Sets the current focus to be target for the autofocus control loop.\n */\n public async setFocusZero(): Promise<void> {\n const request: requests.EmptyAutofocusRequest & gateway.Message = {\n ...requests.EmptyAutofocusRequest.DEFAULT,\n providerId: this.providerId,\n interfaceId: this.focusAxis.device.connection.interfaceId,\n focusAddress: this.focusAxis.device.deviceAddress,\n focusAxis: this.focusAxis.axisNumber,\n turretAddress: this.objectiveTurret?.deviceAddress ?? 0,\n toBinary() {\n return requests.EmptyAutofocusRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('autofocus/set_zero', request);\n }\n\n /**\n * Returns the status of the autofocus.\n * @returns The status of the autofocus.\n */\n public async getStatus(): Promise<AutofocusStatus> {\n const request: requests.EmptyAutofocusRequest & gateway.Message = {\n ...requests.EmptyAutofocusRequest.DEFAULT,\n providerId: this.providerId,\n interfaceId: this.focusAxis.device.connection.interfaceId,\n focusAddress: this.focusAxis.device.deviceAddress,\n focusAxis: this.focusAxis.axisNumber,\n turretAddress: this.objectiveTurret?.deviceAddress ?? 0,\n toBinary() {\n return requests.EmptyAutofocusRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.AutofocusGetStatusResponse>(\n 'autofocus/get_status',\n request,\n requests.AutofocusGetStatusResponse.fromBinary);\n return response.status;\n }\n\n /**\n * Moves the device until it's in focus.\n * @param [scan=false] If true, the autofocus will approach from the limit moving until it's in range.\n */\n public async focusOnce(\n scan: boolean = false\n ): Promise<void> {\n const request: requests.AutofocusFocusRequest & gateway.Message = {\n ...requests.AutofocusFocusRequest.DEFAULT,\n providerId: this.providerId,\n interfaceId: this.focusAxis.device.connection.interfaceId,\n focusAddress: this.focusAxis.device.deviceAddress,\n focusAxis: this.focusAxis.axisNumber,\n turretAddress: this.objectiveTurret?.deviceAddress ?? 0,\n once: true,\n scan: scan,\n toBinary() {\n return requests.AutofocusFocusRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('autofocus/focus_once', request);\n }\n\n /**\n * Moves the focus axis continuously maintaining focus.\n * Starts the autofocus control loop.\n * Note that the control loop may stop if the autofocus comes out of range or a movement error occurs.\n */\n public async startFocusLoop(): Promise<void> {\n const request: requests.AutofocusFocusRequest & gateway.Message = {\n ...requests.AutofocusFocusRequest.DEFAULT,\n providerId: this.providerId,\n interfaceId: this.focusAxis.device.connection.interfaceId,\n focusAddress: this.focusAxis.device.deviceAddress,\n focusAxis: this.focusAxis.axisNumber,\n turretAddress: this.objectiveTurret?.deviceAddress ?? 0,\n toBinary() {\n return requests.AutofocusFocusRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('autofocus/start_focus_loop', request);\n }\n\n /**\n * Stops autofocus control loop.\n * If the focus axis already stopped moving because of an error, an exception will be thrown.\n */\n public async stopFocusLoop(): Promise<void> {\n const request: requests.EmptyAutofocusRequest & gateway.Message = {\n ...requests.EmptyAutofocusRequest.DEFAULT,\n providerId: this.providerId,\n interfaceId: this.focusAxis.device.connection.interfaceId,\n focusAddress: this.focusAxis.device.deviceAddress,\n focusAxis: this.focusAxis.axisNumber,\n turretAddress: this.objectiveTurret?.deviceAddress ?? 0,\n toBinary() {\n return requests.EmptyAutofocusRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('autofocus/stop_focus_loop', request);\n }\n\n /**\n * Gets the lower motion limit for the autofocus control loop.\n * Gets motion.tracking.limit.min setting of the focus axis.\n * @param [unit=Units.NATIVE] The units of the limit.\n * @returns Limit value.\n */\n public async getLimitMin(\n unit: Length | Angle | Native = Units.NATIVE\n ): Promise<number> {\n const request: requests.DeviceGetSettingRequest & gateway.Message = {\n ...requests.DeviceGetSettingRequest.DEFAULT,\n interfaceId: this.focusAxis.device.connection.interfaceId,\n device: this.focusAxis.device.deviceAddress,\n axis: this.focusAxis.axisNumber,\n setting: 'motion.tracking.limit.min',\n unit: unit,\n toBinary() {\n return requests.DeviceGetSettingRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.DoubleResponse>(\n 'device/get_setting',\n request,\n requests.DoubleResponse.fromBinary);\n return response.value;\n }\n\n /**\n * Gets the upper motion limit for the autofocus control loop.\n * Gets motion.tracking.limit.max setting of the focus axis.\n * @param [unit=Units.NATIVE] The units of the limit.\n * @returns Limit value.\n */\n public async getLimitMax(\n unit: Length | Angle | Native = Units.NATIVE\n ): Promise<number> {\n const request: requests.DeviceGetSettingRequest & gateway.Message = {\n ...requests.DeviceGetSettingRequest.DEFAULT,\n interfaceId: this.focusAxis.device.connection.interfaceId,\n device: this.focusAxis.device.deviceAddress,\n axis: this.focusAxis.axisNumber,\n setting: 'motion.tracking.limit.max',\n unit: unit,\n toBinary() {\n return requests.DeviceGetSettingRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.DoubleResponse>(\n 'device/get_setting',\n request,\n requests.DoubleResponse.fromBinary);\n return response.value;\n }\n\n /**\n * Sets the lower motion limit for the autofocus control loop.\n * Use the limits to prevent the focus axis from crashing into the sample.\n * Changes motion.tracking.limit.min setting of the focus axis.\n * @param limit The lower limit of the focus axis.\n * @param [unit=Units.NATIVE] The units of the limit.\n */\n public async setLimitMin(\n limit: number,\n unit: Length | Angle | Native = Units.NATIVE\n ): Promise<void> {\n const request: requests.DeviceSetSettingRequest & gateway.Message = {\n ...requests.DeviceSetSettingRequest.DEFAULT,\n interfaceId: this.focusAxis.device.connection.interfaceId,\n device: this.focusAxis.device.deviceAddress,\n axis: this.focusAxis.axisNumber,\n setting: 'motion.tracking.limit.min',\n value: limit,\n unit: unit,\n toBinary() {\n return requests.DeviceSetSettingRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/set_setting', request);\n }\n\n /**\n * Sets the upper motion limit for the autofocus control loop.\n * Use the limits to prevent the focus axis from crashing into the sample.\n * Changes motion.tracking.limit.max setting of the focus axis.\n * @param limit The upper limit of the focus axis.\n * @param [unit=Units.NATIVE] The units of the limit.\n */\n public async setLimitMax(\n limit: number,\n unit: Length | Angle | Native = Units.NATIVE\n ): Promise<void> {\n const request: requests.DeviceSetSettingRequest & gateway.Message = {\n ...requests.DeviceSetSettingRequest.DEFAULT,\n interfaceId: this.focusAxis.device.connection.interfaceId,\n device: this.focusAxis.device.deviceAddress,\n axis: this.focusAxis.axisNumber,\n setting: 'motion.tracking.limit.max',\n value: limit,\n unit: unit,\n toBinary() {\n return requests.DeviceSetSettingRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/set_setting', request);\n }\n\n /**\n * Typically, the control loop parameters and objective are kept synchronized by the library.\n * If the parameters or current objective changes outside of the library, call this method to synchronize them.\n */\n public async synchronizeParameters(): Promise<void> {\n const request: requests.EmptyAutofocusRequest & gateway.Message = {\n ...requests.EmptyAutofocusRequest.DEFAULT,\n providerId: this.providerId,\n interfaceId: this.focusAxis.device.connection.interfaceId,\n focusAddress: this.focusAxis.device.deviceAddress,\n focusAxis: this.focusAxis.axisNumber,\n turretAddress: this.objectiveTurret?.deviceAddress ?? 0,\n toBinary() {\n return requests.EmptyAutofocusRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('autofocus/sync_params', request);\n }\n\n /**\n * Sets the parameters for the autofocus objective.\n * @param objective The objective (numbered from 1) to set the parameters for.\n * If your microscope has only one objective, use value of 1.\n * @param parameters The parameters for the autofocus objective.\n */\n public async setObjectiveParameters(\n objective: number,\n parameters: NamedParameter[]\n ): Promise<void> {\n const request: requests.AutofocusSetObjectiveParamsRequest & gateway.Message = {\n ...requests.AutofocusSetObjectiveParamsRequest.DEFAULT,\n providerId: this.providerId,\n interfaceId: this.focusAxis.device.connection.interfaceId,\n focusAddress: this.focusAxis.device.deviceAddress,\n focusAxis: this.focusAxis.axisNumber,\n turretAddress: this.objectiveTurret?.deviceAddress ?? 0,\n objective: objective,\n parameters: parameters,\n toBinary() {\n return requests.AutofocusSetObjectiveParamsRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('autofocus/set_objective_params', request);\n }\n\n /**\n * Returns the parameters for the autofocus objective.\n * @param objective The objective (numbered from 1) to get the parameters for.\n * If your microscope has only one objective, use value of 1.\n * @returns The parameters for the autofocus objective.\n */\n public async getObjectiveParameters(\n objective: number\n ): Promise<NamedParameter[]> {\n const request: requests.AutofocusGetObjectiveParamsRequest & gateway.Message = {\n ...requests.AutofocusGetObjectiveParamsRequest.DEFAULT,\n providerId: this.providerId,\n interfaceId: this.focusAxis.device.connection.interfaceId,\n focusAddress: this.focusAxis.device.deviceAddress,\n focusAxis: this.focusAxis.axisNumber,\n turretAddress: this.objectiveTurret?.deviceAddress ?? 0,\n objective: objective,\n toBinary() {\n return requests.AutofocusGetObjectiveParamsRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.AutofocusGetObjectiveParamsResponse>(\n 'autofocus/get_objective_params',\n request,\n requests.AutofocusGetObjectiveParamsResponse.fromBinary);\n return response.parameters;\n }\n\n /**\n * Returns a string that represents the autofocus.\n * @returns A string that represents the autofocus.\n */\n public toString(): string {\n const request: requests.EmptyAutofocusRequest & gateway.Message = {\n ...requests.EmptyAutofocusRequest.DEFAULT,\n providerId: this.providerId,\n interfaceId: this.focusAxis.device.connection.interfaceId,\n focusAddress: this.focusAxis.device.deviceAddress,\n focusAxis: this.focusAxis.axisNumber,\n turretAddress: this.objectiveTurret?.deviceAddress ?? 0,\n toBinary() {\n return requests.EmptyAutofocusRequest.toBinary(this);\n },\n };\n\n const response = gateway.callSync<requests.StringResponse>(\n 'autofocus/to_string',\n request,\n requests.StringResponse.fromBinary);\n return response.value;\n }\n}\n\nnamespace Autofocus {\n}\n"]}
|
|
1
|
+
{"version":3,"file":"autofocus.js","sourceRoot":"","sources":["../../../src/microscopy/autofocus.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 { Device } from '../ascii/device';\nimport { Axis } from '../ascii/axis';\nimport { Angle, Length, Native, Units } from '../units';\nimport { NamedParameter } from '../named_parameter';\nimport { AutofocusStatus } from './autofocus_status';\n\n\n/**\n * A generic autofocus device.\n */\nexport class Autofocus {\n /**\n * The identification of external device providing the capability.\n */\n public get providerId(): number {\n return this._providerId;\n }\n private _providerId: number;\n\n /**\n * The focus axis.\n */\n public get focusAxis(): Axis {\n return this._focusAxis;\n }\n private _focusAxis: Axis;\n\n /**\n * The objective turret device if the microscope has one.\n */\n public get objectiveTurret(): Device | undefined {\n return this._objectiveTurret;\n }\n private _objectiveTurret: Device | undefined;\n\n /**\n * Creates instance of `Autofocus` based on the given provider id.\n */\n constructor(providerId: number, focusAxis: Axis, objectiveTurret?: Device) {\n this._providerId = providerId;\n this._focusAxis = focusAxis;\n this._objectiveTurret = objectiveTurret;\n }\n\n /**\n * Sets the current focus to be target for the autofocus control loop.\n */\n public async setFocusZero(): Promise<void> {\n const request: requests.EmptyAutofocusRequest & gateway.Message = {\n ...requests.EmptyAutofocusRequest.DEFAULT,\n providerId: this.providerId,\n interfaceId: this.focusAxis.device.connection.interfaceId,\n focusAddress: this.focusAxis.device.deviceAddress,\n focusAxis: this.focusAxis.axisNumber,\n turretAddress: this.objectiveTurret?.deviceAddress ?? 0,\n toBinary() {\n return requests.EmptyAutofocusRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('autofocus/set_zero', request);\n }\n\n /**\n * Returns the status of the autofocus.\n * @returns The status of the autofocus.\n */\n public async getStatus(): Promise<AutofocusStatus> {\n const request: requests.EmptyAutofocusRequest & gateway.Message = {\n ...requests.EmptyAutofocusRequest.DEFAULT,\n providerId: this.providerId,\n interfaceId: this.focusAxis.device.connection.interfaceId,\n focusAddress: this.focusAxis.device.deviceAddress,\n focusAxis: this.focusAxis.axisNumber,\n turretAddress: this.objectiveTurret?.deviceAddress ?? 0,\n toBinary() {\n return requests.EmptyAutofocusRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.AutofocusGetStatusResponse>(\n 'autofocus/get_status',\n request,\n requests.AutofocusGetStatusResponse.fromBinary);\n return response.status;\n }\n\n /**\n * Moves the device until it's in focus.\n * @param [scan=false] If true, the autofocus will approach from the limit moving until it's in range.\n * @param [timeout=-1] Sets autofocus timeout duration in milliseconds.\n */\n public async focusOnce(\n scan: boolean = false,\n timeout: number = -1\n ): Promise<void> {\n const request: requests.AutofocusFocusRequest & gateway.Message = {\n ...requests.AutofocusFocusRequest.DEFAULT,\n providerId: this.providerId,\n interfaceId: this.focusAxis.device.connection.interfaceId,\n focusAddress: this.focusAxis.device.deviceAddress,\n focusAxis: this.focusAxis.axisNumber,\n turretAddress: this.objectiveTurret?.deviceAddress ?? 0,\n once: true,\n scan: scan,\n timeout: timeout,\n toBinary() {\n return requests.AutofocusFocusRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('autofocus/focus_once', request);\n }\n\n /**\n * Moves the focus axis continuously maintaining focus.\n * Starts the autofocus control loop.\n * Note that the control loop may stop if the autofocus comes out of range or a movement error occurs.\n */\n public async startFocusLoop(): Promise<void> {\n const request: requests.AutofocusFocusRequest & gateway.Message = {\n ...requests.AutofocusFocusRequest.DEFAULT,\n providerId: this.providerId,\n interfaceId: this.focusAxis.device.connection.interfaceId,\n focusAddress: this.focusAxis.device.deviceAddress,\n focusAxis: this.focusAxis.axisNumber,\n turretAddress: this.objectiveTurret?.deviceAddress ?? 0,\n toBinary() {\n return requests.AutofocusFocusRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('autofocus/start_focus_loop', request);\n }\n\n /**\n * Stops autofocus control loop.\n * If the focus axis already stopped moving because of an error, an exception will be thrown.\n */\n public async stopFocusLoop(): Promise<void> {\n const request: requests.EmptyAutofocusRequest & gateway.Message = {\n ...requests.EmptyAutofocusRequest.DEFAULT,\n providerId: this.providerId,\n interfaceId: this.focusAxis.device.connection.interfaceId,\n focusAddress: this.focusAxis.device.deviceAddress,\n focusAxis: this.focusAxis.axisNumber,\n turretAddress: this.objectiveTurret?.deviceAddress ?? 0,\n toBinary() {\n return requests.EmptyAutofocusRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('autofocus/stop_focus_loop', request);\n }\n\n /**\n * Gets the lower motion limit for the autofocus control loop.\n * Gets motion.tracking.limit.min setting of the focus axis.\n * @param [unit=Units.NATIVE] The units of the limit.\n * @returns Limit value.\n */\n public async getLimitMin(\n unit: Length | Angle | Native = Units.NATIVE\n ): Promise<number> {\n const request: requests.DeviceGetSettingRequest & gateway.Message = {\n ...requests.DeviceGetSettingRequest.DEFAULT,\n interfaceId: this.focusAxis.device.connection.interfaceId,\n device: this.focusAxis.device.deviceAddress,\n axis: this.focusAxis.axisNumber,\n setting: 'motion.tracking.limit.min',\n unit: unit,\n toBinary() {\n return requests.DeviceGetSettingRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.DoubleResponse>(\n 'device/get_setting',\n request,\n requests.DoubleResponse.fromBinary);\n return response.value;\n }\n\n /**\n * Gets the upper motion limit for the autofocus control loop.\n * Gets motion.tracking.limit.max setting of the focus axis.\n * @param [unit=Units.NATIVE] The units of the limit.\n * @returns Limit value.\n */\n public async getLimitMax(\n unit: Length | Angle | Native = Units.NATIVE\n ): Promise<number> {\n const request: requests.DeviceGetSettingRequest & gateway.Message = {\n ...requests.DeviceGetSettingRequest.DEFAULT,\n interfaceId: this.focusAxis.device.connection.interfaceId,\n device: this.focusAxis.device.deviceAddress,\n axis: this.focusAxis.axisNumber,\n setting: 'motion.tracking.limit.max',\n unit: unit,\n toBinary() {\n return requests.DeviceGetSettingRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.DoubleResponse>(\n 'device/get_setting',\n request,\n requests.DoubleResponse.fromBinary);\n return response.value;\n }\n\n /**\n * Sets the lower motion limit for the autofocus control loop.\n * Use the limits to prevent the focus axis from crashing into the sample.\n * Changes motion.tracking.limit.min setting of the focus axis.\n * @param limit The lower limit of the focus axis.\n * @param [unit=Units.NATIVE] The units of the limit.\n */\n public async setLimitMin(\n limit: number,\n unit: Length | Angle | Native = Units.NATIVE\n ): Promise<void> {\n const request: requests.DeviceSetSettingRequest & gateway.Message = {\n ...requests.DeviceSetSettingRequest.DEFAULT,\n interfaceId: this.focusAxis.device.connection.interfaceId,\n device: this.focusAxis.device.deviceAddress,\n axis: this.focusAxis.axisNumber,\n setting: 'motion.tracking.limit.min',\n value: limit,\n unit: unit,\n toBinary() {\n return requests.DeviceSetSettingRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/set_setting', request);\n }\n\n /**\n * Sets the upper motion limit for the autofocus control loop.\n * Use the limits to prevent the focus axis from crashing into the sample.\n * Changes motion.tracking.limit.max setting of the focus axis.\n * @param limit The upper limit of the focus axis.\n * @param [unit=Units.NATIVE] The units of the limit.\n */\n public async setLimitMax(\n limit: number,\n unit: Length | Angle | Native = Units.NATIVE\n ): Promise<void> {\n const request: requests.DeviceSetSettingRequest & gateway.Message = {\n ...requests.DeviceSetSettingRequest.DEFAULT,\n interfaceId: this.focusAxis.device.connection.interfaceId,\n device: this.focusAxis.device.deviceAddress,\n axis: this.focusAxis.axisNumber,\n setting: 'motion.tracking.limit.max',\n value: limit,\n unit: unit,\n toBinary() {\n return requests.DeviceSetSettingRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/set_setting', request);\n }\n\n /**\n * Typically, the control loop parameters and objective are kept synchronized by the library.\n * If the parameters or current objective changes outside of the library, call this method to synchronize them.\n */\n public async synchronizeParameters(): Promise<void> {\n const request: requests.EmptyAutofocusRequest & gateway.Message = {\n ...requests.EmptyAutofocusRequest.DEFAULT,\n providerId: this.providerId,\n interfaceId: this.focusAxis.device.connection.interfaceId,\n focusAddress: this.focusAxis.device.deviceAddress,\n focusAxis: this.focusAxis.axisNumber,\n turretAddress: this.objectiveTurret?.deviceAddress ?? 0,\n toBinary() {\n return requests.EmptyAutofocusRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('autofocus/sync_params', request);\n }\n\n /**\n * Sets the parameters for the autofocus objective.\n * Note that the method temporarily switches current objective to set the parameters.\n * @param objective The objective (numbered from 1) to set the parameters for.\n * If your microscope has only one objective, use value of 1.\n * @param parameters The parameters for the autofocus objective.\n */\n public async setObjectiveParameters(\n objective: number,\n parameters: NamedParameter[]\n ): Promise<void> {\n const request: requests.AutofocusSetObjectiveParamsRequest & gateway.Message = {\n ...requests.AutofocusSetObjectiveParamsRequest.DEFAULT,\n providerId: this.providerId,\n interfaceId: this.focusAxis.device.connection.interfaceId,\n focusAddress: this.focusAxis.device.deviceAddress,\n focusAxis: this.focusAxis.axisNumber,\n turretAddress: this.objectiveTurret?.deviceAddress ?? 0,\n objective: objective,\n parameters: parameters,\n toBinary() {\n return requests.AutofocusSetObjectiveParamsRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('autofocus/set_objective_params', request);\n }\n\n /**\n * Returns the parameters for the autofocus objective.\n * @param objective The objective (numbered from 1) to get the parameters for.\n * If your microscope has only one objective, use value of 1.\n * Note that the method temporarily switches current objective to get the parameters.\n * @returns The parameters for the autofocus objective.\n */\n public async getObjectiveParameters(\n objective: number\n ): Promise<NamedParameter[]> {\n const request: requests.AutofocusGetObjectiveParamsRequest & gateway.Message = {\n ...requests.AutofocusGetObjectiveParamsRequest.DEFAULT,\n providerId: this.providerId,\n interfaceId: this.focusAxis.device.connection.interfaceId,\n focusAddress: this.focusAxis.device.deviceAddress,\n focusAxis: this.focusAxis.axisNumber,\n turretAddress: this.objectiveTurret?.deviceAddress ?? 0,\n objective: objective,\n toBinary() {\n return requests.AutofocusGetObjectiveParamsRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.AutofocusGetObjectiveParamsResponse>(\n 'autofocus/get_objective_params',\n request,\n requests.AutofocusGetObjectiveParamsResponse.fromBinary);\n return response.parameters;\n }\n\n /**\n * Returns a string that represents the autofocus.\n * @returns A string that represents the autofocus.\n */\n public toString(): string {\n const request: requests.EmptyAutofocusRequest & gateway.Message = {\n ...requests.EmptyAutofocusRequest.DEFAULT,\n providerId: this.providerId,\n interfaceId: this.focusAxis.device.connection.interfaceId,\n focusAddress: this.focusAxis.device.deviceAddress,\n focusAxis: this.focusAxis.axisNumber,\n turretAddress: this.objectiveTurret?.deviceAddress ?? 0,\n toBinary() {\n return requests.EmptyAutofocusRequest.toBinary(this);\n },\n };\n\n const response = gateway.callSync<requests.StringResponse>(\n 'autofocus/to_string',\n request,\n requests.StringResponse.fromBinary);\n return response.value;\n }\n}\n\nnamespace Autofocus {\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"autofocus_focus_request.d.ts","sourceRoot":"","sources":["../../../src/requests/autofocus_focus_request.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,qBAAqB;IACpC,UAAU,EAAE,MAAM,CAAC;IAEnB,WAAW,EAAE,MAAM,CAAC;IAEpB,YAAY,EAAE,MAAM,CAAC;IAErB,SAAS,EAAE,MAAM,CAAC;IAElB,aAAa,EAAE,MAAM,CAAC;IAEtB,IAAI,EAAE,OAAO,CAAC;IAEd,IAAI,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"autofocus_focus_request.d.ts","sourceRoot":"","sources":["../../../src/requests/autofocus_focus_request.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,qBAAqB;IACpC,UAAU,EAAE,MAAM,CAAC;IAEnB,WAAW,EAAE,MAAM,CAAC;IAEpB,YAAY,EAAE,MAAM,CAAC;IAErB,SAAS,EAAE,MAAM,CAAC;IAElB,aAAa,EAAE,MAAM,CAAC;IAEtB,IAAI,EAAE,OAAO,CAAC;IAEd,IAAI,EAAE,OAAO,CAAC;IAEd,OAAO,EAAE,MAAM,CAAC;CAEjB;AAED,eAAO,MAAM,qBAAqB;yBACX,UAAU,KAAG,qBAAqB;sBACrC,qBAAqB,KAAG,UAAU;;sBAWlC,qBAAqB,KAAG,qBAAqB;CAchE,CAAC"}
|
|
@@ -15,6 +15,7 @@ exports.AutofocusFocusRequest = {
|
|
|
15
15
|
turretAddress: 0,
|
|
16
16
|
scan: false,
|
|
17
17
|
once: false,
|
|
18
|
+
timeout: 0,
|
|
18
19
|
}),
|
|
19
20
|
sanitize: (value) => {
|
|
20
21
|
if (value == null) {
|
|
@@ -31,6 +32,7 @@ exports.AutofocusFocusRequest = {
|
|
|
31
32
|
turretAddress: sanitizer_1.sanitizer.sanitizeInt(value.turretAddress, 'turretAddress'),
|
|
32
33
|
scan: sanitizer_1.sanitizer.sanitizeBool(value.scan, 'scan'),
|
|
33
34
|
once: sanitizer_1.sanitizer.sanitizeBool(value.once, 'once'),
|
|
35
|
+
timeout: sanitizer_1.sanitizer.sanitizeInt(value.timeout, 'timeout'),
|
|
34
36
|
};
|
|
35
37
|
},
|
|
36
38
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"autofocus_focus_request.js","sourceRoot":"","sources":["../../../src/requests/autofocus_focus_request.ts"],"names":[],"mappings":";;;AAAA,oDAAoD;AACpD,+BAA4B;AAC5B,oDAAiD;
|
|
1
|
+
{"version":3,"file":"autofocus_focus_request.js","sourceRoot":"","sources":["../../../src/requests/autofocus_focus_request.ts"],"names":[],"mappings":";;;AAAA,oDAAoD;AACpD,+BAA4B;AAC5B,oDAAiD;AAqBpC,QAAA,qBAAqB,GAAG;IACnC,UAAU,EAAE,CAAC,MAAkB,EAAyB,EAAE,CAAC,WAAI,CAAC,WAAW,CAAC,MAAM,CAA0B;IAC5G,QAAQ,EAAE,CAAC,KAA4B,EAAc,EAAE,CAAC,WAAI,CAAC,SAAS,CAAC,6BAAqB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC7G,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC;QACrB,UAAU,EAAE,CAAC;QACb,WAAW,EAAE,CAAC;QACd,YAAY,EAAE,CAAC;QACf,SAAS,EAAE,CAAC;QACZ,aAAa,EAAE,CAAC;QAChB,IAAI,EAAE,KAAK;QACX,IAAI,EAAE,KAAK;QACX,OAAO,EAAE,CAAC;KACX,CAAoC;IACrC,QAAQ,EAAE,CAAC,KAA4B,EAAyB,EAAE;QAChE,IAAI,KAAK,IAAI,IAAI,EAAE,CAAC;YAAC,MAAM,IAAI,SAAS,CAAC,kEAAkE,CAAC,CAAA;QAAC,CAAC;QAC9G,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAAC,MAAM,IAAI,SAAS,CAAC,iDAAiD,OAAO,KAAK,GAAG,CAAC,CAAA;QAAC,CAAC;QACxH,OAAO;YACL,UAAU,EAAE,qBAAS,CAAC,WAAW,CAAC,KAAK,CAAC,UAAU,EAAE,YAAY,CAAC;YACjE,WAAW,EAAE,qBAAS,CAAC,WAAW,CAAC,KAAK,CAAC,WAAW,EAAE,aAAa,CAAC;YACpE,YAAY,EAAE,qBAAS,CAAC,WAAW,CAAC,KAAK,CAAC,YAAY,EAAE,cAAc,CAAC;YACvE,SAAS,EAAE,qBAAS,CAAC,WAAW,CAAC,KAAK,CAAC,SAAS,EAAE,WAAW,CAAC;YAC9D,aAAa,EAAE,qBAAS,CAAC,WAAW,CAAC,KAAK,CAAC,aAAa,EAAE,eAAe,CAAC;YAC1E,IAAI,EAAE,qBAAS,CAAC,YAAY,CAAC,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC;YAChD,IAAI,EAAE,qBAAS,CAAC,YAAY,CAAC,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC;YAChD,OAAO,EAAE,qBAAS,CAAC,WAAW,CAAC,KAAK,CAAC,OAAO,EAAE,SAAS,CAAC;SACzD,CAAC;IACJ,CAAC;CACF,CAAC","sourcesContent":["/* This file is generated. Do not modify by hand. */\nimport { BSON } from 'bson';\nimport { sanitizer } from '../gateway/sanitizer';\n\nexport interface AutofocusFocusRequest {\n providerId: number;\n\n interfaceId: number;\n\n focusAddress: number;\n\n focusAxis: number;\n\n turretAddress: number;\n\n scan: boolean;\n\n once: boolean;\n\n timeout: number;\n\n}\n\nexport const AutofocusFocusRequest = {\n fromBinary: (buffer: Uint8Array): AutofocusFocusRequest => BSON.deserialize(buffer) as AutofocusFocusRequest,\n toBinary: (value: AutofocusFocusRequest): Uint8Array => BSON.serialize(AutofocusFocusRequest.sanitize(value)),\n DEFAULT: Object.freeze({\n providerId: 0,\n interfaceId: 0,\n focusAddress: 0,\n focusAxis: 0,\n turretAddress: 0,\n scan: false,\n once: false,\n timeout: 0,\n }) as Readonly<AutofocusFocusRequest>,\n sanitize: (value: AutofocusFocusRequest): AutofocusFocusRequest => {\n if (value == null) { throw new TypeError('Expected AutofocusFocusRequest object but got null or undefined.') }\n if (typeof value !== 'object') { throw new TypeError(`Expected AutofocusFocusRequest object but got ${typeof value}.`) }\n return {\n providerId: sanitizer.sanitizeInt(value.providerId, 'providerId'),\n interfaceId: sanitizer.sanitizeInt(value.interfaceId, 'interfaceId'),\n focusAddress: sanitizer.sanitizeInt(value.focusAddress, 'focusAddress'),\n focusAxis: sanitizer.sanitizeInt(value.focusAxis, 'focusAxis'),\n turretAddress: sanitizer.sanitizeInt(value.turretAddress, 'turretAddress'),\n scan: sanitizer.sanitizeBool(value.scan, 'scan'),\n once: sanitizer.sanitizeBool(value.once, 'once'),\n timeout: sanitizer.sanitizeInt(value.timeout, 'timeout'),\n };\n },\n};\n"]}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { Units } from '../units';
|
|
2
|
+
export interface DeviceMoveSinRequest {
|
|
3
|
+
interfaceId: number;
|
|
4
|
+
device: number;
|
|
5
|
+
axis: number;
|
|
6
|
+
amplitude: number;
|
|
7
|
+
amplitudeUnits: Units;
|
|
8
|
+
period: number;
|
|
9
|
+
periodUnits: Units;
|
|
10
|
+
count: number;
|
|
11
|
+
waitUntilIdle: boolean;
|
|
12
|
+
}
|
|
13
|
+
export declare const DeviceMoveSinRequest: {
|
|
14
|
+
fromBinary: (buffer: Uint8Array) => DeviceMoveSinRequest;
|
|
15
|
+
toBinary: (value: DeviceMoveSinRequest) => Uint8Array;
|
|
16
|
+
DEFAULT: Readonly<DeviceMoveSinRequest>;
|
|
17
|
+
sanitize: (value: DeviceMoveSinRequest) => DeviceMoveSinRequest;
|
|
18
|
+
};
|
|
19
|
+
//# sourceMappingURL=device_move_sin_request.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"device_move_sin_request.d.ts","sourceRoot":"","sources":["../../../src/requests/device_move_sin_request.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAEjC,MAAM,WAAW,oBAAoB;IACnC,WAAW,EAAE,MAAM,CAAC;IAEpB,MAAM,EAAE,MAAM,CAAC;IAEf,IAAI,EAAE,MAAM,CAAC;IAEb,SAAS,EAAE,MAAM,CAAC;IAElB,cAAc,EAAE,KAAK,CAAC;IAEtB,MAAM,EAAE,MAAM,CAAC;IAEf,WAAW,EAAE,KAAK,CAAC;IAEnB,KAAK,EAAE,MAAM,CAAC;IAEd,aAAa,EAAE,OAAO,CAAC;CAExB;AAED,eAAO,MAAM,oBAAoB;yBACV,UAAU,KAAG,oBAAoB;sBACpC,oBAAoB,KAAG,UAAU;;sBAYjC,oBAAoB,KAAG,oBAAoB;CAe9D,CAAC"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.DeviceMoveSinRequest = void 0;
|
|
4
|
+
/* This file is generated. Do not modify by hand. */
|
|
5
|
+
const bson_1 = require("bson");
|
|
6
|
+
const sanitizer_1 = require("../gateway/sanitizer");
|
|
7
|
+
const units_1 = require("../units");
|
|
8
|
+
exports.DeviceMoveSinRequest = {
|
|
9
|
+
fromBinary: (buffer) => bson_1.BSON.deserialize(buffer),
|
|
10
|
+
toBinary: (value) => bson_1.BSON.serialize(exports.DeviceMoveSinRequest.sanitize(value)),
|
|
11
|
+
DEFAULT: Object.freeze({
|
|
12
|
+
interfaceId: 0,
|
|
13
|
+
device: 0,
|
|
14
|
+
axis: 0,
|
|
15
|
+
amplitude: 0,
|
|
16
|
+
amplitudeUnits: units_1.Units.NATIVE,
|
|
17
|
+
period: 0,
|
|
18
|
+
periodUnits: units_1.Units.NATIVE,
|
|
19
|
+
count: 0,
|
|
20
|
+
waitUntilIdle: false,
|
|
21
|
+
}),
|
|
22
|
+
sanitize: (value) => {
|
|
23
|
+
if (value == null) {
|
|
24
|
+
throw new TypeError('Expected DeviceMoveSinRequest object but got null or undefined.');
|
|
25
|
+
}
|
|
26
|
+
if (typeof value !== 'object') {
|
|
27
|
+
throw new TypeError(`Expected DeviceMoveSinRequest object but got ${typeof value}.`);
|
|
28
|
+
}
|
|
29
|
+
return {
|
|
30
|
+
interfaceId: sanitizer_1.sanitizer.sanitizeInt(value.interfaceId, 'interfaceId'),
|
|
31
|
+
device: sanitizer_1.sanitizer.sanitizeInt(value.device, 'device'),
|
|
32
|
+
axis: sanitizer_1.sanitizer.sanitizeInt(value.axis, 'axis'),
|
|
33
|
+
amplitude: sanitizer_1.sanitizer.sanitizeNumber(value.amplitude, 'amplitude'),
|
|
34
|
+
amplitudeUnits: sanitizer_1.sanitizer.sanitizeUnits(value.amplitudeUnits, 'amplitudeUnits'),
|
|
35
|
+
period: sanitizer_1.sanitizer.sanitizeNumber(value.period, 'period'),
|
|
36
|
+
periodUnits: sanitizer_1.sanitizer.sanitizeUnits(value.periodUnits, 'periodUnits'),
|
|
37
|
+
count: sanitizer_1.sanitizer.sanitizeNumber(value.count, 'count'),
|
|
38
|
+
waitUntilIdle: sanitizer_1.sanitizer.sanitizeBool(value.waitUntilIdle, 'waitUntilIdle'),
|
|
39
|
+
};
|
|
40
|
+
},
|
|
41
|
+
};
|
|
42
|
+
//# sourceMappingURL=device_move_sin_request.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"device_move_sin_request.js","sourceRoot":"","sources":["../../../src/requests/device_move_sin_request.ts"],"names":[],"mappings":";;;AAAA,oDAAoD;AACpD,+BAA4B;AAC5B,oDAAiD;AACjD,oCAAiC;AAuBpB,QAAA,oBAAoB,GAAG;IAClC,UAAU,EAAE,CAAC,MAAkB,EAAwB,EAAE,CAAC,WAAI,CAAC,WAAW,CAAC,MAAM,CAAyB;IAC1G,QAAQ,EAAE,CAAC,KAA2B,EAAc,EAAE,CAAC,WAAI,CAAC,SAAS,CAAC,4BAAoB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC3G,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC;QACrB,WAAW,EAAE,CAAC;QACd,MAAM,EAAE,CAAC;QACT,IAAI,EAAE,CAAC;QACP,SAAS,EAAE,CAAC;QACZ,cAAc,EAAE,aAAK,CAAC,MAAM;QAC5B,MAAM,EAAE,CAAC;QACT,WAAW,EAAE,aAAK,CAAC,MAAM;QACzB,KAAK,EAAE,CAAC;QACR,aAAa,EAAE,KAAK;KACrB,CAAmC;IACpC,QAAQ,EAAE,CAAC,KAA2B,EAAwB,EAAE;QAC9D,IAAI,KAAK,IAAI,IAAI,EAAE,CAAC;YAAC,MAAM,IAAI,SAAS,CAAC,iEAAiE,CAAC,CAAA;QAAC,CAAC;QAC7G,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAAC,MAAM,IAAI,SAAS,CAAC,gDAAgD,OAAO,KAAK,GAAG,CAAC,CAAA;QAAC,CAAC;QACvH,OAAO;YACL,WAAW,EAAE,qBAAS,CAAC,WAAW,CAAC,KAAK,CAAC,WAAW,EAAE,aAAa,CAAC;YACpE,MAAM,EAAE,qBAAS,CAAC,WAAW,CAAC,KAAK,CAAC,MAAM,EAAE,QAAQ,CAAC;YACrD,IAAI,EAAE,qBAAS,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC;YAC/C,SAAS,EAAE,qBAAS,CAAC,cAAc,CAAC,KAAK,CAAC,SAAS,EAAE,WAAW,CAAC;YACjE,cAAc,EAAE,qBAAS,CAAC,aAAa,CAAC,KAAK,CAAC,cAAc,EAAE,gBAAgB,CAAC;YAC/E,MAAM,EAAE,qBAAS,CAAC,cAAc,CAAC,KAAK,CAAC,MAAM,EAAE,QAAQ,CAAC;YACxD,WAAW,EAAE,qBAAS,CAAC,aAAa,CAAC,KAAK,CAAC,WAAW,EAAE,aAAa,CAAC;YACtE,KAAK,EAAE,qBAAS,CAAC,cAAc,CAAC,KAAK,CAAC,KAAK,EAAE,OAAO,CAAC;YACrD,aAAa,EAAE,qBAAS,CAAC,YAAY,CAAC,KAAK,CAAC,aAAa,EAAE,eAAe,CAAC;SAC5E,CAAC;IACJ,CAAC;CACF,CAAC","sourcesContent":["/* This file is generated. Do not modify by hand. */\nimport { BSON } from 'bson';\nimport { sanitizer } from '../gateway/sanitizer';\nimport { Units } from '../units';\n\nexport interface DeviceMoveSinRequest {\n interfaceId: number;\n\n device: number;\n\n axis: number;\n\n amplitude: number;\n\n amplitudeUnits: Units;\n\n period: number;\n\n periodUnits: Units;\n\n count: number;\n\n waitUntilIdle: boolean;\n\n}\n\nexport const DeviceMoveSinRequest = {\n fromBinary: (buffer: Uint8Array): DeviceMoveSinRequest => BSON.deserialize(buffer) as DeviceMoveSinRequest,\n toBinary: (value: DeviceMoveSinRequest): Uint8Array => BSON.serialize(DeviceMoveSinRequest.sanitize(value)),\n DEFAULT: Object.freeze({\n interfaceId: 0,\n device: 0,\n axis: 0,\n amplitude: 0,\n amplitudeUnits: Units.NATIVE,\n period: 0,\n periodUnits: Units.NATIVE,\n count: 0,\n waitUntilIdle: false,\n }) as Readonly<DeviceMoveSinRequest>,\n sanitize: (value: DeviceMoveSinRequest): DeviceMoveSinRequest => {\n if (value == null) { throw new TypeError('Expected DeviceMoveSinRequest object but got null or undefined.') }\n if (typeof value !== 'object') { throw new TypeError(`Expected DeviceMoveSinRequest object but got ${typeof value}.`) }\n return {\n interfaceId: sanitizer.sanitizeInt(value.interfaceId, 'interfaceId'),\n device: sanitizer.sanitizeInt(value.device, 'device'),\n axis: sanitizer.sanitizeInt(value.axis, 'axis'),\n amplitude: sanitizer.sanitizeNumber(value.amplitude, 'amplitude'),\n amplitudeUnits: sanitizer.sanitizeUnits(value.amplitudeUnits, 'amplitudeUnits'),\n period: sanitizer.sanitizeNumber(value.period, 'period'),\n periodUnits: sanitizer.sanitizeUnits(value.periodUnits, 'periodUnits'),\n count: sanitizer.sanitizeNumber(value.count, 'count'),\n waitUntilIdle: sanitizer.sanitizeBool(value.waitUntilIdle, 'waitUntilIdle'),\n };\n },\n};\n"]}
|
|
@@ -49,10 +49,10 @@ export * from './device_get_warnings_response';
|
|
|
49
49
|
export * from './device_home_request';
|
|
50
50
|
export * from './device_identify_request';
|
|
51
51
|
export * from './device_move_request';
|
|
52
|
+
export * from './device_move_sin_request';
|
|
52
53
|
export * from './device_multi_get_setting_request';
|
|
53
54
|
export * from './device_on_all_request';
|
|
54
55
|
export * from './device_on_all_response';
|
|
55
|
-
export * from './device_renumber_request';
|
|
56
56
|
export * from './device_set_all_analog_outputs_request';
|
|
57
57
|
export * from './device_set_all_analog_outputs_schedule_request';
|
|
58
58
|
export * from './device_set_all_digital_outputs_request';
|
|
@@ -106,6 +106,7 @@ export * from './lockstep_get_axis_numbers_response';
|
|
|
106
106
|
export * from './lockstep_get_request';
|
|
107
107
|
export * from './lockstep_home_request';
|
|
108
108
|
export * from './lockstep_move_request';
|
|
109
|
+
export * from './lockstep_move_sin_request';
|
|
109
110
|
export * from './lockstep_set_request';
|
|
110
111
|
export * from './lockstep_stop_request';
|
|
111
112
|
export * from './lockstep_wait_until_idle_request';
|
|
@@ -133,6 +134,7 @@ export * from './oscilloscope_start_request';
|
|
|
133
134
|
export * from './prepare_command_request';
|
|
134
135
|
export * from './process_on';
|
|
135
136
|
export * from './pvt_point_request';
|
|
137
|
+
export * from './renumber_request';
|
|
136
138
|
export * from './response_type';
|
|
137
139
|
export * from './servo_tuning_paramset_response';
|
|
138
140
|
export * from './servo_tuning_request';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/requests/index.ts"],"names":[],"mappings":"AACA,cAAc,uBAAuB,CAAC;AACtC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,0CAA0C,CAAC;AACzD,cAAc,2CAA2C,CAAC;AAC1D,cAAc,iCAAiC,CAAC;AAChD,cAAc,0CAA0C,CAAC;AACzD,cAAc,sBAAsB,CAAC;AACrC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,kBAAkB,CAAC;AACjC,cAAc,0BAA0B,CAAC;AACzC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,iCAAiC,CAAC;AAChD,cAAc,qCAAqC,CAAC;AACpD,cAAc,8BAA8B,CAAC;AAC7C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,qCAAqC,CAAC;AACpD,cAAc,8BAA8B,CAAC;AAC7C,cAAc,qCAAqC,CAAC;AACpD,cAAc,6BAA6B,CAAC;AAC5C,cAAc,mCAAmC,CAAC;AAClD,cAAc,iBAAiB,CAAC;AAChC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,yBAAyB,CAAC;AACxC,cAAc,cAAc,CAAC;AAC7B,cAAc,yBAAyB,CAAC;AACxC,cAAc,yBAAyB,CAAC;AACxC,cAAc,kCAAkC,CAAC;AACjD,cAAc,kCAAkC,CAAC;AACjD,cAAc,iCAAiC,CAAC;AAChD,cAAc,kCAAkC,CAAC;AACjD,cAAc,8CAA8C,CAAC;AAC7D,cAAc,yCAAyC,CAAC;AACxD,cAAc,kCAAkC,CAAC;AACjD,cAAc,yBAAyB,CAAC;AACxC,cAAc,0BAA0B,CAAC;AACzC,cAAc,wBAAwB,CAAC;AACvC,cAAc,oCAAoC,CAAC;AACnD,cAAc,qCAAqC,CAAC;AACpD,cAAc,qCAAqC,CAAC;AACpD,cAAc,sCAAsC,CAAC;AACrD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,iCAAiC,CAAC;AAChD,cAAc,8BAA8B,CAAC;AAC7C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,uBAAuB,CAAC;AACtC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,uBAAuB,CAAC;AACtC,cAAc,oCAAoC,CAAC;AACnD,cAAc,yBAAyB,CAAC;AACxC,cAAc,0BAA0B,CAAC;AACzC,cAAc,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/requests/index.ts"],"names":[],"mappings":"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"}
|