@zaber/motion 2.14.0 → 2.14.3

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.
@@ -1 +1 @@
1
- {"version":3,"file":"offline_translator.js","sourceRoot":"","sources":["../../../src/gcode/offline_translator.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 { DeviceDefinition } from './device_definition';\nimport { TranslatorConfig } from './translator_config';\nimport { TranslateResult } from './translate_result';\nimport { Angle, Length, Native, AngularVelocity, Velocity } from '../units';\nimport { registerForFinalization } from '../finalizer';\n\n/**\n * Represents an offline G-Code translator.\n * It allows to translate G-Code blocks to Zaber ASCII protocol stream commands.\n * This translator does not need a connected device to perform translation.\n */\nexport class OfflineTranslator {\n /**\n * The ID of the translator that serves to identify native resources.\n */\n public get translatorId(): number {\n return this._translatorId;\n }\n private _translatorId: number;\n\n /**\n * Current coordinate system.\n */\n public get coordinateSystem(): string {\n return this._getCurrentCoordinateSystem();\n }\n\n constructor(translatorId: number) {\n this._translatorId = translatorId;\n registerForFinalization(this, OfflineTranslator._free.bind(null, translatorId));\n }\n\n /**\n * Sets up translator from provided device definition and configuration.\n * @param definition Definition of device and its peripherals.\n * The definition must match a device that later performs the commands.\n * @param config? Configuration of the translator.\n * @return New instance of translator.\n */\n public static async setup(\n definition: DeviceDefinition,\n config?: TranslatorConfig\n ): Promise<OfflineTranslator> {\n const request = new gateway.TranslatorCreateRequest();\n request.setDefinition(DeviceDefinition.toProtobuf(definition));\n request.setConfig(TranslatorConfig.toProtobuf(config));\n\n const response = await gateway.callAsync<gateway.TranslatorCreateResponse>(\n 'gcode/create',\n request,\n gateway.TranslatorCreateResponse);\n return new OfflineTranslator(response.getTranslatorId());\n }\n\n /**\n * Translates a single block (line) of G-code.\n * @param block Block (line) of G-code.\n * @return Result of translation containing the stream commands.\n */\n public translate(\n block: string\n ): TranslateResult {\n const request = new gateway.TranslatorTranslateRequest();\n request.setTranslatorId(this.translatorId);\n request.setBlock(block);\n\n const response = gateway.callSync<gateway.TranslatorTranslateResponse>(\n 'gcode/translate',\n request,\n gateway.TranslatorTranslateResponse);\n return TranslateResult.fromProtobuf(response.toObject());\n }\n\n /**\n * Flushes the remaining stream commands waiting in optimization buffer.\n * The flush is also performed by M2 and M30 codes.\n * @return The remaining stream commands.\n */\n public flush(): string[] {\n const request = new gateway.TranslatorEmptyRequest();\n request.setTranslatorId(this.translatorId);\n\n const response = gateway.callSync<gateway.TranslatorFlushResponse>(\n 'gcode/flush',\n request,\n gateway.TranslatorFlushResponse);\n return response.getCommandsList();\n }\n\n /**\n * Sets the speed at which the device moves when traversing (G0).\n * @param traverseRate The traverse rate.\n * @param unit Units of the traverse rate.\n */\n public setTraverseRate(\n traverseRate: number,\n unit: Velocity | AngularVelocity | Native\n ): void {\n const request = new gateway.TranslatorSetTraverseRateRequest();\n request.setTranslatorId(this.translatorId);\n request.setTraverseRate(traverseRate);\n request.setUnit(unit);\n\n gateway.callSync('gcode/set_traverse_rate', request);\n }\n\n /**\n * Sets position of translator's axis.\n * Use this method to set position after performing movement outside of the translator.\n * This method does not cause any movement.\n * @param axis Letter of the axis.\n * @param position The position.\n * @param unit Units of position.\n */\n public setAxisPosition(\n axis: string,\n position: number,\n unit: Length | Angle | Native\n ): void {\n const request = new gateway.TranslatorSetAxisPositionRequest();\n request.setTranslatorId(this.translatorId);\n request.setAxis(axis);\n request.setPosition(position);\n request.setUnit(unit);\n\n gateway.callSync('gcode/set_axis_position', request);\n }\n\n /**\n * Gets position of translator's axis.\n * This method does not query device but returns value from translator's state.\n * @param axis Letter of the axis.\n * @param unit Units of position.\n * @return Position of translator's axis.\n */\n public getAxisPosition(\n axis: string,\n unit: Length | Angle | Native\n ): number {\n const request = new gateway.TranslatorGetAxisPositionRequest();\n request.setTranslatorId(this.translatorId);\n request.setAxis(axis);\n request.setUnit(unit);\n\n const response = gateway.callSync<gateway.DoubleResponse>(\n 'gcode/get_axis_position',\n request,\n gateway.DoubleResponse);\n return response.getValue();\n }\n\n /**\n * Sets the home position of translator's axis.\n * This position is used by G28.\n * @param axis Letter of the axis.\n * @param position The home position.\n * @param unit Units of position.\n */\n public setAxisHomePosition(\n axis: string,\n position: number,\n unit: Length | Angle | Native\n ): void {\n const request = new gateway.TranslatorSetAxisPositionRequest();\n request.setTranslatorId(this.translatorId);\n request.setAxis(axis);\n request.setPosition(position);\n request.setUnit(unit);\n\n gateway.callSync('gcode/set_axis_home', request);\n }\n\n /**\n * Sets the secondary home position of translator's axis.\n * This position is used by G30.\n * @param axis Letter of the axis.\n * @param position The home position.\n * @param unit Units of position.\n */\n public setAxisSecondaryHomePosition(\n axis: string,\n position: number,\n unit: Length | Angle | Native\n ): void {\n const request = new gateway.TranslatorSetAxisPositionRequest();\n request.setTranslatorId(this.translatorId);\n request.setAxis(axis);\n request.setPosition(position);\n request.setUnit(unit);\n\n gateway.callSync('gcode/set_axis_secondary_home', request);\n }\n\n /**\n * Gets offset of an axis in a given coordinate system.\n * @param coordinateSystem Coordinate system (e.g. G54).\n * @param axis Letter of the axis.\n * @param unit Units of position.\n * @return Offset in translator units of the axis.\n */\n public getAxisCoordinateSystemOffset(\n coordinateSystem: string,\n axis: string,\n unit: Length | Angle | Native\n ): number {\n const request = new gateway.TranslatorGetAxisOffsetRequest();\n request.setTranslatorId(this.translatorId);\n request.setCoordinateSystem(coordinateSystem);\n request.setAxis(axis);\n request.setUnit(unit);\n\n const response = gateway.callSync<gateway.DoubleResponse>(\n 'gcode/get_axis_offset',\n request,\n gateway.DoubleResponse);\n return response.getValue();\n }\n\n /**\n * Resets internal state after device rejected generated command.\n * Axis positions become uninitialized.\n */\n public resetAfterStreamError(): void {\n const request = new gateway.TranslatorEmptyRequest();\n request.setTranslatorId(this.translatorId);\n\n gateway.callSync('gcode/reset_after_stream_error', request);\n }\n\n /**\n * Allows to scale feed rate of the translated code by a coefficient.\n * @param coefficient Coefficient of the original feed rate.\n */\n public setFeedRateOverride(\n coefficient: number\n ): void {\n const request = new gateway.TranslatorSetFeedRateOverrideRequest();\n request.setTranslatorId(this.translatorId);\n request.setCoefficient(coefficient);\n\n gateway.callSync('gcode/set_feed_rate_override', request);\n }\n\n /**\n * Releases native resources of a translator.\n * @param translatorId The ID of the translator.\n */\n private static _free(\n translatorId: number\n ): void {\n const request = new gateway.TranslatorEmptyRequest();\n request.setTranslatorId(translatorId);\n\n gateway.callSync('gcode/free', request);\n }\n\n /**\n * Gets current coordinate system (e.g. G54).\n * @return Current coordinate system.\n */\n private _getCurrentCoordinateSystem(): string {\n const request = new gateway.TranslatorEmptyRequest();\n request.setTranslatorId(this.translatorId);\n\n const response = gateway.callSync<gateway.StringResponse>(\n 'gcode/get_current_coordinate_system',\n request,\n gateway.StringResponse);\n return response.getValue();\n }\n\n /**\n * Releases the native resources of the translator.\n * Should only be called if your environment does not support FinalizationRegistry.\n * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/FinalizationRegistry\n */\n public free(): void {\n OfflineTranslator._free(this.translatorId);\n }\n}\n"]}
1
+ {"version":3,"file":"offline_translator.js","sourceRoot":"","sources":["../../../src/gcode/offline_translator.ts"],"names":[],"mappings":";AAAA,sDAAsD;AACtD,sDAAsD;;;;;;;;;;;;;;;;;;;;;;;;;;AAEtD,oDAAsC;AACtC,2DAAuD;AACvD,2DAAuD;AACvD,yDAAqD;AAGrD,4CAAuD;AAEvD;;;;GAIG;AACH,MAAa,iBAAiB;IAgB5B,YAAY,YAAoB;QAC9B,IAAI,CAAC,aAAa,GAAG,YAAY,CAAC;QAClC,IAAA,mCAAuB,EAAC,IAAI,EAAE,iBAAiB,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC;IAClF,CAAC;IAlBD;;OAEG;IACH,IAAW,YAAY;QACrB,OAAO,IAAI,CAAC,aAAa,CAAC;IAC5B,CAAC;IAGD;;OAEG;IACH,IAAW,gBAAgB;QACzB,OAAO,IAAI,CAAC,2BAA2B,EAAE,CAAC;IAC5C,CAAC;IAOD;;;;;;OAMG;IACI,MAAM,CAAC,KAAK,CAAC,KAAK,CACvB,UAA4B,EAC5B,MAAyB;QAEzB,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,uBAAuB,EAAE,CAAC;QACtD,OAAO,CAAC,aAAa,CAAC,oCAAgB,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC;QAC/D,OAAO,CAAC,SAAS,CAAC,oCAAgB,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC;QAEvD,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,SAAS,CACtC,cAAc,EACd,OAAO,EACP,OAAO,CAAC,wBAAwB,CAAC,CAAC;QACpC,OAAO,IAAI,iBAAiB,CAAC,QAAQ,CAAC,eAAe,EAAE,CAAC,CAAC;IAC3D,CAAC;IAED;;;;;;;OAOG;IACI,MAAM,CAAC,KAAK,CAAC,eAAe,CACjC,MAAc,EACd,IAAc,EACd,MAAyB;QAEzB,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,iCAAiC,EAAE,CAAC;QAChE,OAAO,CAAC,cAAc,CAAC,MAAM,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;QACtD,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;QACxC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QAC1B,OAAO,CAAC,SAAS,CAAC,oCAAgB,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC;QAEvD,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,SAAS,CACtC,0BAA0B,EAC1B,OAAO,EACP,OAAO,CAAC,wBAAwB,CAAC,CAAC;QACpC,OAAO,IAAI,iBAAiB,CAAC,QAAQ,CAAC,eAAe,EAAE,CAAC,CAAC;IAC3D,CAAC;IAED;;;;OAIG;IACI,SAAS,CACd,KAAa;QAEb,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,0BAA0B,EAAE,CAAC;QACzD,OAAO,CAAC,eAAe,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAC3C,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QAExB,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAC/B,iBAAiB,EACjB,OAAO,EACP,OAAO,CAAC,2BAA2B,CAAC,CAAC;QACvC,OAAO,kCAAe,CAAC,YAAY,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC;IAC3D,CAAC;IAED;;;;OAIG;IACI,KAAK;QACV,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,sBAAsB,EAAE,CAAC;QACrD,OAAO,CAAC,eAAe,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAE3C,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAC/B,aAAa,EACb,OAAO,EACP,OAAO,CAAC,uBAAuB,CAAC,CAAC;QACnC,OAAO,QAAQ,CAAC,eAAe,EAAE,CAAC;IACpC,CAAC;IAED;;;;OAIG;IACI,eAAe,CACpB,YAAoB,EACpB,IAAyC;QAEzC,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,gCAAgC,EAAE,CAAC;QAC/D,OAAO,CAAC,eAAe,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAC3C,OAAO,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC;QACtC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAEtB,OAAO,CAAC,QAAQ,CAAC,yBAAyB,EAAE,OAAO,CAAC,CAAC;IACvD,CAAC;IAED;;;;;;;OAOG;IACI,eAAe,CACpB,IAAY,EACZ,QAAgB,EAChB,IAA6B;QAE7B,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,gCAAgC,EAAE,CAAC;QAC/D,OAAO,CAAC,eAAe,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAC3C,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACtB,OAAO,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QAC9B,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAEtB,OAAO,CAAC,QAAQ,CAAC,yBAAyB,EAAE,OAAO,CAAC,CAAC;IACvD,CAAC;IAED;;;;;;OAMG;IACI,eAAe,CACpB,IAAY,EACZ,IAA6B;QAE7B,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,gCAAgC,EAAE,CAAC;QAC/D,OAAO,CAAC,eAAe,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAC3C,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACtB,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAEtB,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAC/B,yBAAyB,EACzB,OAAO,EACP,OAAO,CAAC,cAAc,CAAC,CAAC;QAC1B,OAAO,QAAQ,CAAC,QAAQ,EAAE,CAAC;IAC7B,CAAC;IAED;;;;;;OAMG;IACI,mBAAmB,CACxB,IAAY,EACZ,QAAgB,EAChB,IAA6B;QAE7B,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,gCAAgC,EAAE,CAAC;QAC/D,OAAO,CAAC,eAAe,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAC3C,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACtB,OAAO,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QAC9B,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAEtB,OAAO,CAAC,QAAQ,CAAC,qBAAqB,EAAE,OAAO,CAAC,CAAC;IACnD,CAAC;IAED;;;;;;OAMG;IACI,4BAA4B,CACjC,IAAY,EACZ,QAAgB,EAChB,IAA6B;QAE7B,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,gCAAgC,EAAE,CAAC;QAC/D,OAAO,CAAC,eAAe,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAC3C,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACtB,OAAO,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QAC9B,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAEtB,OAAO,CAAC,QAAQ,CAAC,+BAA+B,EAAE,OAAO,CAAC,CAAC;IAC7D,CAAC;IAED;;;;;;OAMG;IACI,6BAA6B,CAClC,gBAAwB,EACxB,IAAY,EACZ,IAA6B;QAE7B,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,8BAA8B,EAAE,CAAC;QAC7D,OAAO,CAAC,eAAe,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAC3C,OAAO,CAAC,mBAAmB,CAAC,gBAAgB,CAAC,CAAC;QAC9C,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACtB,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAEtB,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAC/B,uBAAuB,EACvB,OAAO,EACP,OAAO,CAAC,cAAc,CAAC,CAAC;QAC1B,OAAO,QAAQ,CAAC,QAAQ,EAAE,CAAC;IAC7B,CAAC;IAED;;;OAGG;IACI,qBAAqB;QAC1B,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,sBAAsB,EAAE,CAAC;QACrD,OAAO,CAAC,eAAe,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAE3C,OAAO,CAAC,QAAQ,CAAC,gCAAgC,EAAE,OAAO,CAAC,CAAC;IAC9D,CAAC;IAED;;;OAGG;IACI,mBAAmB,CACxB,WAAmB;QAEnB,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,oCAAoC,EAAE,CAAC;QACnE,OAAO,CAAC,eAAe,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAC3C,OAAO,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;QAEpC,OAAO,CAAC,QAAQ,CAAC,8BAA8B,EAAE,OAAO,CAAC,CAAC;IAC5D,CAAC;IAED;;;OAGG;IACK,MAAM,CAAC,KAAK,CAClB,YAAoB;QAEpB,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,sBAAsB,EAAE,CAAC;QACrD,OAAO,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC;QAEtC,OAAO,CAAC,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;IAC1C,CAAC;IAED;;;OAGG;IACK,2BAA2B;QACjC,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,sBAAsB,EAAE,CAAC;QACrD,OAAO,CAAC,eAAe,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAE3C,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAC/B,qCAAqC,EACrC,OAAO,EACP,OAAO,CAAC,cAAc,CAAC,CAAC;QAC1B,OAAO,QAAQ,CAAC,QAAQ,EAAE,CAAC;IAC7B,CAAC;IAED;;;;OAIG;IACI,IAAI;QACT,iBAAiB,CAAC,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IAC7C,CAAC;CACF;AAtSD,8CAsSC","sourcesContent":["// ==== THIS FILE IS GENERATED FROM A TEMPLATE ==== //\n// ============= DO NOT EDIT DIRECTLY ============= //\n\nimport * as gateway from '../gateway';\nimport { DeviceDefinition } from './device_definition';\nimport { TranslatorConfig } from './translator_config';\nimport { TranslateResult } from './translate_result';\nimport { Device } from '../ascii/device';\nimport { Angle, Length, Native, AngularVelocity, Velocity } from '../units';\nimport { registerForFinalization } from '../finalizer';\n\n/**\n * Represents an offline G-Code translator.\n * It allows to translate G-Code blocks to Zaber ASCII protocol stream commands.\n * This translator does not need a connected device to perform translation.\n */\nexport class OfflineTranslator {\n /**\n * The ID of the translator that serves to identify native resources.\n */\n public get translatorId(): number {\n return this._translatorId;\n }\n private _translatorId: number;\n\n /**\n * Current coordinate system.\n */\n public get coordinateSystem(): string {\n return this._getCurrentCoordinateSystem();\n }\n\n constructor(translatorId: number) {\n this._translatorId = translatorId;\n registerForFinalization(this, OfflineTranslator._free.bind(null, translatorId));\n }\n\n /**\n * Sets up translator from provided device definition and configuration.\n * @param definition Definition of device and its peripherals.\n * The definition must match a device that later performs the commands.\n * @param config? Configuration of the translator.\n * @return New instance of translator.\n */\n public static async setup(\n definition: DeviceDefinition,\n config?: TranslatorConfig\n ): Promise<OfflineTranslator> {\n const request = new gateway.TranslatorCreateRequest();\n request.setDefinition(DeviceDefinition.toProtobuf(definition));\n request.setConfig(TranslatorConfig.toProtobuf(config));\n\n const response = await gateway.callAsync<gateway.TranslatorCreateResponse>(\n 'gcode/create',\n request,\n gateway.TranslatorCreateResponse);\n return new OfflineTranslator(response.getTranslatorId());\n }\n\n /**\n * Sets up an offline translator from provided device, axes, and configuration.\n * @param device Device that later performs the command streaming.\n * @param axes Axis numbers that are later used to setup the stream.\n * For a lockstep group specify only the first axis of the group.\n * @param config? Configuration of the translator.\n * @return New instance of translator.\n */\n public static async setupFromDevice(\n device: Device,\n axes: number[],\n config?: TranslatorConfig\n ): Promise<OfflineTranslator> {\n const request = new gateway.TranslatorCreateFromDeviceRequest();\n request.setInterfaceId(device.connection.interfaceId);\n request.setDevice(device.deviceAddress);\n request.setAxesList(axes);\n request.setConfig(TranslatorConfig.toProtobuf(config));\n\n const response = await gateway.callAsync<gateway.TranslatorCreateResponse>(\n 'gcode/create_from_device',\n request,\n gateway.TranslatorCreateResponse);\n return new OfflineTranslator(response.getTranslatorId());\n }\n\n /**\n * Translates a single block (line) of G-code.\n * @param block Block (line) of G-code.\n * @return Result of translation containing the stream commands.\n */\n public translate(\n block: string\n ): TranslateResult {\n const request = new gateway.TranslatorTranslateRequest();\n request.setTranslatorId(this.translatorId);\n request.setBlock(block);\n\n const response = gateway.callSync<gateway.TranslatorTranslateResponse>(\n 'gcode/translate',\n request,\n gateway.TranslatorTranslateResponse);\n return TranslateResult.fromProtobuf(response.toObject());\n }\n\n /**\n * Flushes the remaining stream commands waiting in optimization buffer.\n * The flush is also performed by M2 and M30 codes.\n * @return The remaining stream commands.\n */\n public flush(): string[] {\n const request = new gateway.TranslatorEmptyRequest();\n request.setTranslatorId(this.translatorId);\n\n const response = gateway.callSync<gateway.TranslatorFlushResponse>(\n 'gcode/flush',\n request,\n gateway.TranslatorFlushResponse);\n return response.getCommandsList();\n }\n\n /**\n * Sets the speed at which the device moves when traversing (G0).\n * @param traverseRate The traverse rate.\n * @param unit Units of the traverse rate.\n */\n public setTraverseRate(\n traverseRate: number,\n unit: Velocity | AngularVelocity | Native\n ): void {\n const request = new gateway.TranslatorSetTraverseRateRequest();\n request.setTranslatorId(this.translatorId);\n request.setTraverseRate(traverseRate);\n request.setUnit(unit);\n\n gateway.callSync('gcode/set_traverse_rate', request);\n }\n\n /**\n * Sets position of translator's axis.\n * Use this method to set position after performing movement outside of the translator.\n * This method does not cause any movement.\n * @param axis Letter of the axis.\n * @param position The position.\n * @param unit Units of position.\n */\n public setAxisPosition(\n axis: string,\n position: number,\n unit: Length | Angle | Native\n ): void {\n const request = new gateway.TranslatorSetAxisPositionRequest();\n request.setTranslatorId(this.translatorId);\n request.setAxis(axis);\n request.setPosition(position);\n request.setUnit(unit);\n\n gateway.callSync('gcode/set_axis_position', request);\n }\n\n /**\n * Gets position of translator's axis.\n * This method does not query device but returns value from translator's state.\n * @param axis Letter of the axis.\n * @param unit Units of position.\n * @return Position of translator's axis.\n */\n public getAxisPosition(\n axis: string,\n unit: Length | Angle | Native\n ): number {\n const request = new gateway.TranslatorGetAxisPositionRequest();\n request.setTranslatorId(this.translatorId);\n request.setAxis(axis);\n request.setUnit(unit);\n\n const response = gateway.callSync<gateway.DoubleResponse>(\n 'gcode/get_axis_position',\n request,\n gateway.DoubleResponse);\n return response.getValue();\n }\n\n /**\n * Sets the home position of translator's axis.\n * This position is used by G28.\n * @param axis Letter of the axis.\n * @param position The home position.\n * @param unit Units of position.\n */\n public setAxisHomePosition(\n axis: string,\n position: number,\n unit: Length | Angle | Native\n ): void {\n const request = new gateway.TranslatorSetAxisPositionRequest();\n request.setTranslatorId(this.translatorId);\n request.setAxis(axis);\n request.setPosition(position);\n request.setUnit(unit);\n\n gateway.callSync('gcode/set_axis_home', request);\n }\n\n /**\n * Sets the secondary home position of translator's axis.\n * This position is used by G30.\n * @param axis Letter of the axis.\n * @param position The home position.\n * @param unit Units of position.\n */\n public setAxisSecondaryHomePosition(\n axis: string,\n position: number,\n unit: Length | Angle | Native\n ): void {\n const request = new gateway.TranslatorSetAxisPositionRequest();\n request.setTranslatorId(this.translatorId);\n request.setAxis(axis);\n request.setPosition(position);\n request.setUnit(unit);\n\n gateway.callSync('gcode/set_axis_secondary_home', request);\n }\n\n /**\n * Gets offset of an axis in a given coordinate system.\n * @param coordinateSystem Coordinate system (e.g. G54).\n * @param axis Letter of the axis.\n * @param unit Units of position.\n * @return Offset in translator units of the axis.\n */\n public getAxisCoordinateSystemOffset(\n coordinateSystem: string,\n axis: string,\n unit: Length | Angle | Native\n ): number {\n const request = new gateway.TranslatorGetAxisOffsetRequest();\n request.setTranslatorId(this.translatorId);\n request.setCoordinateSystem(coordinateSystem);\n request.setAxis(axis);\n request.setUnit(unit);\n\n const response = gateway.callSync<gateway.DoubleResponse>(\n 'gcode/get_axis_offset',\n request,\n gateway.DoubleResponse);\n return response.getValue();\n }\n\n /**\n * Resets internal state after device rejected generated command.\n * Axis positions become uninitialized.\n */\n public resetAfterStreamError(): void {\n const request = new gateway.TranslatorEmptyRequest();\n request.setTranslatorId(this.translatorId);\n\n gateway.callSync('gcode/reset_after_stream_error', request);\n }\n\n /**\n * Allows to scale feed rate of the translated code by a coefficient.\n * @param coefficient Coefficient of the original feed rate.\n */\n public setFeedRateOverride(\n coefficient: number\n ): void {\n const request = new gateway.TranslatorSetFeedRateOverrideRequest();\n request.setTranslatorId(this.translatorId);\n request.setCoefficient(coefficient);\n\n gateway.callSync('gcode/set_feed_rate_override', request);\n }\n\n /**\n * Releases native resources of a translator.\n * @param translatorId The ID of the translator.\n */\n private static _free(\n translatorId: number\n ): void {\n const request = new gateway.TranslatorEmptyRequest();\n request.setTranslatorId(translatorId);\n\n gateway.callSync('gcode/free', request);\n }\n\n /**\n * Gets current coordinate system (e.g. G54).\n * @return Current coordinate system.\n */\n private _getCurrentCoordinateSystem(): string {\n const request = new gateway.TranslatorEmptyRequest();\n request.setTranslatorId(this.translatorId);\n\n const response = gateway.callSync<gateway.StringResponse>(\n 'gcode/get_current_coordinate_system',\n request,\n gateway.StringResponse);\n return response.getValue();\n }\n\n /**\n * Releases the native resources of the translator.\n * Should only be called if your environment does not support FinalizationRegistry.\n * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/FinalizationRegistry\n */\n public free(): void {\n OfflineTranslator._free(this.translatorId);\n }\n}\n"]}
@@ -4691,6 +4691,9 @@ export class ParamsetInfo extends jspb.Message {
4691
4691
  getType(): string;
4692
4692
  setType(value: string): void;
4693
4693
 
4694
+ getVersion(): number;
4695
+ setVersion(value: number): void;
4696
+
4694
4697
  clearParamsList(): void;
4695
4698
  getParamsList(): Array<ServoTuningParam>;
4696
4699
  setParamsList(value: Array<ServoTuningParam>): void;
@@ -4709,6 +4712,7 @@ export class ParamsetInfo extends jspb.Message {
4709
4712
  export namespace ParamsetInfo {
4710
4713
  export type AsObject = {
4711
4714
  type: string,
4715
+ version: number,
4712
4716
  paramsList: Array<ServoTuningParam.AsObject>,
4713
4717
  }
4714
4718
  }
@@ -5369,6 +5373,42 @@ export namespace TranslatorCreateLiveRequest {
5369
5373
  }
5370
5374
  }
5371
5375
 
5376
+ export class TranslatorCreateFromDeviceRequest extends jspb.Message {
5377
+ getInterfaceId(): number;
5378
+ setInterfaceId(value: number): void;
5379
+
5380
+ getDevice(): number;
5381
+ setDevice(value: number): void;
5382
+
5383
+ clearAxesList(): void;
5384
+ getAxesList(): Array<number>;
5385
+ setAxesList(value: Array<number>): void;
5386
+ addAxes(value: number, index?: number): number;
5387
+
5388
+ hasConfig(): boolean;
5389
+ clearConfig(): void;
5390
+ getConfig(): TranslatorConfig | undefined;
5391
+ setConfig(value?: TranslatorConfig): void;
5392
+
5393
+ serializeBinary(): Uint8Array;
5394
+ toObject(includeInstance?: boolean): TranslatorCreateFromDeviceRequest.AsObject;
5395
+ static toObject(includeInstance: boolean, msg: TranslatorCreateFromDeviceRequest): TranslatorCreateFromDeviceRequest.AsObject;
5396
+ static extensions: {[key: number]: jspb.ExtensionFieldInfo<jspb.Message>};
5397
+ static extensionsBinary: {[key: number]: jspb.ExtensionFieldBinaryInfo<jspb.Message>};
5398
+ static serializeBinaryToWriter(message: TranslatorCreateFromDeviceRequest, writer: jspb.BinaryWriter): void;
5399
+ static deserializeBinary(bytes: Uint8Array): TranslatorCreateFromDeviceRequest;
5400
+ static deserializeBinaryFromReader(message: TranslatorCreateFromDeviceRequest, reader: jspb.BinaryReader): TranslatorCreateFromDeviceRequest;
5401
+ }
5402
+
5403
+ export namespace TranslatorCreateFromDeviceRequest {
5404
+ export type AsObject = {
5405
+ interfaceId: number,
5406
+ device: number,
5407
+ axesList: Array<number>,
5408
+ config?: TranslatorConfig.AsObject,
5409
+ }
5410
+ }
5411
+
5372
5412
  export class TranslatorEmptyRequest extends jspb.Message {
5373
5413
  getTranslatorId(): number;
5374
5414
  setTranslatorId(value: number): void;
@@ -199,6 +199,7 @@ goog.exportSymbol('zaber.motion.protobufs.TranslatorAxisDefinition', null, proto
199
199
  goog.exportSymbol('zaber.motion.protobufs.TranslatorAxisMapping', null, proto);
200
200
  goog.exportSymbol('zaber.motion.protobufs.TranslatorAxisTransformation', null, proto);
201
201
  goog.exportSymbol('zaber.motion.protobufs.TranslatorConfig', null, proto);
202
+ goog.exportSymbol('zaber.motion.protobufs.TranslatorCreateFromDeviceRequest', null, proto);
202
203
  goog.exportSymbol('zaber.motion.protobufs.TranslatorCreateLiveRequest', null, proto);
203
204
  goog.exportSymbol('zaber.motion.protobufs.TranslatorCreateRequest', null, proto);
204
205
  goog.exportSymbol('zaber.motion.protobufs.TranslatorCreateResponse', null, proto);
@@ -3890,6 +3891,27 @@ if (goog.DEBUG && !COMPILED) {
3890
3891
  */
3891
3892
  proto.zaber.motion.protobufs.TranslatorCreateLiveRequest.displayName = 'proto.zaber.motion.protobufs.TranslatorCreateLiveRequest';
3892
3893
  }
3894
+ /**
3895
+ * Generated by JsPbCodeGenerator.
3896
+ * @param {Array=} opt_data Optional initial data array, typically from a
3897
+ * server response, or constructed directly in Javascript. The array is used
3898
+ * in place and becomes part of the constructed object. It is not cloned.
3899
+ * If no data is provided, the constructed object will be empty, but still
3900
+ * valid.
3901
+ * @extends {jspb.Message}
3902
+ * @constructor
3903
+ */
3904
+ proto.zaber.motion.protobufs.TranslatorCreateFromDeviceRequest = function(opt_data) {
3905
+ jspb.Message.initialize(this, opt_data, 0, -1, proto.zaber.motion.protobufs.TranslatorCreateFromDeviceRequest.repeatedFields_, null);
3906
+ };
3907
+ goog.inherits(proto.zaber.motion.protobufs.TranslatorCreateFromDeviceRequest, jspb.Message);
3908
+ if (goog.DEBUG && !COMPILED) {
3909
+ /**
3910
+ * @public
3911
+ * @override
3912
+ */
3913
+ proto.zaber.motion.protobufs.TranslatorCreateFromDeviceRequest.displayName = 'proto.zaber.motion.protobufs.TranslatorCreateFromDeviceRequest';
3914
+ }
3893
3915
  /**
3894
3916
  * Generated by JsPbCodeGenerator.
3895
3917
  * @param {Array=} opt_data Optional initial data array, typically from a
@@ -36549,6 +36571,7 @@ proto.zaber.motion.protobufs.ParamsetInfo.prototype.toObject = function(opt_incl
36549
36571
  proto.zaber.motion.protobufs.ParamsetInfo.toObject = function(includeInstance, msg) {
36550
36572
  var f, obj = {
36551
36573
  type: jspb.Message.getFieldWithDefault(msg, 1, ""),
36574
+ version: jspb.Message.getFieldWithDefault(msg, 3, 0),
36552
36575
  paramsList: jspb.Message.toObjectList(msg.getParamsList(),
36553
36576
  proto.zaber.motion.protobufs.ServoTuningParam.toObject, includeInstance)
36554
36577
  };
@@ -36591,6 +36614,10 @@ proto.zaber.motion.protobufs.ParamsetInfo.deserializeBinaryFromReader = function
36591
36614
  var value = /** @type {string} */ (reader.readString());
36592
36615
  msg.setType(value);
36593
36616
  break;
36617
+ case 3:
36618
+ var value = /** @type {number} */ (reader.readInt32());
36619
+ msg.setVersion(value);
36620
+ break;
36594
36621
  case 2:
36595
36622
  var value = new proto.zaber.motion.protobufs.ServoTuningParam;
36596
36623
  reader.readMessage(value,proto.zaber.motion.protobufs.ServoTuningParam.deserializeBinaryFromReader);
@@ -36632,6 +36659,13 @@ proto.zaber.motion.protobufs.ParamsetInfo.serializeBinaryToWriter = function(mes
36632
36659
  f
36633
36660
  );
36634
36661
  }
36662
+ f = message.getVersion();
36663
+ if (f !== 0) {
36664
+ writer.writeInt32(
36665
+ 3,
36666
+ f
36667
+ );
36668
+ }
36635
36669
  f = message.getParamsList();
36636
36670
  if (f.length > 0) {
36637
36671
  writer.writeRepeatedMessage(
@@ -36661,6 +36695,24 @@ proto.zaber.motion.protobufs.ParamsetInfo.prototype.setType = function(value) {
36661
36695
  };
36662
36696
 
36663
36697
 
36698
+ /**
36699
+ * optional int32 version = 3;
36700
+ * @return {number}
36701
+ */
36702
+ proto.zaber.motion.protobufs.ParamsetInfo.prototype.getVersion = function() {
36703
+ return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 3, 0));
36704
+ };
36705
+
36706
+
36707
+ /**
36708
+ * @param {number} value
36709
+ * @return {!proto.zaber.motion.protobufs.ParamsetInfo} returns this
36710
+ */
36711
+ proto.zaber.motion.protobufs.ParamsetInfo.prototype.setVersion = function(value) {
36712
+ return jspb.Message.setProto3IntField(this, 3, value);
36713
+ };
36714
+
36715
+
36664
36716
  /**
36665
36717
  * repeated ServoTuningParam params = 2;
36666
36718
  * @return {!Array<!proto.zaber.motion.protobufs.ServoTuningParam>}
@@ -41323,6 +41375,275 @@ proto.zaber.motion.protobufs.TranslatorCreateLiveRequest.prototype.hasConfig = f
41323
41375
 
41324
41376
 
41325
41377
 
41378
+ /**
41379
+ * List of repeated fields within this message type.
41380
+ * @private {!Array<number>}
41381
+ * @const
41382
+ */
41383
+ proto.zaber.motion.protobufs.TranslatorCreateFromDeviceRequest.repeatedFields_ = [3];
41384
+
41385
+
41386
+
41387
+ if (jspb.Message.GENERATE_TO_OBJECT) {
41388
+ /**
41389
+ * Creates an object representation of this proto.
41390
+ * Field names that are reserved in JavaScript and will be renamed to pb_name.
41391
+ * Optional fields that are not set will be set to undefined.
41392
+ * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
41393
+ * For the list of reserved names please see:
41394
+ * net/proto2/compiler/js/internal/generator.cc#kKeyword.
41395
+ * @param {boolean=} opt_includeInstance Deprecated. whether to include the
41396
+ * JSPB instance for transitional soy proto support:
41397
+ * http://goto/soy-param-migration
41398
+ * @return {!Object}
41399
+ */
41400
+ proto.zaber.motion.protobufs.TranslatorCreateFromDeviceRequest.prototype.toObject = function(opt_includeInstance) {
41401
+ return proto.zaber.motion.protobufs.TranslatorCreateFromDeviceRequest.toObject(opt_includeInstance, this);
41402
+ };
41403
+
41404
+
41405
+ /**
41406
+ * Static version of the {@see toObject} method.
41407
+ * @param {boolean|undefined} includeInstance Deprecated. Whether to include
41408
+ * the JSPB instance for transitional soy proto support:
41409
+ * http://goto/soy-param-migration
41410
+ * @param {!proto.zaber.motion.protobufs.TranslatorCreateFromDeviceRequest} msg The msg instance to transform.
41411
+ * @return {!Object}
41412
+ * @suppress {unusedLocalVariables} f is only used for nested messages
41413
+ */
41414
+ proto.zaber.motion.protobufs.TranslatorCreateFromDeviceRequest.toObject = function(includeInstance, msg) {
41415
+ var f, obj = {
41416
+ interfaceId: jspb.Message.getFieldWithDefault(msg, 1, 0),
41417
+ device: jspb.Message.getFieldWithDefault(msg, 2, 0),
41418
+ axesList: (f = jspb.Message.getRepeatedField(msg, 3)) == null ? undefined : f,
41419
+ config: (f = msg.getConfig()) && proto.zaber.motion.protobufs.TranslatorConfig.toObject(includeInstance, f)
41420
+ };
41421
+
41422
+ if (includeInstance) {
41423
+ obj.$jspbMessageInstance = msg;
41424
+ }
41425
+ return obj;
41426
+ };
41427
+ }
41428
+
41429
+
41430
+ /**
41431
+ * Deserializes binary data (in protobuf wire format).
41432
+ * @param {jspb.ByteSource} bytes The bytes to deserialize.
41433
+ * @return {!proto.zaber.motion.protobufs.TranslatorCreateFromDeviceRequest}
41434
+ */
41435
+ proto.zaber.motion.protobufs.TranslatorCreateFromDeviceRequest.deserializeBinary = function(bytes) {
41436
+ var reader = new jspb.BinaryReader(bytes);
41437
+ var msg = new proto.zaber.motion.protobufs.TranslatorCreateFromDeviceRequest;
41438
+ return proto.zaber.motion.protobufs.TranslatorCreateFromDeviceRequest.deserializeBinaryFromReader(msg, reader);
41439
+ };
41440
+
41441
+
41442
+ /**
41443
+ * Deserializes binary data (in protobuf wire format) from the
41444
+ * given reader into the given message object.
41445
+ * @param {!proto.zaber.motion.protobufs.TranslatorCreateFromDeviceRequest} msg The message object to deserialize into.
41446
+ * @param {!jspb.BinaryReader} reader The BinaryReader to use.
41447
+ * @return {!proto.zaber.motion.protobufs.TranslatorCreateFromDeviceRequest}
41448
+ */
41449
+ proto.zaber.motion.protobufs.TranslatorCreateFromDeviceRequest.deserializeBinaryFromReader = function(msg, reader) {
41450
+ while (reader.nextField()) {
41451
+ if (reader.isEndGroup()) {
41452
+ break;
41453
+ }
41454
+ var field = reader.getFieldNumber();
41455
+ switch (field) {
41456
+ case 1:
41457
+ var value = /** @type {number} */ (reader.readInt32());
41458
+ msg.setInterfaceId(value);
41459
+ break;
41460
+ case 2:
41461
+ var value = /** @type {number} */ (reader.readInt32());
41462
+ msg.setDevice(value);
41463
+ break;
41464
+ case 3:
41465
+ var values = /** @type {!Array<number>} */ (reader.isDelimited() ? reader.readPackedInt32() : [reader.readInt32()]);
41466
+ for (var i = 0; i < values.length; i++) {
41467
+ msg.addAxes(values[i]);
41468
+ }
41469
+ break;
41470
+ case 4:
41471
+ var value = new proto.zaber.motion.protobufs.TranslatorConfig;
41472
+ reader.readMessage(value,proto.zaber.motion.protobufs.TranslatorConfig.deserializeBinaryFromReader);
41473
+ msg.setConfig(value);
41474
+ break;
41475
+ default:
41476
+ reader.skipField();
41477
+ break;
41478
+ }
41479
+ }
41480
+ return msg;
41481
+ };
41482
+
41483
+
41484
+ /**
41485
+ * Serializes the message to binary data (in protobuf wire format).
41486
+ * @return {!Uint8Array}
41487
+ */
41488
+ proto.zaber.motion.protobufs.TranslatorCreateFromDeviceRequest.prototype.serializeBinary = function() {
41489
+ var writer = new jspb.BinaryWriter();
41490
+ proto.zaber.motion.protobufs.TranslatorCreateFromDeviceRequest.serializeBinaryToWriter(this, writer);
41491
+ return writer.getResultBuffer();
41492
+ };
41493
+
41494
+
41495
+ /**
41496
+ * Serializes the given message to binary data (in protobuf wire
41497
+ * format), writing to the given BinaryWriter.
41498
+ * @param {!proto.zaber.motion.protobufs.TranslatorCreateFromDeviceRequest} message
41499
+ * @param {!jspb.BinaryWriter} writer
41500
+ * @suppress {unusedLocalVariables} f is only used for nested messages
41501
+ */
41502
+ proto.zaber.motion.protobufs.TranslatorCreateFromDeviceRequest.serializeBinaryToWriter = function(message, writer) {
41503
+ var f = undefined;
41504
+ f = message.getInterfaceId();
41505
+ if (f !== 0) {
41506
+ writer.writeInt32(
41507
+ 1,
41508
+ f
41509
+ );
41510
+ }
41511
+ f = message.getDevice();
41512
+ if (f !== 0) {
41513
+ writer.writeInt32(
41514
+ 2,
41515
+ f
41516
+ );
41517
+ }
41518
+ f = message.getAxesList();
41519
+ if (f.length > 0) {
41520
+ writer.writePackedInt32(
41521
+ 3,
41522
+ f
41523
+ );
41524
+ }
41525
+ f = message.getConfig();
41526
+ if (f != null) {
41527
+ writer.writeMessage(
41528
+ 4,
41529
+ f,
41530
+ proto.zaber.motion.protobufs.TranslatorConfig.serializeBinaryToWriter
41531
+ );
41532
+ }
41533
+ };
41534
+
41535
+
41536
+ /**
41537
+ * optional int32 interface_id = 1;
41538
+ * @return {number}
41539
+ */
41540
+ proto.zaber.motion.protobufs.TranslatorCreateFromDeviceRequest.prototype.getInterfaceId = function() {
41541
+ return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 1, 0));
41542
+ };
41543
+
41544
+
41545
+ /**
41546
+ * @param {number} value
41547
+ * @return {!proto.zaber.motion.protobufs.TranslatorCreateFromDeviceRequest} returns this
41548
+ */
41549
+ proto.zaber.motion.protobufs.TranslatorCreateFromDeviceRequest.prototype.setInterfaceId = function(value) {
41550
+ return jspb.Message.setProto3IntField(this, 1, value);
41551
+ };
41552
+
41553
+
41554
+ /**
41555
+ * optional int32 device = 2;
41556
+ * @return {number}
41557
+ */
41558
+ proto.zaber.motion.protobufs.TranslatorCreateFromDeviceRequest.prototype.getDevice = function() {
41559
+ return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 2, 0));
41560
+ };
41561
+
41562
+
41563
+ /**
41564
+ * @param {number} value
41565
+ * @return {!proto.zaber.motion.protobufs.TranslatorCreateFromDeviceRequest} returns this
41566
+ */
41567
+ proto.zaber.motion.protobufs.TranslatorCreateFromDeviceRequest.prototype.setDevice = function(value) {
41568
+ return jspb.Message.setProto3IntField(this, 2, value);
41569
+ };
41570
+
41571
+
41572
+ /**
41573
+ * repeated int32 axes = 3;
41574
+ * @return {!Array<number>}
41575
+ */
41576
+ proto.zaber.motion.protobufs.TranslatorCreateFromDeviceRequest.prototype.getAxesList = function() {
41577
+ return /** @type {!Array<number>} */ (jspb.Message.getRepeatedField(this, 3));
41578
+ };
41579
+
41580
+
41581
+ /**
41582
+ * @param {!Array<number>} value
41583
+ * @return {!proto.zaber.motion.protobufs.TranslatorCreateFromDeviceRequest} returns this
41584
+ */
41585
+ proto.zaber.motion.protobufs.TranslatorCreateFromDeviceRequest.prototype.setAxesList = function(value) {
41586
+ return jspb.Message.setField(this, 3, value || []);
41587
+ };
41588
+
41589
+
41590
+ /**
41591
+ * @param {number} value
41592
+ * @param {number=} opt_index
41593
+ * @return {!proto.zaber.motion.protobufs.TranslatorCreateFromDeviceRequest} returns this
41594
+ */
41595
+ proto.zaber.motion.protobufs.TranslatorCreateFromDeviceRequest.prototype.addAxes = function(value, opt_index) {
41596
+ return jspb.Message.addToRepeatedField(this, 3, value, opt_index);
41597
+ };
41598
+
41599
+
41600
+ /**
41601
+ * Clears the list making it empty but non-null.
41602
+ * @return {!proto.zaber.motion.protobufs.TranslatorCreateFromDeviceRequest} returns this
41603
+ */
41604
+ proto.zaber.motion.protobufs.TranslatorCreateFromDeviceRequest.prototype.clearAxesList = function() {
41605
+ return this.setAxesList([]);
41606
+ };
41607
+
41608
+
41609
+ /**
41610
+ * optional TranslatorConfig config = 4;
41611
+ * @return {?proto.zaber.motion.protobufs.TranslatorConfig}
41612
+ */
41613
+ proto.zaber.motion.protobufs.TranslatorCreateFromDeviceRequest.prototype.getConfig = function() {
41614
+ return /** @type{?proto.zaber.motion.protobufs.TranslatorConfig} */ (
41615
+ jspb.Message.getWrapperField(this, proto.zaber.motion.protobufs.TranslatorConfig, 4));
41616
+ };
41617
+
41618
+
41619
+ /**
41620
+ * @param {?proto.zaber.motion.protobufs.TranslatorConfig|undefined} value
41621
+ * @return {!proto.zaber.motion.protobufs.TranslatorCreateFromDeviceRequest} returns this
41622
+ */
41623
+ proto.zaber.motion.protobufs.TranslatorCreateFromDeviceRequest.prototype.setConfig = function(value) {
41624
+ return jspb.Message.setWrapperField(this, 4, value);
41625
+ };
41626
+
41627
+
41628
+ /**
41629
+ * Clears the message field making it undefined.
41630
+ * @return {!proto.zaber.motion.protobufs.TranslatorCreateFromDeviceRequest} returns this
41631
+ */
41632
+ proto.zaber.motion.protobufs.TranslatorCreateFromDeviceRequest.prototype.clearConfig = function() {
41633
+ return this.setConfig(undefined);
41634
+ };
41635
+
41636
+
41637
+ /**
41638
+ * Returns whether this field is set.
41639
+ * @return {boolean}
41640
+ */
41641
+ proto.zaber.motion.protobufs.TranslatorCreateFromDeviceRequest.prototype.hasConfig = function() {
41642
+ return jspb.Message.getField(this, 4) != null;
41643
+ };
41644
+
41645
+
41646
+
41326
41647
 
41327
41648
 
41328
41649
  if (jspb.Message.GENERATE_TO_OBJECT) {