v4.0.55
This is a Quality Assured Release.
Refer to the Changelog for details.
The compiled HTML documentation can be found in the SilKit-Documentation subdirectory in all SilKit-VERSION-PLATFORM-ARCHITECTURE-TOOLSET.zip archives.
Changed
-
Important
SilKit_LinDataLengthUnknownin the C headerLin.hused to be aconstglobal, which could cause linker issues if the header file is used in multiple translation units in the same binary.It has been turned into a
#define, like all the other constants in the C header files.The symbol was not present in the dynamic symbol table of the
SilKit.dll/.so, so this change does not break the ABI of the shared libraries. -
Aligned C API error return codes
SilKit_ReturnCode_<ERRORTYPE>and SIL Kit specific exceptions.
All exceptions are now forwarded through the hourglass and thrown in the C++ API.
For users of the C API, a more detailed error handling is possible with the extended error return codes.Before, all execptions ended up as
SilKitErroron the user side. -
Overhaul of SIL Kit demos
-
Restructured into categories communication, api and tools
-
Communication demos: Can, Ethernet, Lin, Flexray, PubSub and Rpc demos
- These demos are split into one participant per executable
- Basic SIL Kit features are implemented in a base class used by the demos
- No command line arguments needed for basic execution (with time synchronization and coordinated start)
- Useful command line arguments are provided for all demos (e.g. rename the participant or network, logging, execution modes)
- The old
--asyncmode of the demos now is accessible by--async --autonomous(or short form-aA)
-
Added
-
New demos for basic API usage
- SimpleCan
- Orchestration demos
-
Demos: Sample participant configurations
Fixed
-
Registry: Block all attempts to connect with an already present participant name, not just the first.
-
CMake: When demos are installed into the
bindirectory under the installation prefix, their RPATH will be set such that they are able to find thelibSilKit[d].so. This is the same RPATH value as the utility executables. -
System Monitor: Show all participants, not just the ones that joined during the monitors execution.