- Host Configuration
- Runtime Node Configuration
- SDF Configuration
- Logfile Management
- Managing the Runtime
- Application Code Portability
- Building C Examples
- Building C++ Examples
- Building a Node
- Clone Example Repos
- Coordinate Frames
- Diagnostic Trouble Codes
- Extending the Data Model
- IDE Setup
- Logged vs Source vs Published Video Parameters
- MATLAB to Export - BETA
- PolySync Messages
- ROS Bridge
- Release Notes
- Standard Units
- Dynamic Driver/HW Interface Development
- Application Development
Extending the Data Model
PolySync provides a set of data model modules that are commonly used to develop autonomous vehicles. The modules can be modified and extended to include new data types, custom messages, and trouble codes.
Provided data model modules include:
- Diagnostic Trouble Code (DTC)
Defined in these modules are the messages used to pass around sensor and high level data: the types, constants, enums, and parameters required to describe how the data is connected to each other.
Data model modules
Modules are defined using IDL files to describe C data structures and constants. Each module must follow a naming convention and define certain macros, such as the module major, minor, and subminor version digits.
Once a module has been defined or modified, the data model libraries (.so) must be recompiled using the PolySync Data Model generator (pdm-gen) tool.
The PDM tool outputs a C and C++ API data model library:
To see all files that are generated, andwhere they need to be copied run the comand:
$ pdm-gen -h ... output files (copied by user) directory: <file> -> <system-location> libpolysync_data_model.so -> /lib libpolysync_cpp_message_support.so -> /lib psync.h -> /pdm psyncDcps.h -> /pdm psyncSacDcps.h -> /pdm psyncSplDcps.h -> /pdm psync.idl -> used to generate libpolysync_data_model.so psyncSacDcps.c -> symbols in libpolysync_data_model.so PolySyncDataModel.hpp -> /pdm