1
2
3
4
5
6
7
8 #ifndef MIDI_H
9 #define MIDI_H
10
11 #include <sound/rawmidi.h>
12
13 #include "midibuf.h"
14
15 #define MIDI_BUFFER_SIZE 1024
16
17 struct snd_line6_midi {
18
19 struct usb_line6 *line6;
20
21
22 struct snd_rawmidi_substream *substream_receive;
23
24
25 struct snd_rawmidi_substream *substream_transmit;
26
27
28 int num_active_send_urbs;
29
30
31 spinlock_t lock;
32
33
34 wait_queue_head_t send_wait;
35
36
37 struct midi_buffer midibuf_in;
38
39
40 struct midi_buffer midibuf_out;
41 };
42
43 extern int line6_init_midi(struct usb_line6 *line6);
44 extern void line6_midi_receive(struct usb_line6 *line6, unsigned char *data,
45 int length);
46
47 #endif