zenilib  0.5.3.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
alc.h
Go to the documentation of this file.
1 #ifndef AL_ALC_H
2 #define AL_ALC_H
3 
4 #if defined(__cplusplus)
5 extern "C" {
6 #endif
7 
8 #if defined(AL_LIBTYPE_STATIC)
9  #define ALC_API
10 #elif defined(_WIN32) && !defined(_XBOX)
11  #if defined(AL_BUILD_LIBRARY)
12  #define ALC_API __declspec(dllexport)
13  #else
14  #define ALC_API __declspec(dllimport)
15  #endif
16 #else
17  #if defined(AL_BUILD_LIBRARY) && defined(HAVE_GCC_VISIBILITY)
18  #define ALC_API __attribute__((visibility("protected")))
19  #else
20  #define ALC_API extern
21  #endif
22 #endif
23 
24 #if defined(_WIN32)
25  #define ALC_APIENTRY __cdecl
26 #else
27  #define ALC_APIENTRY
28 #endif
29 
30 #if defined(TARGET_OS_MAC) && TARGET_OS_MAC
31  #pragma export on
32 #endif
33 
34 /*
35  * The ALCAPI, ALCAPIENTRY, and ALC_INVALID macros are deprecated, but are
36  * included for applications porting code from AL 1.0
37  */
38 #define ALCAPI ALC_API
39 #define ALCAPIENTRY ALC_APIENTRY
40 #define ALC_INVALID 0
41 
42 
43 #define ALC_VERSION_0_1 1
44 
45 typedef struct ALCdevice_struct ALCdevice;
47 
48 
50 typedef char ALCboolean;
51 
53 typedef char ALCchar;
54 
56 typedef signed char ALCbyte;
57 
59 typedef unsigned char ALCubyte;
60 
62 typedef short ALCshort;
63 
65 typedef unsigned short ALCushort;
66 
68 typedef int ALCint;
69 
71 typedef unsigned int ALCuint;
72 
74 typedef int ALCsizei;
75 
77 typedef int ALCenum;
78 
80 typedef float ALCfloat;
81 
83 typedef double ALCdouble;
84 
86 typedef void ALCvoid;
87 
88 
89 /* Enumerant values begin at column 50. No tabs. */
90 
91 /* Boolean False. */
92 #define ALC_FALSE 0
93 
94 /* Boolean True. */
95 #define ALC_TRUE 1
96 
100 #define ALC_FREQUENCY 0x1007
101 
105 #define ALC_REFRESH 0x1008
106 
110 #define ALC_SYNC 0x1009
111 
115 #define ALC_MONO_SOURCES 0x1010
116 
120 #define ALC_STEREO_SOURCES 0x1011
121 
129 #define ALC_NO_ERROR ALC_FALSE
130 
134 #define ALC_INVALID_DEVICE 0xA001
135 
139 #define ALC_INVALID_CONTEXT 0xA002
140 
144 #define ALC_INVALID_ENUM 0xA003
145 
149 #define ALC_INVALID_VALUE 0xA004
150 
154 #define ALC_OUT_OF_MEMORY 0xA005
155 
156 
160 #define ALC_DEFAULT_DEVICE_SPECIFIER 0x1004
161 #define ALC_DEVICE_SPECIFIER 0x1005
162 #define ALC_EXTENSIONS 0x1006
163 
164 #define ALC_MAJOR_VERSION 0x1000
165 #define ALC_MINOR_VERSION 0x1001
166 
167 #define ALC_ATTRIBUTES_SIZE 0x1002
168 #define ALC_ALL_ATTRIBUTES 0x1003
169 
170 
174 #define ALC_CAPTURE_DEVICE_SPECIFIER 0x310
175 #define ALC_CAPTURE_DEFAULT_DEVICE_SPECIFIER 0x311
176 #define ALC_CAPTURE_SAMPLES 0x312
177 
178 
179 /*
180  * Context Management
181  */
182 ALC_API ALCcontext * ALC_APIENTRY alcCreateContext( ALCdevice *device, const ALCint* attrlist );
183 
185 
187 
189 
191 
193 
195 
196 
197 /*
198  * Device Management
199  */
200 ALC_API ALCdevice * ALC_APIENTRY alcOpenDevice( const ALCchar *devicename );
201 
202 ALC_API ALCboolean ALC_APIENTRY alcCloseDevice( ALCdevice *device );
203 
204 
205 /*
206  * Error support.
207  * Obtain the most recent Context error
208  */
209 ALC_API ALCenum ALC_APIENTRY alcGetError( ALCdevice *device );
210 
211 
212 /*
213  * Extension support.
214  * Query for the presence of an extension, and obtain any appropriate
215  * function pointers and enum values.
216  */
217 ALC_API ALCboolean ALC_APIENTRY alcIsExtensionPresent( ALCdevice *device, const ALCchar *extname );
218 
219 ALC_API void * ALC_APIENTRY alcGetProcAddress( ALCdevice *device, const ALCchar *funcname );
220 
221 ALC_API ALCenum ALC_APIENTRY alcGetEnumValue( ALCdevice *device, const ALCchar *enumname );
222 
223 
224 /*
225  * Query functions
226  */
227 ALC_API const ALCchar * ALC_APIENTRY alcGetString( ALCdevice *device, ALCenum param );
228 
229 ALC_API void ALC_APIENTRY alcGetIntegerv( ALCdevice *device, ALCenum param, ALCsizei size, ALCint *data );
230 
231 
232 /*
233  * Capture functions
234  */
235 ALC_API ALCdevice* ALC_APIENTRY alcCaptureOpenDevice( const ALCchar *devicename, ALCuint frequency, ALCenum format, ALCsizei buffersize );
236 
238 
240 
242 
243 ALC_API void ALC_APIENTRY alcCaptureSamples( ALCdevice *device, ALCvoid *buffer, ALCsizei samples );
244 
245 /*
246  * Pointer-to-function types, useful for dynamically getting ALC entry points.
247  */
248 typedef ALCcontext * (ALC_APIENTRY *LPALCCREATECONTEXT) (ALCdevice *device, const ALCint *attrlist);
255 typedef ALCdevice * (ALC_APIENTRY *LPALCOPENDEVICE)( const ALCchar *devicename );
258 typedef ALCboolean (ALC_APIENTRY *LPALCISEXTENSIONPRESENT)( ALCdevice *device, const ALCchar *extname );
259 typedef void * (ALC_APIENTRY *LPALCGETPROCADDRESS)(ALCdevice *device, const ALCchar *funcname );
260 typedef ALCenum (ALC_APIENTRY *LPALCGETENUMVALUE)(ALCdevice *device, const ALCchar *enumname );
261 typedef const ALCchar* (ALC_APIENTRY *LPALCGETSTRING)( ALCdevice *device, ALCenum param );
262 typedef void (ALC_APIENTRY *LPALCGETINTEGERV)( ALCdevice *device, ALCenum param, ALCsizei size, ALCint *dest );
263 typedef ALCdevice * (ALC_APIENTRY *LPALCCAPTUREOPENDEVICE)( const ALCchar *devicename, ALCuint frequency, ALCenum format, ALCsizei buffersize );
267 typedef void (ALC_APIENTRY *LPALCCAPTURESAMPLES)( ALCdevice *device, ALCvoid *buffer, ALCsizei samples );
268 
269 #if defined(TARGET_OS_MAC) && TARGET_OS_MAC
270  #pragma export off
271 #endif
272 
273 #if defined(__cplusplus)
274 }
275 #endif
276 
277 #endif /* AL_ALC_H */
unsigned short ALCushort
Definition: alc.h:54
void(ALC_APIENTRY * LPALCCAPTURESAMPLES)(ALCdevice *device, ALCvoid *buffer, ALCsizei samples)
Definition: alc.h:231
ALCboolean(ALC_APIENTRY * LPALCMAKECONTEXTCURRENT)(ALCcontext *context)
Definition: alc.h:213
void *(ALC_APIENTRY * LPALCGETPROCADDRESS)(ALCdevice *device, const ALCchar *funcname)
Definition: alc.h:223
#define ALC_API
Definition: alc.h:20
GLenum GLint param
Definition: gl2ext.h:1491
ALCcontext *(ALC_APIENTRY * LPALCGETCURRENTCONTEXT)(void)
Definition: alc.h:217
ALC_API ALCvoid ALC_APIENTRY alcGetIntegerv(ALCdevice *device, ALCenum param, ALsizei size, ALCint *data)
Definition: ALc.c:2188
GLvoid **typedef void(GLAPIENTRY *PFNGLGETVERTEXATTRIBDVPROC)(GLuint
Definition: glew.h:1824
ALC_API ALCboolean ALC_APIENTRY alcCaptureCloseDevice(ALCdevice *Device)
Definition: ALc.c:2995
ALCboolean(ALC_APIENTRY * LPALCCAPTURECLOSEDEVICE)(ALCdevice *device)
Definition: alc.h:228
ALC_API ALCvoid ALC_APIENTRY alcSuspendContext(ALCcontext *Context)
Definition: ALc.c:2047
unsigned char ALCubyte
Definition: alc.h:48
ALCenum(ALC_APIENTRY * LPALCGETENUMVALUE)(ALCdevice *device, const ALCchar *enumname)
Definition: alc.h:224
ALC_API ALCboolean ALC_APIENTRY alcMakeContextCurrent(ALCcontext *context)
Definition: ALc.c:2590
signed char ALCbyte
Definition: alc.h:45
int ALCsizei
Definition: alc.h:63
ALC_API ALCboolean ALC_APIENTRY alcCloseDevice(ALCdevice *Device)
Definition: ALc.c:2884
ALC_API const ALCchar *ALC_APIENTRY alcGetString(ALCdevice *Device, ALCenum param)
Definition: ALc.c:2066
ALCboolean(ALC_APIENTRY * LPALCCLOSEDEVICE)(ALCdevice *device)
Definition: alc.h:220
ALC_API ALCvoid ALC_APIENTRY alcDestroyContext(ALCcontext *context)
Definition: ALc.c:2539
ALC_API ALCvoid *ALC_APIENTRY alcGetProcAddress(ALCdevice *device, const ALCchar *funcName)
Definition: ALc.c:2411
short ALCshort
Definition: alc.h:51
ALC_API ALCenum ALC_APIENTRY alcGetEnumValue(ALCdevice *device, const ALCchar *enumName)
Definition: ALc.c:2437
ALCdevice *(ALC_APIENTRY * LPALCCAPTUREOPENDEVICE)(const ALCchar *devicename, ALCuint frequency, ALCenum format, ALCsizei buffersize)
Definition: alc.h:227
const ALCchar *(ALC_APIENTRY * LPALCGETSTRING)(ALCdevice *device, ALCenum param)
Definition: alc.h:225
ALCcontext *(ALC_APIENTRY * LPALCCREATECONTEXT)(ALCdevice *device, const ALCint *attrlist)
Definition: alc.h:212
ALC_API void ALC_APIENTRY alcCaptureSamples(ALCdevice *device, ALCvoid *buffer, ALCsizei samples)
Definition: ALc.c:3054
unsigned int ALCuint
Definition: alc.h:60
char ALCchar
Definition: alc.h:42
ALC_API ALCcontext *ALC_APIENTRY alcGetCurrentContext(void)
Definition: ALc.c:2563
EGLContext EGLenum EGLClientBuffer buffer
Definition: eglext.h:87
ALC_API ALCdevice *ALC_APIENTRY alcCaptureOpenDevice(const ALCchar *deviceName, ALCuint frequency, ALCenum format, ALCsizei samples)
Definition: ALc.c:2922
ALC_API ALCvoid ALC_APIENTRY alcProcessContext(ALCcontext *Context)
Definition: ALc.c:2056
GLint GLenum GLsizei GLsizei GLsizei GLint GLsizei const GLvoid * data
Definition: gl2ext.h:848
void(ALC_APIENTRY * LPALCSUSPENDCONTEXT)(ALCcontext *context)
Definition: alc.h:215
GLsizei samples
Definition: gl2ext.h:970
ALC_API ALCenum ALC_APIENTRY alcGetError(ALCdevice *device)
Definition: ALc.c:2027
double ALCdouble
Definition: alc.h:72
GLint GLenum GLsizei GLsizei GLsizei GLint GLenum format
Definition: gl2ext.h:845
ALC_API ALCcontext *ALC_APIENTRY alcCreateContext(ALCdevice *device, const ALCint *attrList)
Definition: ALc.c:2463
#define ALC_APIENTRY
Definition: alc.h:27
ALCdevice *(ALC_APIENTRY * LPALCOPENDEVICE)(const ALCchar *devicename)
Definition: alc.h:219
ALCboolean(ALC_APIENTRY * LPALCISEXTENSIONPRESENT)(ALCdevice *device, const ALCchar *extname)
Definition: alc.h:222
ALC_API void ALC_APIENTRY alcCaptureStart(ALCdevice *device)
Definition: ALc.c:3019
float ALCfloat
Definition: alc.h:69
ALC_API ALCdevice *ALC_APIENTRY alcGetContextsDevice(ALCcontext *Context)
Definition: ALc.c:2638
char ALCboolean
Definition: alc.h:39
void ALCvoid
Definition: alc.h:75
ALC_API void ALC_APIENTRY alcCaptureStop(ALCdevice *device)
Definition: ALc.c:3038
int ALCint
Definition: alc.h:57
ALCdevice *(ALC_APIENTRY * LPALCGETCONTEXTSDEVICE)(ALCcontext *context)
Definition: alc.h:218
ALCenum(ALC_APIENTRY * LPALCGETERROR)(ALCdevice *device)
Definition: alc.h:221
TParseContext * context
void(ALC_APIENTRY * LPALCCAPTURESTART)(ALCdevice *device)
Definition: alc.h:229
int ALCenum
Definition: alc.h:66
void(ALC_APIENTRY * LPALCDESTROYCONTEXT)(ALCcontext *context)
Definition: alc.h:216
ALC_API ALCdevice *ALC_APIENTRY alcOpenDevice(const ALCchar *deviceName)
Definition: ALc.c:2658
void(ALC_APIENTRY * LPALCCAPTURESTOP)(ALCdevice *device)
Definition: alc.h:230
ALC_API ALCboolean ALC_APIENTRY alcIsExtensionPresent(ALCdevice *device, const ALCchar *extName)
Definition: ALc.c:2373
void(ALC_APIENTRY * LPALCPROCESSCONTEXT)(ALCcontext *context)
Definition: alc.h:214
void(ALC_APIENTRY * LPALCGETINTEGERV)(ALCdevice *device, ALCenum param, ALCsizei size, ALCint *values)
Definition: alc.h:226
GLsizei size
Definition: gl2ext.h:1467