summaryrefslogtreecommitdiff
path: root/src/class/midi/midi_device.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/class/midi/midi_device.h')
-rw-r--r--src/class/midi/midi_device.h102
1 files changed, 60 insertions, 42 deletions
diff --git a/src/class/midi/midi_device.h b/src/class/midi/midi_device.h
index 5e7df80ae..67f03930c 100644
--- a/src/class/midi/midi_device.h
+++ b/src/class/midi/midi_device.h
@@ -59,29 +59,64 @@
// Application API (Multiple Interfaces)
// CFG_TUD_MIDI > 1
//--------------------------------------------------------------------+
-bool tud_midi_n_mounted (uint8_t itf);
-uint32_t tud_midi_n_available (uint8_t itf, uint8_t cable_num);
-uint32_t tud_midi_n_read (uint8_t itf, uint8_t cable_num, void* buffer, uint32_t bufsize);
-void tud_midi_n_read_flush (uint8_t itf, uint8_t cable_num);
-uint32_t tud_midi_n_write (uint8_t itf, uint8_t cable_num, uint8_t const* buffer, uint32_t bufsize);
-static inline
-uint32_t tud_midi_n_write24 (uint8_t itf, uint8_t cable_num, uint8_t b1, uint8_t b2, uint8_t b3);
+// Check if midi interface is mounted
+bool tud_midi_n_mounted (uint8_t itf);
-bool tud_midi_n_receive (uint8_t itf, uint8_t packet[4]);
-bool tud_midi_n_send (uint8_t itf, uint8_t const packet[4]);
+// Get the number of bytes available for reading
+uint32_t tud_midi_n_available (uint8_t itf, uint8_t cable_num);
+
+// Read byte stream (legacy)
+uint32_t tud_midi_n_stream_read (uint8_t itf, uint8_t cable_num, void* buffer, uint32_t bufsize);
+
+// Write byte Stream (legacy)
+uint32_t tud_midi_n_stream_write (uint8_t itf, uint8_t cable_num, uint8_t const* buffer, uint32_t bufsize);
+
+// Read event packet (4 bytes)
+bool tud_midi_n_packet_read (uint8_t itf, uint8_t packet[4]);
+
+// Write event packet (4 bytes)
+bool tud_midi_n_packet_write (uint8_t itf, uint8_t const packet[4]);
//--------------------------------------------------------------------+
// Application API (Single Interface)
//--------------------------------------------------------------------+
-static inline bool tud_midi_mounted (void);
-static inline uint32_t tud_midi_available (void);
-static inline uint32_t tud_midi_read (void* buffer, uint32_t bufsize);
-static inline void tud_midi_read_flush (void);
-static inline uint32_t tud_midi_write (uint8_t cable_num, uint8_t const* buffer, uint32_t bufsize);
-static inline uint32_t tud_midi_write24 (uint8_t cable_num, uint8_t b1, uint8_t b2, uint8_t b3);
-static inline bool tud_midi_receive (uint8_t packet[4]);
-static inline bool tud_midi_send (uint8_t const packet[4]);
+static inline bool tud_midi_mounted (void);
+static inline uint32_t tud_midi_available (void);
+
+static inline uint32_t tud_midi_stream_read (void* buffer, uint32_t bufsize);
+static inline uint32_t tud_midi_stream_write (uint8_t cable_num, uint8_t const* buffer, uint32_t bufsize);
+
+static inline bool tud_midi_packet_read (uint8_t packet[4]);
+static inline bool tud_midi_packet_write (uint8_t const packet[4]);
+
+//------------- Deprecated API name -------------//
+// TODO remove after 0.10.0 release
+
+TU_ATTR_DEPRECATED("tud_midi_read() is renamed to tud_midi_stream_read()")
+static inline uint32_t tud_midi_read (void* buffer, uint32_t bufsize)
+{
+ return tud_midi_stream_read(buffer, bufsize);
+}
+
+TU_ATTR_DEPRECATED("tud_midi_write() is renamed to tud_midi_stream_write()")
+static inline uint32_t tud_midi_write(uint8_t cable_num, uint8_t const* buffer, uint32_t bufsize)
+{
+ return tud_midi_stream_write(cable_num, buffer, bufsize);
+}
+
+
+TU_ATTR_DEPRECATED("tud_midi_send() is renamed to tud_midi_packet_write()")
+static inline bool tud_midi_send(uint8_t packet[4])
+{
+ return tud_midi_packet_write(packet);
+}
+
+TU_ATTR_DEPRECATED("tud_midi_receive() is renamed to tud_midi_packet_read()")
+static inline bool tud_midi_receive(uint8_t packet[4])
+{
+ return tud_midi_packet_read(packet);
+}
//--------------------------------------------------------------------+
// Application Callback API (weak is optional)
@@ -92,12 +127,6 @@ TU_ATTR_WEAK void tud_midi_rx_cb(uint8_t itf);
// Inline Functions
//--------------------------------------------------------------------+
-static inline uint32_t tud_midi_n_write24 (uint8_t itf, uint8_t cable_num, uint8_t b1, uint8_t b2, uint8_t b3)
-{
- uint8_t msg[3] = { b1, b2, b3 };
- return tud_midi_n_write(itf, cable_num, msg, 3);
-}
-
static inline bool tud_midi_mounted (void)
{
return tud_midi_n_mounted(0);
@@ -108,35 +137,24 @@ static inline uint32_t tud_midi_available (void)
return tud_midi_n_available(0, 0);
}
-static inline uint32_t tud_midi_read (void* buffer, uint32_t bufsize)
-{
- return tud_midi_n_read(0, 0, buffer, bufsize);
-}
-
-static inline void tud_midi_read_flush (void)
-{
- tud_midi_n_read_flush(0, 0);
-}
-
-static inline uint32_t tud_midi_write (uint8_t cable_num, uint8_t const* buffer, uint32_t bufsize)
+static inline uint32_t tud_midi_stream_read (void* buffer, uint32_t bufsize)
{
- return tud_midi_n_write(0, cable_num, buffer, bufsize);
+ return tud_midi_n_stream_read(0, 0, buffer, bufsize);
}
-static inline uint32_t tud_midi_write24 (uint8_t cable_num, uint8_t b1, uint8_t b2, uint8_t b3)
+static inline uint32_t tud_midi_stream_write (uint8_t cable_num, uint8_t const* buffer, uint32_t bufsize)
{
- uint8_t msg[3] = { b1, b2, b3 };
- return tud_midi_write(cable_num, msg, 3);
+ return tud_midi_n_stream_write(0, cable_num, buffer, bufsize);
}
-static inline bool tud_midi_receive (uint8_t packet[4])
+static inline bool tud_midi_packet_read (uint8_t packet[4])
{
- return tud_midi_n_receive(0, packet);
+ return tud_midi_n_packet_read(0, packet);
}
-static inline bool tud_midi_send (uint8_t const packet[4])
+static inline bool tud_midi_packet_write (uint8_t const packet[4])
{
- return tud_midi_n_send(0, packet);
+ return tud_midi_n_packet_write(0, packet);
}
//--------------------------------------------------------------------+