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_LinDataLengthUnknown
in the C headerLin.h
used to be aconst
global, 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
SilKitError
on 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
--async
mode 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
bin
directory 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.