aboutsummaryrefslogtreecommitdiffstats
path: root/OpenAL32
diff options
context:
space:
mode:
authorChris Robinson <[email protected]>2010-11-27 15:37:51 -0800
committerChris Robinson <[email protected]>2010-11-27 15:37:51 -0800
commit8828f4d0e514bede771ed35b7fddbce9f1a2e750 (patch)
tree520def4db0414f21d739e7f5a1e6279f1f5fc567 /OpenAL32
parent9495cf71fd909fbbe6381c4d7d15cf69de1fded4 (diff)
Don't inline the decompose function
Diffstat (limited to 'OpenAL32')
-rw-r--r--OpenAL32/Include/alBuffer.h88
-rw-r--r--OpenAL32/alBuffer.c94
2 files changed, 95 insertions, 87 deletions
diff --git a/OpenAL32/Include/alBuffer.h b/OpenAL32/Include/alBuffer.h
index ff247b4f..2c67eb17 100644
--- a/OpenAL32/Include/alBuffer.h
+++ b/OpenAL32/Include/alBuffer.h
@@ -36,7 +36,6 @@ enum FmtType {
FmtFloat,
FmtDouble,
};
-
enum FmtChannels {
FmtMono,
FmtStereo,
@@ -46,92 +45,7 @@ enum FmtChannels {
Fmt71ChanWFX,
};
-
-static __inline void DecomposeFormat(ALenum format, enum FmtType *type,
- enum FmtChannels *order)
-{
- switch(format)
- {
- case AL_FORMAT_MONO8:
- *type = FmtUByte;
- *order = FmtMono;
- break;
- case AL_FORMAT_MONO16:
- *type = FmtShort;
- *order = FmtMono;
- break;
- case AL_FORMAT_MONO_FLOAT32:
- *type = FmtFloat;
- *order = FmtMono;
- break;
- case AL_FORMAT_STEREO8:
- *type = FmtUByte;
- *order = FmtStereo;
- break;
- case AL_FORMAT_STEREO16:
- *type = FmtShort;
- *order = FmtStereo;
- break;
- case AL_FORMAT_STEREO_FLOAT32:
- *type = FmtFloat;
- *order = FmtStereo;
- break;
- case AL_FORMAT_QUAD8_LOKI:
- case AL_FORMAT_QUAD8:
- *type = FmtUByte;
- *order = FmtQuad;
- break;
- case AL_FORMAT_QUAD16_LOKI:
- case AL_FORMAT_QUAD16:
- *type = FmtShort;
- *order = FmtQuad;
- break;
- case AL_FORMAT_QUAD32:
- *type = FmtFloat;
- *order = FmtQuad;
- break;
- case AL_FORMAT_51CHN8:
- *type = FmtUByte;
- *order = Fmt51ChanWFX;
- break;
- case AL_FORMAT_51CHN16:
- *type = FmtShort;
- *order = Fmt51ChanWFX;
- break;
- case AL_FORMAT_51CHN32:
- *type = FmtFloat;
- *order = Fmt51ChanWFX;
- break;
- case AL_FORMAT_61CHN8:
- *type = FmtUByte;
- *order = Fmt61ChanWFX;
- break;
- case AL_FORMAT_61CHN16:
- *type = FmtShort;
- *order = Fmt61ChanWFX;
- break;
- case AL_FORMAT_61CHN32:
- *type = FmtFloat;
- *order = Fmt61ChanWFX;
- break;
- case AL_FORMAT_71CHN8:
- *type = FmtUByte;
- *order = Fmt71ChanWFX;
- break;
- case AL_FORMAT_71CHN16:
- *type = FmtShort;
- *order = Fmt71ChanWFX;
- break;
- case AL_FORMAT_71CHN32:
- *type = FmtFloat;
- *order = Fmt71ChanWFX;
- break;
-
- default:
- AL_PRINT("Unhandled format specified: 0x%X\n", format);
- abort();
- }
-}
+void DecomposeFormat(ALenum format, enum FmtType *type, enum FmtChannels *order);
typedef struct ALbuffer
diff --git a/OpenAL32/alBuffer.c b/OpenAL32/alBuffer.c
index bbab73d2..4f102439 100644
--- a/OpenAL32/alBuffer.c
+++ b/OpenAL32/alBuffer.c
@@ -1358,6 +1358,100 @@ void DecomposeInputFormat(ALenum format, enum SrcFmtType *type,
}
}
+void DecomposeFormat(ALenum format, enum FmtType *type, enum FmtChannels *order)
+{
+ switch(format)
+ {
+ case AL_FORMAT_MONO8:
+ *type = FmtUByte;
+ *order = FmtMono;
+ break;
+ case AL_FORMAT_MONO16:
+ *type = FmtShort;
+ *order = FmtMono;
+ break;
+ case AL_FORMAT_MONO_FLOAT32:
+ *type = FmtFloat;
+ *order = FmtMono;
+ break;
+ case AL_FORMAT_MONO_DOUBLE_EXT:
+ *type = FmtDouble;
+ *order = FmtMono;
+ break;
+ case AL_FORMAT_STEREO8:
+ *type = FmtUByte;
+ *order = FmtStereo;
+ break;
+ case AL_FORMAT_STEREO16:
+ *type = FmtShort;
+ *order = FmtStereo;
+ break;
+ case AL_FORMAT_STEREO_FLOAT32:
+ *type = FmtFloat;
+ *order = FmtStereo;
+ break;
+ case AL_FORMAT_STEREO_DOUBLE_EXT:
+ *type = FmtDouble;
+ *order = FmtStereo;
+ break;
+ case AL_FORMAT_QUAD8_LOKI:
+ case AL_FORMAT_QUAD8:
+ *type = FmtUByte;
+ *order = FmtQuad;
+ break;
+ case AL_FORMAT_QUAD16_LOKI:
+ case AL_FORMAT_QUAD16:
+ *type = FmtShort;
+ *order = FmtQuad;
+ break;
+ case AL_FORMAT_QUAD32:
+ *type = FmtFloat;
+ *order = FmtQuad;
+ break;
+ case AL_FORMAT_51CHN8:
+ *type = FmtUByte;
+ *order = Fmt51ChanWFX;
+ break;
+ case AL_FORMAT_51CHN16:
+ *type = FmtShort;
+ *order = Fmt51ChanWFX;
+ break;
+ case AL_FORMAT_51CHN32:
+ *type = FmtFloat;
+ *order = Fmt51ChanWFX;
+ break;
+ case AL_FORMAT_61CHN8:
+ *type = FmtUByte;
+ *order = Fmt61ChanWFX;
+ break;
+ case AL_FORMAT_61CHN16:
+ *type = FmtShort;
+ *order = Fmt61ChanWFX;
+ break;
+ case AL_FORMAT_61CHN32:
+ *type = FmtFloat;
+ *order = Fmt61ChanWFX;
+ break;
+ case AL_FORMAT_71CHN8:
+ *type = FmtUByte;
+ *order = Fmt71ChanWFX;
+ break;
+ case AL_FORMAT_71CHN16:
+ *type = FmtShort;
+ *order = Fmt71ChanWFX;
+ break;
+ case AL_FORMAT_71CHN32:
+ *type = FmtFloat;
+ *order = Fmt71ChanWFX;
+ break;
+
+ default:
+ AL_PRINT("Unhandled format specified: 0x%X\n", format);
+ abort();
+ }
+}
+
+
/*
* ReleaseALBuffers()
*