ALSA project - the C library reference
Main Page
Related Pages
Modules
Data Structures
Files
Examples
File List
Globals
All
Data Structures
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Groups
Pages
include
rawmidi.h
Go to the documentation of this file.
1
11
/*
12
* This library is free software; you can redistribute it and/or modify
13
* it under the terms of the GNU Lesser General Public License as
14
* published by the Free Software Foundation; either version 2.1 of
15
* the License, or (at your option) any later version.
16
*
17
* This program is distributed in the hope that it will be useful,
18
* but WITHOUT ANY WARRANTY; without even the implied warranty of
19
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
20
* GNU Lesser General Public License for more details.
21
*
22
* You should have received a copy of the GNU Lesser General Public
23
* License along with this library; if not, write to the Free Software
24
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
25
*
26
*/
27
28
#ifndef __ALSA_RAWMIDI_H
29
#define __ALSA_RAWMIDI_H
30
31
#ifdef __cplusplus
32
extern
"C"
{
33
#endif
34
42
#define SND_RAWMIDI_DLSYM_VERSION _dlsym_rawmidi_001
43
45
typedef
struct
_snd_rawmidi_info
snd_rawmidi_info_t
;
47
typedef
struct
_snd_rawmidi_params
snd_rawmidi_params_t
;
49
typedef
struct
_snd_rawmidi_status
snd_rawmidi_status_t
;
50
52
typedef
enum
_snd_rawmidi_stream {
54
SND_RAWMIDI_STREAM_OUTPUT
= 0,
56
SND_RAWMIDI_STREAM_INPUT
,
57
SND_RAWMIDI_STREAM_LAST =
SND_RAWMIDI_STREAM_INPUT
58
}
snd_rawmidi_stream_t
;
59
61
#define SND_RAWMIDI_APPEND 0x0001
62
63
#define SND_RAWMIDI_NONBLOCK 0x0002
64
65
#define SND_RAWMIDI_SYNC 0x0004
66
68
typedef
struct
_snd_rawmidi
snd_rawmidi_t
;
69
71
typedef
enum
_snd_rawmidi_type {
73
SND_RAWMIDI_TYPE_HW
,
75
SND_RAWMIDI_TYPE_SHM
,
77
SND_RAWMIDI_TYPE_INET
,
79
SND_RAWMIDI_TYPE_VIRTUAL
80
}
snd_rawmidi_type_t
;
81
82
int
snd_rawmidi_open
(
snd_rawmidi_t
**in_rmidi,
snd_rawmidi_t
**out_rmidi,
83
const
char
*name,
int
mode);
84
int
snd_rawmidi_open_lconf
(
snd_rawmidi_t
**in_rmidi,
snd_rawmidi_t
**out_rmidi,
85
const
char
*name,
int
mode,
snd_config_t
*lconf);
86
int
snd_rawmidi_close
(
snd_rawmidi_t
*rmidi);
87
int
snd_rawmidi_poll_descriptors_count
(
snd_rawmidi_t
*rmidi);
88
int
snd_rawmidi_poll_descriptors
(
snd_rawmidi_t
*rmidi,
struct
pollfd *pfds,
unsigned
int
space);
89
int
snd_rawmidi_poll_descriptors_revents
(
snd_rawmidi_t
*rawmidi,
struct
pollfd *pfds,
unsigned
int
nfds,
unsigned
short
*revent);
90
int
snd_rawmidi_nonblock
(
snd_rawmidi_t
*rmidi,
int
nonblock);
91
size_t
snd_rawmidi_info_sizeof
(
void
);
96
#define snd_rawmidi_info_alloca(ptr) __snd_alloca(ptr, snd_rawmidi_info)
97
int
snd_rawmidi_info_malloc
(
snd_rawmidi_info_t
**
ptr
);
98
void
snd_rawmidi_info_free
(
snd_rawmidi_info_t
*obj);
99
void
snd_rawmidi_info_copy
(
snd_rawmidi_info_t
*dst,
const
snd_rawmidi_info_t
*src);
100
unsigned
int
snd_rawmidi_info_get_device
(
const
snd_rawmidi_info_t
*obj);
101
unsigned
int
snd_rawmidi_info_get_subdevice
(
const
snd_rawmidi_info_t
*obj);
102
snd_rawmidi_stream_t
snd_rawmidi_info_get_stream
(
const
snd_rawmidi_info_t
*obj);
103
int
snd_rawmidi_info_get_card
(
const
snd_rawmidi_info_t
*obj);
104
unsigned
int
snd_rawmidi_info_get_flags
(
const
snd_rawmidi_info_t
*obj);
105
const
char
*
snd_rawmidi_info_get_id
(
const
snd_rawmidi_info_t
*obj);
106
const
char
*
snd_rawmidi_info_get_name
(
const
snd_rawmidi_info_t
*obj);
107
const
char
*
snd_rawmidi_info_get_subdevice_name
(
const
snd_rawmidi_info_t
*obj);
108
unsigned
int
snd_rawmidi_info_get_subdevices_count
(
const
snd_rawmidi_info_t
*obj);
109
unsigned
int
snd_rawmidi_info_get_subdevices_avail
(
const
snd_rawmidi_info_t
*obj);
110
void
snd_rawmidi_info_set_device
(
snd_rawmidi_info_t
*obj,
unsigned
int
val);
111
void
snd_rawmidi_info_set_subdevice
(
snd_rawmidi_info_t
*obj,
unsigned
int
val);
112
void
snd_rawmidi_info_set_stream
(
snd_rawmidi_info_t
*obj,
snd_rawmidi_stream_t
val);
113
int
snd_rawmidi_info
(
snd_rawmidi_t
*rmidi,
snd_rawmidi_info_t
* info);
114
size_t
snd_rawmidi_params_sizeof
(
void
);
119
#define snd_rawmidi_params_alloca(ptr) __snd_alloca(ptr, snd_rawmidi_params)
120
int
snd_rawmidi_params_malloc
(
snd_rawmidi_params_t
**
ptr
);
121
void
snd_rawmidi_params_free
(
snd_rawmidi_params_t
*obj);
122
void
snd_rawmidi_params_copy
(
snd_rawmidi_params_t
*dst,
const
snd_rawmidi_params_t
*src);
123
int
snd_rawmidi_params_set_buffer_size
(
snd_rawmidi_t
*rmidi,
snd_rawmidi_params_t
*params,
size_t
val);
124
size_t
snd_rawmidi_params_get_buffer_size
(
const
snd_rawmidi_params_t
*params);
125
int
snd_rawmidi_params_set_avail_min
(
snd_rawmidi_t
*rmidi,
snd_rawmidi_params_t
*params,
size_t
val);
126
size_t
snd_rawmidi_params_get_avail_min
(
const
snd_rawmidi_params_t
*params);
127
int
snd_rawmidi_params_set_no_active_sensing
(
snd_rawmidi_t
*rmidi,
snd_rawmidi_params_t
*params,
int
val);
128
int
snd_rawmidi_params_get_no_active_sensing
(
const
snd_rawmidi_params_t
*params);
129
int
snd_rawmidi_params
(
snd_rawmidi_t
*rmidi,
snd_rawmidi_params_t
* params);
130
int
snd_rawmidi_params_current
(
snd_rawmidi_t
*rmidi,
snd_rawmidi_params_t
*params);
131
size_t
snd_rawmidi_status_sizeof
(
void
);
136
#define snd_rawmidi_status_alloca(ptr) __snd_alloca(ptr, snd_rawmidi_status)
137
int
snd_rawmidi_status_malloc
(
snd_rawmidi_status_t
**
ptr
);
138
void
snd_rawmidi_status_free
(
snd_rawmidi_status_t
*obj);
139
void
snd_rawmidi_status_copy
(
snd_rawmidi_status_t
*dst,
const
snd_rawmidi_status_t
*src);
140
void
snd_rawmidi_status_get_tstamp
(
const
snd_rawmidi_status_t
*obj,
snd_htimestamp_t
*
ptr
);
141
size_t
snd_rawmidi_status_get_avail
(
const
snd_rawmidi_status_t
*obj);
142
size_t
snd_rawmidi_status_get_xruns
(
const
snd_rawmidi_status_t
*obj);
143
int
snd_rawmidi_status
(
snd_rawmidi_t
*rmidi,
snd_rawmidi_status_t
* status);
144
int
snd_rawmidi_drain
(
snd_rawmidi_t
*rmidi);
145
int
snd_rawmidi_drop
(
snd_rawmidi_t
*rmidi);
146
ssize_t
snd_rawmidi_write
(
snd_rawmidi_t
*rmidi,
const
void
*buffer,
size_t
size);
147
ssize_t
snd_rawmidi_read
(
snd_rawmidi_t
*rmidi,
void
*buffer,
size_t
size);
148
const
char
*
snd_rawmidi_name
(
snd_rawmidi_t
*rmidi);
149
snd_rawmidi_type_t
snd_rawmidi_type
(
snd_rawmidi_t
*rmidi);
150
snd_rawmidi_stream_t
snd_rawmidi_stream
(
snd_rawmidi_t
*rawmidi);
151
154
#ifdef __cplusplus
155
}
156
#endif
157
158
#endif
/* __RAWMIDI_H */
159
Generated on Tue Apr 7 2015 16:21:42 for ALSA project - the C library reference by
1.8.3.1