CAPS Universe documentation  1.0.4
All you need to know to be successful
libcapsbase

libcapsbase: the big bang of the CAPS universe

The libcapsbase is the first library for the CAPS universe. It handles some basic things like message filtering and filesystem paths used by all CAPS universe components. This library is used by almost all other CAPS universe components.

  • it handles textual output of all other CAPS universe components and thus, can be used to handle it in any special way (filtering via verbosity level for example, refer Message macros for details). Since almost all other CAPS universe components are using this library, the textual output verbosity level can be set individually for each component.
  • it is used to provide all kind of filesystem paths for all other CAPS universe components as well (refer Helper functions for details). Due to this, the other CAPS universe components don't need any individual filesystem path setup, they ask libcapsbase instead.
  • additionally it handles severe failures at one central point. This includes to abort its caller to force a coredump for post mortem analysis (refer Failure reporting/handling for details). It also creates stacktraces for architectures which supports this feature.
  • it has a dependency to a generic C library and to libsystemd on demand (for logging purposes)