This is a simple queue implementation used to manage events. Its main purpose is to handle (asynchronous) events in a super-loop. Usually, this technique is used in non-RTOS embedded systems. Reentrancy is not supported.
The code is released under the BSD 3-clause "New" or "Revised" License (see LICENSE.md file or http://www.opensource.org/licenses/BSD-3-Clause)