[−][src]Crate bbqueue
BBQueue
BBQueue, short for "BipBuffer Queue", is a (work in progress) Single Producer Single Consumer, lockless, no_std, thread safe, queue, based on BipBuffers.
It is designed (primarily) to be a First-In, First-Out queue for use with DMA on embedded systems.
While Circular/Ring Buffers allow you to send data between two threads (or from an interrupt to main code), you must push the data one piece at a time. With BBQueue, you instead are granted a block of contiguous memory, which can be filled (or emptied) by a DMA engine.
TODO: Update usage examples
Modules
| consts | Type aliases for many constants. |
Structs
| BBBuffer | A backing structure for a BBQueue. Can be used to create either a BBQueue or a split Producer/Consumer pair |
| ConstBBBuffer |
|
| Consumer | |
| GrantR | A structure representing a contiguous region of memory that may be read from, and potentially "released" (or cleared) from the queue |
| GrantW | A structure representing a contiguous region of memory that may be written to, and potentially "committed" to the queue |
| Producer |
Enums
| Error | Error type used by the |
Type Definitions
| Result | Result type used by the |