CommonAPI C++ is an Inter Process Communication (IPC) language binding API for C++, which enables applications to use different IPC middleware as backend without any changes to the application code.
The intention is to make the IPC interface for application development independent from the underlying IPC middleware.
This way CommonAPI C++ can be used to easily adapt and optimize applications to different deployment environments, e.g. to exchange an applications communication from CAN to D-Bus or SomeIP, while retaining the application code as a generic component.
The actual CommonAPI C++ interface definitions (C++ header files) can be generated according to abstract interface specifications written in Franca Interface Description Language (Franca-IDL).
Many IPC backends can be implemented for CommonAPI C++, currently a D-Bus based IPC backend is available.
There is eclipse based tooling to accomplish code generation of IPC CommonAPI C++ header files as well as proper D-Bus implementations.