libusbx is a library which provides generic access to USB devices. As a library, it is meant to facilitate the development of applications which communicate with USB hardware. Its main features are portability (a single cross-platform API for Linux, OS X, Windows, and *BSD), user-mode (no special privileges required), and USB version-agnosticism (all versions of the protocol supported, including USB 3.0).
The stx::CBTreeDB is a collection of C++ classes with which read-only key-value database files can be created and read. A database efficiently maps a large number of integral fixed-length keys to opaque binary value blobs. Variable-length or duplicate keys are currently not supported. Keys are organized into a highly compact index structure, which is very similar to a B-tree and allows very fast key lookups. Both keys and values are stored in order and thus queries in a local proximity can benefit from caching effects. All applications mapping a large number of constant, integral keys to string or data blobs can benefit from this library.