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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 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
,
78
SND_HWDEP_IFACE_LAST
=
SND_HWDEP_IFACE_FW_OXFW
79
}
snd_hwdep_iface_t
;
80
82
#define SND_HWDEP_OPEN_READ (O_RDONLY)
83
84
#define SND_HWDEP_OPEN_WRITE (O_WRONLY)
85
86
#define SND_HWDEP_OPEN_DUPLEX (O_RDWR)
87
88
#define SND_HWDEP_OPEN_NONBLOCK (O_NONBLOCK)
89
91
typedef
enum
_snd_hwdep_type {
93
SND_HWDEP_TYPE_HW
,
95
SND_HWDEP_TYPE_SHM
,
97
SND_HWDEP_TYPE_INET
98
}
snd_hwdep_type_t
;
99
101
typedef
struct
_snd_hwdep
snd_hwdep_t
;
102
103
int
snd_hwdep_open
(
snd_hwdep_t
**hwdep,
const
char
*name,
int
mode);
104
int
snd_hwdep_close
(
snd_hwdep_t
*hwdep);
105
int
snd_hwdep_poll_descriptors
(
snd_hwdep_t
*hwdep,
struct
pollfd *pfds,
unsigned
int
space);
106
int
snd_hwdep_poll_descriptors_count
(
snd_hwdep_t
*hwdep);
107
int
snd_hwdep_poll_descriptors_revents
(
snd_hwdep_t
*hwdep,
struct
pollfd *pfds,
unsigned
int
nfds,
unsigned
short
*revents);
108
int
snd_hwdep_nonblock
(
snd_hwdep_t
*hwdep,
int
nonblock);
109
int
snd_hwdep_info
(
snd_hwdep_t
*hwdep,
snd_hwdep_info_t
* info);
110
int
snd_hwdep_dsp_status
(
snd_hwdep_t
*hwdep,
snd_hwdep_dsp_status_t
*status);
111
int
snd_hwdep_dsp_load
(
snd_hwdep_t
*hwdep,
snd_hwdep_dsp_image_t
*block);
112
int
snd_hwdep_ioctl
(
snd_hwdep_t
*hwdep,
unsigned
int
request,
void
* arg);
113
ssize_t
snd_hwdep_write
(
snd_hwdep_t
*hwdep,
const
void
*buffer,
size_t
size);
114
ssize_t
snd_hwdep_read
(
snd_hwdep_t
*hwdep,
void
*buffer,
size_t
size);
115
116
size_t
snd_hwdep_info_sizeof
(
void
);
118
#define snd_hwdep_info_alloca(ptr) __snd_alloca(ptr, snd_hwdep_info)
119
int
snd_hwdep_info_malloc
(
snd_hwdep_info_t
**
ptr
);
120
void
snd_hwdep_info_free
(
snd_hwdep_info_t
*obj);
121
void
snd_hwdep_info_copy
(
snd_hwdep_info_t
*dst,
const
snd_hwdep_info_t
*src);
122
123
unsigned
int
snd_hwdep_info_get_device
(
const
snd_hwdep_info_t
*obj);
124
int
snd_hwdep_info_get_card
(
const
snd_hwdep_info_t
*obj);
125
const
char
*
snd_hwdep_info_get_id
(
const
snd_hwdep_info_t
*obj);
126
const
char
*
snd_hwdep_info_get_name
(
const
snd_hwdep_info_t
*obj);
127
snd_hwdep_iface_t
snd_hwdep_info_get_iface
(
const
snd_hwdep_info_t
*obj);
128
void
snd_hwdep_info_set_device
(
snd_hwdep_info_t
*obj,
unsigned
int
val);
129
130
size_t
snd_hwdep_dsp_status_sizeof
(
void
);
132
#define snd_hwdep_dsp_status_alloca(ptr) __snd_alloca(ptr, snd_hwdep_dsp_status)
133
int
snd_hwdep_dsp_status_malloc
(
snd_hwdep_dsp_status_t
**
ptr
);
134
void
snd_hwdep_dsp_status_free
(
snd_hwdep_dsp_status_t
*obj);
135
void
snd_hwdep_dsp_status_copy
(
snd_hwdep_dsp_status_t
*dst,
const
snd_hwdep_dsp_status_t
*src);
136
137
unsigned
int
snd_hwdep_dsp_status_get_version
(
const
snd_hwdep_dsp_status_t
*obj);
138
const
char
*
snd_hwdep_dsp_status_get_id
(
const
snd_hwdep_dsp_status_t
*obj);
139
unsigned
int
snd_hwdep_dsp_status_get_num_dsps
(
const
snd_hwdep_dsp_status_t
*obj);
140
unsigned
int
snd_hwdep_dsp_status_get_dsp_loaded
(
const
snd_hwdep_dsp_status_t
*obj);
141
unsigned
int
snd_hwdep_dsp_status_get_chip_ready
(
const
snd_hwdep_dsp_status_t
*obj);
142
143
size_t
snd_hwdep_dsp_image_sizeof
(
void
);
145
#define snd_hwdep_dsp_image_alloca(ptr) __snd_alloca(ptr, snd_hwdep_dsp_image)
146
int
snd_hwdep_dsp_image_malloc
(
snd_hwdep_dsp_image_t
**
ptr
);
147
void
snd_hwdep_dsp_image_free
(
snd_hwdep_dsp_image_t
*obj);
148
void
snd_hwdep_dsp_image_copy
(
snd_hwdep_dsp_image_t
*dst,
const
snd_hwdep_dsp_image_t
*src);
149
150
unsigned
int
snd_hwdep_dsp_image_get_index
(
const
snd_hwdep_dsp_image_t
*obj);
151
const
char
*
snd_hwdep_dsp_image_get_name
(
const
snd_hwdep_dsp_image_t
*obj);
152
const
void
*
snd_hwdep_dsp_image_get_image
(
const
snd_hwdep_dsp_image_t
*obj);
153
size_t
snd_hwdep_dsp_image_get_length
(
const
snd_hwdep_dsp_image_t
*obj);
154
155
void
snd_hwdep_dsp_image_set_index
(
snd_hwdep_dsp_image_t
*obj,
unsigned
int
_index);
156
void
snd_hwdep_dsp_image_set_name
(
snd_hwdep_dsp_image_t
*obj,
const
char
*name);
157
void
snd_hwdep_dsp_image_set_image
(
snd_hwdep_dsp_image_t
*obj,
void
*buffer);
158
void
snd_hwdep_dsp_image_set_length
(
snd_hwdep_dsp_image_t
*obj,
size_t
length);
159
162
#ifdef __cplusplus
163
}
164
#endif
165
166
#endif
/* __ALSA_HWDEP_H */
167
Generated on Tue Apr 7 2015 16:21:42 for ALSA project - the C library reference by
1.8.3.1