Device implementation functions. More...
#include "midi_function_types.h"#include "bytequeue/bytequeue.h"Go to the source code of this file.
Classes | |
| struct | _midi_device |
| This structure represents the input and output functions and processing data for a midi device. More... | |
Defines | |
| #define | MIDI_INPUT_QUEUE_LENGTH 192 |
Typedefs | |
| typedef void(* | midi_no_byte_func_t )(MidiDevice *device) |
Enumerations | |
| enum | input_state_t { IDLE, ONE_BYTE_MESSAGE = 1, TWO_BYTE_MESSAGE = 2, THREE_BYTE_MESSAGE = 3, SYSEX_MESSAGE } |
Functions | |
| void | midi_device_input (MidiDevice *device, uint8_t cnt, uint8_t byte0, uint8_t byte1, uint8_t byte2) |
| Process input bytes. This function parses bytes and calls the appropriate callbacks associated with the given device. You use this function if you are creating a custom device and you want to have midi input. | |
| void | midi_device_set_send_func (MidiDevice *device, midi_var_byte_func_t send_func) |
| Set the callback function that will be used for sending output data bytes. This is only used if you're creating a custom device. You'll most likely want the callback function to disable interrupts so that you can call the various midi send functions without worrying about locking. | |
| void | midi_device_set_pre_input_process_func (MidiDevice *device, midi_no_byte_func_t pre_process_func) |
| Set a callback which is called at the beginning of the midi_device_process call. This can be used to poll for input data and send the data through the midi_device_input function. You'll probably only use this if you're creating a custom device. | |
Device implementation functions.
1.7.1