usb_message.h 1.1 KB

12345678910111213141516171819202122232425262728
  1. #pragma once
  2. #include <stdint.h>
  3. typedef enum {
  4. CodeIndexMisc = 0x0, /**< Reserved, MIDI Size: 1, 2, 3 */
  5. CodeIndexCableEvent = 0x1, /**< Reserved, MIDI Size: 1, 2, 3 */
  6. CodeIndexSysEx2Byte = 0x2, /**< MIDI Size: 2 */
  7. CodeIndexSysEx3Byte = 0x3, /**< MIDI Size: 3 */
  8. CodeIndexSysExStart = 0x4, /**< MIDI Size: 3 */
  9. CodeIndexCommon1Byte = 0x5, /**< MIDI Size: 1 */
  10. CodeIndexSysExEnd1Byte = 0x5, /**< MIDI Size: 1 */
  11. CodeIndexSysExEnd2Byte = 0x6, /**< MIDI Size: 2 */
  12. CodeIndexSysExEnd3Byte = 0x7, /**< MIDI Size: 3 */
  13. CodeIndexNoteOff = 0x8, /**< MIDI Size: 3 */
  14. CodeIndexNoteOn = 0x9, /**< MIDI Size: 3 */
  15. CodeIndexPolyKeyPress = 0xA, /**< MIDI Size: 3 */
  16. CodeIndexControlChange = 0xB, /**< MIDI Size: 3 */
  17. CodeIndexProgramChange = 0xC, /**< MIDI Size: 2 */
  18. CodeIndexChannelPressure = 0xD, /**< MIDI Size: 2 */
  19. CodeIndexPitchBendChange = 0xE, /**< MIDI Size: 3 */
  20. CodeIndexSingleByte = 0xF, /**< MIDI Size: 1 */
  21. } CodeIndex;
  22. CodeIndex code_index_from_data(uint8_t data);
  23. uint8_t cable_id_from_data(uint8_t data);
  24. uint8_t usb_message_data_size(CodeIndex code_index);