Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
torvalds
GitHub Repository: torvalds/linux
Path: blob/master/sound/usb/line6/midibuf.h
26425 views
1
/* SPDX-License-Identifier: GPL-2.0-only */
2
/*
3
* Line 6 Linux USB driver
4
*
5
* Copyright (C) 2004-2010 Markus Grabner ([email protected])
6
*/
7
8
#ifndef MIDIBUF_H
9
#define MIDIBUF_H
10
11
#define LINE6_MIDIBUF_READ_TX 0
12
#define LINE6_MIDIBUF_READ_RX 1
13
14
struct midi_buffer {
15
unsigned char *buf;
16
int size;
17
int split;
18
int pos_read, pos_write;
19
int full;
20
int command_prev;
21
};
22
23
extern int line6_midibuf_bytes_used(struct midi_buffer *mb);
24
extern int line6_midibuf_bytes_free(struct midi_buffer *mb);
25
extern void line6_midibuf_destroy(struct midi_buffer *mb);
26
extern int line6_midibuf_ignore(struct midi_buffer *mb, int length);
27
extern int line6_midibuf_init(struct midi_buffer *mb, int size, int split);
28
extern int line6_midibuf_read(struct midi_buffer *mb, unsigned char *data,
29
int length, int read_type);
30
extern void line6_midibuf_reset(struct midi_buffer *mb);
31
extern int line6_midibuf_write(struct midi_buffer *mb, unsigned char *data,
32
int length);
33
34
#endif
35
36