summaryrefslogtreecommitdiff
path: root/src/AL/alut.h
diff options
context:
space:
mode:
authorPaweł Redman <pawel.redman@gmail.com>2017-03-22 17:56:34 +0100
committerPaweł Redman <pawel.redman@gmail.com>2017-03-22 17:56:34 +0100
commit6a777afc079c2a8d3af3ecd2145fe8dd50567a39 (patch)
tree520f4489cebf8564ef6cb27064ceea45cbc005b3 /src/AL/alut.h
Funko sources as released by Rotacak.HEADmaster
Diffstat (limited to 'src/AL/alut.h')
-rw-r--r--src/AL/alut.h90
1 files changed, 90 insertions, 0 deletions
diff --git a/src/AL/alut.h b/src/AL/alut.h
new file mode 100644
index 0000000..e29ae58
--- /dev/null
+++ b/src/AL/alut.h
@@ -0,0 +1,90 @@
+#ifndef _ALUT_H_
+#define _ALUT_H_
+
+/* define platform type */
+#if !defined(MACINTOSH_AL) && !defined(LINUX_AL) && !defined(WINDOWS_AL)
+ #ifdef __APPLE__
+ #define MACINTOSH_AL
+ #else
+ #ifdef _WIN32
+ #define WINDOWS_AL
+ #else
+ #define LINUX_AL
+ #endif
+ #endif
+#endif
+
+#include "altypes.h"
+
+#ifdef _WIN32
+#define ALUTAPI
+#define ALUTAPIENTRY __cdecl
+#define AL_CALLBACK
+#else /* _WIN32 */
+
+#ifdef TARGET_OS_MAC
+#if TARGET_OS_MAC
+#pragma export on
+#endif /* TARGET_OS_MAC */
+#endif /* TARGET_OS_MAC */
+
+#ifndef ALUTAPI
+#define ALUTAPI
+#endif
+
+#ifndef ALUTAPIENTRY
+#define ALUTAPIENTRY
+#endif
+
+#ifndef AL_CALLBACK
+#define AL_CALLBACK
+#endif
+
+#endif /* _WIN32 */
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#ifndef ALUT_NO_PROTOTYPES
+
+ALUTAPI void ALUTAPIENTRY alutInit(int *argc, char *argv[]);
+ALUTAPI void ALUTAPIENTRY alutExit(ALvoid);
+
+#ifndef MACINTOSH_AL
+/* Windows and Linux versions have a loop parameter, Macintosh doesn't */
+ALUTAPI void ALUTAPIENTRY alutLoadWAVFile(ALbyte *file, ALenum *format, ALvoid **data, ALsizei *size, ALsizei *freq, ALboolean *loop);
+ALUTAPI void ALUTAPIENTRY alutLoadWAVMemory(ALbyte *memory, ALenum *format, ALvoid **data, ALsizei *size, ALsizei *freq, ALboolean *loop);
+#else
+ALUTAPI void ALUTAPIENTRY alutLoadWAVFile(ALbyte *file, ALenum *format, ALvoid **data, ALsizei *size, ALsizei *freq);
+ALUTAPI void ALUTAPIENTRY alutLoadWAVMemory(ALbyte *memory, ALenum *format, ALvoid **data, ALsizei *size, ALsizei *freq);
+#endif
+
+ALUTAPI void ALUTAPIENTRY alutUnloadWAV(ALenum format, ALvoid *data, ALsizei size, ALsizei freq);
+
+#else /* ALUT_NO_PROTOTYPES */
+
+ void (ALUTAPIENTRY *alutInit)( int *argc, char *argv[] );
+ void (ALUTAPIENTRY *alutExit)( ALvoid );
+#ifndef MACINTOSH_AL
+ void (ALUTAPIENTRY *alutLoadWAVFile)( ALbyte *file,ALenum *format,ALvoid **data,ALsizei *size,ALsizei *freq,ALboolean *loop );
+ void (ALUTAPIENTRY *alutLoadWAVMemory)( ALbyte *memory,ALenum *format,ALvoid **data,ALsizei *size,ALsizei *freq,ALboolean *loop );
+#else
+ void (ALUTAPIENTRY *alutLoadWAVFile( ALbyte *file,ALenum *format,ALvoid **data,ALsizei *size,ALsizei *freq );
+ void (ALUTAPIENTRY *alutLoadWAVMemory)( ALbyte *memory,ALenum *format,ALvoid **data,ALsizei *size,ALsizei *freq );
+#endif
+ void (ALUTAPIENTRY *alutUnloadWAV)( ALenum format,ALvoid *data,ALsizei size,ALsizei freq );
+
+#endif /* ALUT_NO_PROTOTYPES */
+
+#ifdef TARGET_OS_MAC
+#if TARGET_OS_MAC
+#pragma export off
+#endif /* TARGET_OS_MAC */
+#endif /* TARGET_OS_MAC */
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif