#include <MIDI_Interfaces/USBMIDI/LowLevel/BulkRX.hpp>
Receives Bulk packets (OUT for device mode, IN for host mode)
Definition at line 12 of file BulkRX.hpp.
Classes | |
struct | Reading |
State for reading incoming USB data. More... | |
Public Types | |
using | MessageType = MessageTypeT |
Public Member Functions | |
bool | read (MessageType &message) |
Try reading a single message. | |
Protected Member Functions | |
void | reset (uint16_t packet_size=MaxPacketSize) |
void | rx_start (void *data, uint32_t size)=delete |
Start a USB transfer (from the main program). | |
void | rx_start_isr (void *data, uint32_t size)=delete |
Start a USB transfer (from the USB interrupt handler). | |
void | rx_callback (uint32_t num_bytes_read) |
Private Types | |
using | rbuffer_t = std::remove_reference_t<decltype(reading.buffers[0])> |
Private Attributes | |
struct BulkRX::Reading | reading |
Static Private Attributes | |
static constexpr uint16_t | MaxPacketSize = MaxPacketSizeV |
static constexpr uint16_t | SizeReserved = MaxPacketSize + 1 |
static constexpr uint16_t | NumRxPackets = MaxPacketSize == 64 ? 16 : 4 |
static constexpr std::memory_order | mo_seq = std::memory_order_seq_cst |
static constexpr std::memory_order | mo_rel = std::memory_order_release |
static constexpr std::memory_order | mo_acq = std::memory_order_acquire |
static constexpr std::memory_order | mo_rlx = std::memory_order_relaxed |
static constexpr std::memory_order | mo_acq_rel = std::memory_order_acq_rel |
using MessageType = MessageTypeT |
Definition at line 14 of file BulkRX.hpp.
|
private |
Definition at line 56 of file BulkRX.hpp.
bool read | ( | MessageType & | message | ) |
Try reading a single message.
|
protected |
|
protecteddelete |
Start a USB transfer (from the main program).
|
protecteddelete |
Start a USB transfer (from the USB interrupt handler).
|
protected |
|
staticconstexprprivate |
Definition at line 24 of file BulkRX.hpp.
|
staticconstexprprivate |
Definition at line 25 of file BulkRX.hpp.
|
staticconstexprprivate |
Definition at line 26 of file BulkRX.hpp.
|
staticconstexprprivate |
Definition at line 37 of file BulkRX.hpp.
|
staticconstexprprivate |
Definition at line 38 of file BulkRX.hpp.
|
staticconstexprprivate |
Definition at line 39 of file BulkRX.hpp.
|
staticconstexprprivate |
Definition at line 40 of file BulkRX.hpp.
|
staticconstexprprivate |
Definition at line 41 of file BulkRX.hpp.
|
private |