@synapticon/motion-master-proto v5.2.2
motion-master-proto
Motion Master Proto contains statically generated code used to communicate with the Motion Master. This library is meant to be used by all applications that will interact with the Motion Master protobuf messages and it contains the code generated for TypeScript, Java, C++ and JavaScript. The protobuf.js is used to generate the TypeScript code and protoc is used for all other languages.
protobuf.js
Install
npm install motion-master-proto --saveUsage
Import:
import * as motionMasterProto from 'motion-master-proto';
export import motionmaster = motionMasterProto.motionmaster;Create devices message example:
let devices = motionmaster.Devices.create();See how this library is used in Motion Master Simulator.
Develop
Replace motion-master.proto file with the latest version and run $ npm run build.
When developing consider symlinking a package folder with npm-link.
Generate
$ pbjs --target static-module --wrap commonjs --out motion-master.proto.js motion-master.proto
$ pbts --out motion-master.proto.d.ts motion-master.proto.jsC++
Usage
Include:
#include <motion-master.pb.h>
using namespace motionmaster;Example - Create a status meesage with a single device:
Status status;
Devices *devices = status.mutable_devices();
Devices::Device *device = devices->add_device();
device->set_device_id(i);
device->set_device_type(Devices::CIA402_DRIVE);
device->mutable_firmware()->set_version("0.0.1");Generate
protoc --cpp_out=$PWD -I=$PWD $PWD/motion-master.protoor simply execute the following script:
$ generation_scripts/compile_protocol_buffer_C++_API.shJava
Usage
Build the Java library as a local Maven package (from the "Java" directory):
$ mvn clean install -DskipTestsand include it inside the "pom.xml" file of the Java project:
<dependencies>
<dependency>
<groupId>com.synapticon.motionmaster-api</groupId>
<artifactId>motionmaster-api</artifactId>
<version>0.0.34</version>
</dependency>
</dependencies>Generate
protoc --java_out=$PWD -I=$PWD $PWD/motion-master.protoor simply execute the following script:
$ generation_scripts/compile_protocol_buffer_Java_API.shJavaScript
The code generated for JavaScript is used only for the SOMANETdrive web application and can be considered as legacy code.
Generate
$ protoc --js_out=import_style=commonjs,binary:$PWD -I=$PWD $PWD/motion-master.protoor simply execute the following script:
$ generation_scripts/compile_protocol_buffer_JavaScript_API.sh3 years ago
3 years ago
3 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago