VSS2DDSIDL converter is used to export VSS file data to DDS IDL file (4.2 version)
- DDS : Data Distribution Service
- IDL : Interface Definition Language
- VSS : Vehicle Signal Specification
- Name
- datatype (also single dimensional array is supported)
- allowed
Below elements are considered only if the switch --all-idl-features is supplied as a command line argument
- type
- min, max
- unit
- description
VSS | DDS-IDL |
---|---|
uint8 | octet |
int8 | octet |
uint16 | unsigned short |
int16 | short |
uint32 | unsigned long |
int32 | long |
uint64 | unsigned long long |
int64 | long long |
boolean | boolean |
float | float |
double | double |
string | string |
VSS | DDS-IDL |
---|---|
Safety.SpeedLimit: |
struct SpeedLimit{ |
VSS | DDS-IDL |
---|---|
Direction: |
module Direction_M { |
IDL files can be supplied as input to one of the DDS impementation (e.g: CycloeDDS, FastDDS) and the data can be validated, and also stubs (python/c++/java code) can be generated from the contents in the IDL file.
$ git clone https://github.com/eclipse-cyclonedds/cyclonedds.git
$ pip3 install cyclonedds conan
$ cd cyclonedds/ \
&& mkdir build \
&& cd build \
&& conan install .. --build missing \
&& cmake .. \
&& cmake --build . --target install
Usage of CycloneDDS to take IDL file as input and generate Python file with types
idlc -l py ./results/res.idl
Installation of FastDDS
Follow the instructions mentioned in page : https://fast-dds.docs.eprosima.com/en/latest/installation/binaries/binaries_linux.html
Usage of FastDDS to take IDL file as input and generate Python file with types
./fastddsgen -replace ./results/res.idl