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
hwdep.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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
25
*
26
*/
27
28
#ifndef __ALSA_HWDEP_H
29
#define __ALSA_HWDEP_H
30
31
#ifdef __cplusplus
32
extern
"C"
{
33
#endif
34
42
#define SND_HWDEP_DLSYM_VERSION _dlsym_hwdep_001
43
45
typedef
struct
_snd_hwdep_info
snd_hwdep_info_t
;
46
48
typedef
struct
_snd_hwdep_dsp_status
snd_hwdep_dsp_status_t
;
49
51
typedef
struct
_snd_hwdep_dsp_image
snd_hwdep_dsp_image_t
;
52
54
typedef
enum
_snd_hwdep_iface {
55
SND_HWDEP_IFACE_OPL2
= 0,
56
SND_HWDEP_IFACE_OPL3
,
57
SND_HWDEP_IFACE_OPL4
,
58
SND_HWDEP_IFACE_SB16CSP
,
59
SND_HWDEP_IFACE_EMU10K1
,
60
SND_HWDEP_IFACE_YSS225
,
61
SND_HWDEP_IFACE_ICS2115
,
62
SND_HWDEP_IFACE_SSCAPE
,
63
SND_HWDEP_IFACE_VX
,
64
SND_HWDEP_IFACE_MIXART
,
65
SND_HWDEP_IFACE_USX2Y
,
66
SND_HWDEP_IFACE_EMUX_WAVETABLE
,
67
SND_HWDEP_IFACE_BLUETOOTH
,
68
SND_HWDEP_IFACE_USX2Y_PCM
,
69
SND_HWDEP_IFACE_PCXHR
,
70
SND_HWDEP_IFACE_SB_RC
,
71
SND_HWDEP_IFACE_HDA
,
72
SND_HWDEP_IFACE_USB_STREAM
,
73
SND_HWDEP_IFACE_FW_DICE
,
74
SND_HWDEP_IFACE_FW_FIREWORKS
,
75
SND_HWDEP_IFACE_FW_BEBOB
,
76
SND_HWDEP_IFACE_FW_OXFW
,
77
SND_HWDEP_IFACE_FW_DIGI00X,
/* Digidesign Digi 002/003 family */
78
SND_HWDEP_IFACE_FW_TASCAM,
/* TASCAM FireWire series */
79
SND_HWDEP_IFACE_LINE6,
/* Line6 USB processors */
80
SND_HWDEP_IFACE_FW_MOTU,
/* MOTU FireWire series */
81
SND_HWDEP_IFACE_FW_FIREFACE,
/* RME Fireface series */
82
83
SND_HWDEP_IFACE_LAST
= SND_HWDEP_IFACE_FW_FIREFACE,
84
}
snd_hwdep_iface_t
;
85
87
#define SND_HWDEP_OPEN_READ (O_RDONLY)
88
89
#define SND_HWDEP_OPEN_WRITE (O_WRONLY)
90
91
#define SND_HWDEP_OPEN_DUPLEX (O_RDWR)
92
93
#define SND_HWDEP_OPEN_NONBLOCK (O_NONBLOCK)
94
96
typedef
enum
_snd_hwdep_type {
98
SND_HWDEP_TYPE_HW
,
100
SND_HWDEP_TYPE_SHM
,
102
SND_HWDEP_TYPE_INET
103
}
snd_hwdep_type_t
;
104
106
typedef
struct
_snd_hwdep
snd_hwdep_t
;
107
108
int
snd_hwdep_open
(
snd_hwdep_t
**hwdep,
const
char
*name,
int
mode);
109
int
snd_hwdep_close
(
snd_hwdep_t
*hwdep);
110
int
snd_hwdep_poll_descriptors
(
snd_hwdep_t
*hwdep,
struct
pollfd *pfds,
unsigned
int
space);
111
int
snd_hwdep_poll_descriptors_count
(
snd_hwdep_t
*hwdep);
112
int
snd_hwdep_poll_descriptors_revents
(
snd_hwdep_t
*hwdep,
struct
pollfd *pfds,
unsigned
int
nfds,
unsigned
short
*revents);
113
int
snd_hwdep_nonblock
(
snd_hwdep_t
*hwdep,
int
nonblock);
114
int
snd_hwdep_info
(
snd_hwdep_t
*hwdep,
snd_hwdep_info_t
* info);
115
int
snd_hwdep_dsp_status
(
snd_hwdep_t
*hwdep,
snd_hwdep_dsp_status_t
*status);
116
int
snd_hwdep_dsp_load
(
snd_hwdep_t
*hwdep,
snd_hwdep_dsp_image_t
*block);
117
int
snd_hwdep_ioctl
(
snd_hwdep_t
*hwdep,
unsigned
int
request,
void
* arg);
118
ssize_t
snd_hwdep_write
(
snd_hwdep_t
*hwdep,
const
void
*buffer,
size_t
size);
119
ssize_t
snd_hwdep_read
(
snd_hwdep_t
*hwdep,
void
*buffer,
size_t
size);
120
121
size_t
snd_hwdep_info_sizeof
(
void
);
123
#define snd_hwdep_info_alloca(ptr) __snd_alloca(ptr, snd_hwdep_info)
124
int
snd_hwdep_info_malloc
(
snd_hwdep_info_t
**
ptr
);
125
void
snd_hwdep_info_free
(
snd_hwdep_info_t
*obj);
126
void
snd_hwdep_info_copy
(
snd_hwdep_info_t
*dst,
const
snd_hwdep_info_t
*src);
127
128
unsigned
int
snd_hwdep_info_get_device
(
const
snd_hwdep_info_t
*obj);
129
int
snd_hwdep_info_get_card
(
const
snd_hwdep_info_t
*obj);
130
const
char
*
snd_hwdep_info_get_id
(
const
snd_hwdep_info_t
*obj);
131
const
char
*
snd_hwdep_info_get_name
(
const
snd_hwdep_info_t
*obj);
132
snd_hwdep_iface_t
snd_hwdep_info_get_iface
(
const
snd_hwdep_info_t
*obj);
133
void
snd_hwdep_info_set_device
(
snd_hwdep_info_t
*obj,
unsigned
int
val);
134
135
size_t
snd_hwdep_dsp_status_sizeof
(
void
);
137
#define snd_hwdep_dsp_status_alloca(ptr) __snd_alloca(ptr, snd_hwdep_dsp_status)
138
int
snd_hwdep_dsp_status_malloc
(
snd_hwdep_dsp_status_t
**
ptr
);
139
void
snd_hwdep_dsp_status_free
(
snd_hwdep_dsp_status_t
*obj);
140
void
snd_hwdep_dsp_status_copy
(
snd_hwdep_dsp_status_t
*dst,
const
snd_hwdep_dsp_status_t
*src);
141
142
unsigned
int
snd_hwdep_dsp_status_get_version
(
const
snd_hwdep_dsp_status_t
*obj);
143
const
char
*
snd_hwdep_dsp_status_get_id
(
const
snd_hwdep_dsp_status_t
*obj);
144
unsigned
int
snd_hwdep_dsp_status_get_num_dsps
(
const
snd_hwdep_dsp_status_t
*obj);
145
unsigned
int
snd_hwdep_dsp_status_get_dsp_loaded
(
const
snd_hwdep_dsp_status_t
*obj);
146
unsigned
int
snd_hwdep_dsp_status_get_chip_ready
(
const
snd_hwdep_dsp_status_t
*obj);
147
148
size_t
snd_hwdep_dsp_image_sizeof
(
void
);
150
#define snd_hwdep_dsp_image_alloca(ptr) __snd_alloca(ptr, snd_hwdep_dsp_image)
151
int
snd_hwdep_dsp_image_malloc
(
snd_hwdep_dsp_image_t
**
ptr
);
152
void
snd_hwdep_dsp_image_free
(
snd_hwdep_dsp_image_t
*obj);
153
void
snd_hwdep_dsp_image_copy
(
snd_hwdep_dsp_image_t
*dst,
const
snd_hwdep_dsp_image_t
*src);
154
155
unsigned
int
snd_hwdep_dsp_image_get_index
(
const
snd_hwdep_dsp_image_t
*obj);
156
const
char
*
snd_hwdep_dsp_image_get_name
(
const
snd_hwdep_dsp_image_t
*obj);
157
const
void
*
snd_hwdep_dsp_image_get_image
(
const
snd_hwdep_dsp_image_t
*obj);
158
size_t
snd_hwdep_dsp_image_get_length
(
const
snd_hwdep_dsp_image_t
*obj);
159
160
void
snd_hwdep_dsp_image_set_index
(
snd_hwdep_dsp_image_t
*obj,
unsigned
int
_index);
161
void
snd_hwdep_dsp_image_set_name
(
snd_hwdep_dsp_image_t
*obj,
const
char
*name);
162
void
snd_hwdep_dsp_image_set_image
(
snd_hwdep_dsp_image_t
*obj,
void
*buffer);
163
void
snd_hwdep_dsp_image_set_length
(
snd_hwdep_dsp_image_t
*obj,
size_t
length);
164
167
#ifdef __cplusplus
168
}
169
#endif
170
171
#endif
/* __ALSA_HWDEP_H */
172
Generated by
1.8.3.1