LibGII is based on the concept of input streams, which virtualize access to the underlying input drivers. Events from various input devices are abstracted into easy-to-use structures.
LibGII also allows the application to join streams together, receiving input from an arbitrary combination of devices.
LibGII is a separate component from LibGGI, although LibGGI depends on LibGII for input purposes.