|
dxd - dynax driver framework 3.0.1d223
cross platform open source driver development framework
|
#include "dx_circular.h"Classes | |
| struct | dx::midi::circular |
| the byte ring of a MIDI 1.0 stream: the reader takes whole messages alone, running status resolved against the status byte it keeps between calls, and a message the ring does not hold completely stays for the next round More... | |
| struct | dx::midi::ump::circular |
| the ring of stamped Universal MIDI Packets: an entry is the stamp in two words, low first, and the words of one packet; a read cuts on whole entries, so a reader never sees a torn one The ring's size is a multiple of the word, so a word never wraps. More... | |
| struct | dx::midi::ump::packet |
| one packet with its moment: the dx::timestamp() it arrived at or is due at, the words of the packet, words() how many of them the message takes More... | |
Namespaces | |
| namespace | dx |
| dynax driver framework interface namespace | |
| namespace | dx::midi |
| namespace | dx::midi::ump |
| the Universal MIDI Packet: whole 32 bit words, one to four a packet, the message type in the top nibble of the first word saying how many, the group in the nibble below it | |
Enumerations | |
| enum | dx::midi::ump::type : uint8_t { dx::midi::ump::utility = 0x0 , dx::midi::ump::system = 0x1 , dx::midi::ump::voice1 = 0x2 , dx::midi::ump::data64 = 0x3 , dx::midi::ump::voice2 = 0x4 , dx::midi::ump::data128 = 0x5 , dx::midi::ump::flex = 0xd , dx::midi::ump::stream = 0xf } |
Functions | |
| uint32_t | dx::midi::ump::decode (const uint32_t *src, uint8_t *dst) noexcept |
| one packet into MIDI 1.0 bytes: the bytes written returned, 0 for a packet that carries no MIDI 1.0 message (a MIDI 2.0 voice, a utility, a stream) A system exclusive comes out with F0 ahead of a start or a complete packet and F7 behind an end or a complete one; dst holds 8 bytes. | |
| uint32_t | dx::midi::ump::encode (uint8_t group, const uint8_t *src, size_t size, uint32_t *dst) noexcept |
| MIDI 1.0 bytes into packets on a group: one message per call, the words it takes returned - a channel voice or system message one word, a system exclusive of n bytes (F0 and F7 included) ceil(n- 2, 6) words in pairs dst holds room for the packets; 0 for a message the bytes do not complete. | |
| constexpr uint8_t | dx::midi::ump::following (uint8_t status) noexcept |
| the data bytes a MIDI 1.0 status byte is followed by (system exclusive open ended: 0xff) | |
| constexpr uint8_t | dx::midi::ump::group (uint32_t word0) noexcept |
| constexpr uint8_t | dx::midi::ump::type (uint32_t word0) noexcept |
| constexpr uint8_t | dx::midi::ump::words (uint32_t word0) noexcept |
| the words a packet holds, by the message type of its first word | |
| (c) copyright 2009 dynamic acoustics e.U. | generated on |