Linux Kernel
3.7.1
Main Page
Related Pages
Modules
Namespaces
Data Structures
Files
File List
Globals
All
Data Structures
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Groups
Pages
drivers
staging
line6
midi.h
Go to the documentation of this file.
1
/*
2
* Line6 Linux USB driver - 0.9.1beta
3
*
4
* Copyright (C) 2004-2010 Markus Grabner (
[email protected]
)
5
*
6
* This program is free software; you can redistribute it and/or
7
* modify it under the terms of the GNU General Public License as
8
* published by the Free Software Foundation, version 2.
9
*
10
*/
11
12
#ifndef MIDI_H
13
#define MIDI_H
14
15
#include <
sound/rawmidi.h
>
16
17
#include "
midibuf.h
"
18
19
#define MIDI_BUFFER_SIZE 1024
20
21
struct
snd_line6_midi
{
25
struct
usb_line6
*
line6
;
26
30
struct
snd_rawmidi_substream
*
substream_receive
;
31
35
struct
snd_rawmidi_substream
*
substream_transmit
;
36
40
int
num_active_send_urbs
;
41
45
spinlock_t
send_urb_lock
;
46
50
spinlock_t
midi_transmit_lock
;
51
55
wait_queue_head_t
send_wait
;
56
60
unsigned
short
midi_mask_transmit
;
61
65
unsigned
short
midi_mask_receive
;
66
70
struct
MidiBuffer
midibuf_in
;
71
75
struct
MidiBuffer
midibuf_out
;
76
};
77
78
extern
int
line6_init_midi
(
struct
usb_line6
*line6);
79
extern
void
line6_midi_receive
(
struct
usb_line6
*line6,
unsigned
char
*
data
,
80
int
length
);
81
82
#endif
Generated on Thu Jan 10 2013 14:29:09 for Linux Kernel by
1.8.2