1 /****************************************************************************
6 ****************************************************************************/
8 #define SND_RAWMIDI_OPEN_OUTPUT (O_WRONLY)
9 #define SND_RAWMIDI_OPEN_OUTPUT_APPEND (O_WRONLY|O_APPEND|O_NONBLOCK)
10 #define SND_RAWMIDI_OPEN_INPUT (O_RDONLY)
11 #define SND_RAWMIDI_OPEN_DUPLEX (O_RDWR)
12 #define SND_RAWMIDI_OPEN_DUPLEX_APPEND (O_RDWR|O_APPEND|O_NONBLOCK)
13 #define SND_RAWMIDI_OPEN_NONBLOCK (O_NONBLOCK)
19 typedef struct snd_rawmidi snd_rawmidi_t;
21 int snd_rawmidi_open(snd_rawmidi_t **handle, int card, int device, int mode);
22 int snd_rawmidi_close(snd_rawmidi_t *handle);
23 int snd_rawmidi_poll_descriptor(snd_rawmidi_t *handle);
24 int snd_rawmidi_block_mode(snd_rawmidi_t *handle, int enable);
25 int snd_rawmidi_info(snd_rawmidi_t *handle, snd_rawmidi_info_t * info);
26 int snd_rawmidi_stream_params(snd_rawmidi_t *handle, snd_rawmidi_params_t * params);
27 int snd_rawmidi_stream_setup(snd_rawmidi_t *handle, snd_rawmidi_setup_t * setup);
28 int snd_rawmidi_stream_status(snd_rawmidi_t *handle, snd_rawmidi_status_t * status);
29 int snd_rawmidi_output_drop(snd_rawmidi_t *handle);
30 int snd_rawmidi_output_drain(snd_rawmidi_t *handle);
31 int snd_rawmidi_input_drain(snd_rawmidi_t *handle);
32 int snd_rawmidi_stream_drain(snd_rawmidi_t *handle, int channel);
33 ssize_t snd_rawmidi_write(snd_rawmidi_t *handle, const void *buffer, size_t size);
34 ssize_t snd_rawmidi_read(snd_rawmidi_t *handle, void *buffer, size_t size);