diff options
author | Chris Robinson <[email protected]> | 2010-11-27 15:37:51 -0800 |
---|---|---|
committer | Chris Robinson <[email protected]> | 2010-11-27 15:37:51 -0800 |
commit | 8828f4d0e514bede771ed35b7fddbce9f1a2e750 (patch) | |
tree | 520def4db0414f21d739e7f5a1e6279f1f5fc567 /OpenAL32 | |
parent | 9495cf71fd909fbbe6381c4d7d15cf69de1fded4 (diff) |
Don't inline the decompose function
Diffstat (limited to 'OpenAL32')
-rw-r--r-- | OpenAL32/Include/alBuffer.h | 88 | ||||
-rw-r--r-- | OpenAL32/alBuffer.c | 94 |
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() * |