Free Electron
alut.h
1 #if !defined(AL_ALUT_H)
2 #define AL_ALUT_H
3 
4 #if defined(_MSC_VER)
5 // 20200520 jpweber need AL in path
6 //#include <alc.h>
7 //#include <al.h>
8 #include <AL/alc.h>
9 #include <AL/al.h>
10 #elif defined(__APPLE__)
11 #include <OpenAL/alc.h>
12 #include <OpenAL/al.h>
13 #else
14 #include <AL/al.h>
15 #include <AL/alc.h>
16 #endif
17 
18 #if defined(__cplusplus)
19 extern "C" {
20 #endif
21 
22 #if defined(_WIN32) && !defined(_XBOX)
23  #if defined (ALUT_BUILD_LIBRARY)
24  #define ALUT_API __declspec(dllexport)
25  #else
26  #define ALUT_API __declspec(dllimport)
27  #endif
28 #else
29  #if defined(ALUT_BUILD_LIBRARY) && defined(HAVE_GCC_VISIBILITY)
30  #define ALUT_API __attribute__((visibility("default")))
31  #else
32  #define ALUT_API extern
33  #endif
34 #endif
35 
36 #if defined(_WIN32)
37  #define ALUT_APIENTRY __cdecl
38 #else
39  #define ALUT_APIENTRY
40 #endif
41 
42 #if defined(__MWERKS_)
43  #pragma export on
44 #endif
45 
46 /* Flag deprecated functions if possible (VisualC++ .NET and GCC >= 3.1.1). */
47 #if defined(_MSC_VER) && _MSC_VER >= 1300 && !defined(MIDL_PASS)
48 #define ALUT_ATTRIBUTE_DEPRECATED __declspec(deprecated)
49 #elif defined(__GNUC__) && (__GNUC__ > 3 || (__GNUC__ == 3 && (__GNUC_MINOR__ > 1 || (__GNUC_MINOR__ == 1 && __GNUC_PATCHLEVEL__ >= 1))))
50 #define ALUT_ATTRIBUTE_DEPRECATED __attribute__((deprecated))
51 #else
52 #define ALUT_ATTRIBUTE_DEPRECATED
53 #endif
54 
55 #define ALUT_API_MAJOR_VERSION 1
56 #define ALUT_API_MINOR_VERSION 1
57 
58 #define ALUT_ERROR_NO_ERROR 0
59 #define ALUT_ERROR_OUT_OF_MEMORY 0x200
60 #define ALUT_ERROR_INVALID_ENUM 0x201
61 #define ALUT_ERROR_INVALID_VALUE 0x202
62 #define ALUT_ERROR_INVALID_OPERATION 0x203
63 #define ALUT_ERROR_NO_CURRENT_CONTEXT 0x204
64 #define ALUT_ERROR_AL_ERROR_ON_ENTRY 0x205
65 #define ALUT_ERROR_ALC_ERROR_ON_ENTRY 0x206
66 #define ALUT_ERROR_OPEN_DEVICE 0x207
67 #define ALUT_ERROR_CLOSE_DEVICE 0x208
68 #define ALUT_ERROR_CREATE_CONTEXT 0x209
69 #define ALUT_ERROR_MAKE_CONTEXT_CURRENT 0x20A
70 #define ALUT_ERROR_DESTROY_CONTEXT 0x20B
71 #define ALUT_ERROR_GEN_BUFFERS 0x20C
72 #define ALUT_ERROR_BUFFER_DATA 0x20D
73 #define ALUT_ERROR_IO_ERROR 0x20E
74 #define ALUT_ERROR_UNSUPPORTED_FILE_TYPE 0x20F
75 #define ALUT_ERROR_UNSUPPORTED_FILE_SUBTYPE 0x210
76 #define ALUT_ERROR_CORRUPT_OR_TRUNCATED_DATA 0x211
77 
78 #define ALUT_WAVEFORM_SINE 0x100
79 #define ALUT_WAVEFORM_SQUARE 0x101
80 #define ALUT_WAVEFORM_SAWTOOTH 0x102
81 #define ALUT_WAVEFORM_WHITENOISE 0x103
82 #define ALUT_WAVEFORM_IMPULSE 0x104
83 
84 #define ALUT_LOADER_BUFFER 0x300
85 #define ALUT_LOADER_MEMORY 0x301
86 
87 ALUT_API ALboolean ALUT_APIENTRY alutInit (int *argcp, char **argv);
88 ALUT_API ALboolean ALUT_APIENTRY alutInitWithoutContext (int *argcp, char **argv);
89 ALUT_API ALboolean ALUT_APIENTRY alutExit (void);
90 
91 ALUT_API ALenum ALUT_APIENTRY alutGetError (void);
92 ALUT_API const char *ALUT_APIENTRY alutGetErrorString (ALenum error);
93 
94 ALUT_API ALuint ALUT_APIENTRY alutCreateBufferFromFile (const char *fileName);
95 ALUT_API ALuint ALUT_APIENTRY alutCreateBufferFromFileImage (const ALvoid *data, ALsizei length);
96 ALUT_API ALuint ALUT_APIENTRY alutCreateBufferHelloWorld (void);
97 ALUT_API ALuint ALUT_APIENTRY alutCreateBufferWaveform (ALenum waveshape, ALfloat frequency, ALfloat phase, ALfloat duration);
98 
99 ALUT_API ALvoid *ALUT_APIENTRY alutLoadMemoryFromFile (const char *fileName, ALenum *format, ALsizei *size, ALfloat *frequency);
100 ALUT_API ALvoid *ALUT_APIENTRY alutLoadMemoryFromFileImage (const ALvoid *data, ALsizei length, ALenum *format, ALsizei *size, ALfloat *frequency);
101 ALUT_API ALvoid *ALUT_APIENTRY alutLoadMemoryHelloWorld (ALenum *format, ALsizei *size, ALfloat *frequency);
102 ALUT_API ALvoid *ALUT_APIENTRY alutLoadMemoryWaveform (ALenum waveshape, ALfloat frequency, ALfloat phase, ALfloat duration, ALenum *format, ALsizei *size, ALfloat *freq);
103 
104 ALUT_API const char *ALUT_APIENTRY alutGetMIMETypes (ALenum loader);
105 
106 ALUT_API ALint ALUT_APIENTRY alutGetMajorVersion (void);
107 ALUT_API ALint ALUT_APIENTRY alutGetMinorVersion (void);
108 
109 ALUT_API ALboolean ALUT_APIENTRY alutSleep (ALfloat duration);
110 
111 /* Nasty Compatibility stuff, WARNING: THESE FUNCTIONS ARE STRONGLY DEPRECATED */
112 #if defined(__APPLE__)
113 ALUT_API ALUT_ATTRIBUTE_DEPRECATED void ALUT_APIENTRY alutLoadWAVFile (ALbyte *fileName, ALenum *format, void **data, ALsizei *size, ALsizei *frequency);
114 ALUT_API ALUT_ATTRIBUTE_DEPRECATED void ALUT_APIENTRY alutLoadWAVMemory (ALbyte *buffer, ALenum *format, void **data, ALsizei *size, ALsizei *frequency);
115 #else
116 ALUT_API ALUT_ATTRIBUTE_DEPRECATED void ALUT_APIENTRY alutLoadWAVFile (ALbyte *fileName, ALenum *format, void **data, ALsizei *size, ALsizei *frequency, ALboolean *loop);
117 ALUT_API ALUT_ATTRIBUTE_DEPRECATED void ALUT_APIENTRY alutLoadWAVMemory (ALbyte *buffer, ALenum *format, void **data, ALsizei *size, ALsizei *frequency, ALboolean *loop);
118 #endif
119 ALUT_API ALUT_ATTRIBUTE_DEPRECATED void ALUT_APIENTRY alutUnloadWAV (ALenum format, ALvoid *data, ALsizei size, ALsizei frequency);
120 
121 #if defined(__MWERKS_)
122  #pragma export off
123 #endif
124 
125 #if defined(__cplusplus)
126 }
127 #endif
128 
129 #endif
U32 size(const DenseVector< T > &lhs)
Return number of elements.
Definition: DenseVector.h:587