summaryrefslogtreecommitdiffstats
path: root/OpenAL32
diff options
context:
space:
mode:
authorChris Robinson <[email protected]>2010-11-28 19:52:17 -0800
committerChris Robinson <[email protected]>2010-11-28 19:52:17 -0800
commitda4f5c6f96b04094bf37e5c7ac393a7bfbfbb681 (patch)
treef467c94351e81f7ede5f3ac4847a8cbbe117b516 /OpenAL32
parentf09ae196a83c8a64fdd29e60b30dc51a367cb1c9 (diff)
Uninline some functions
Also add -Winline to the compiler command line to watch for future inline problems
Diffstat (limited to 'OpenAL32')
-rw-r--r--OpenAL32/Include/alMain.h21
-rw-r--r--OpenAL32/Include/alu.h123
2 files changed, 4 insertions, 140 deletions
diff --git a/OpenAL32/Include/alMain.h b/OpenAL32/Include/alMain.h
index 41189010..1bfcc0f1 100644
--- a/OpenAL32/Include/alMain.h
+++ b/OpenAL32/Include/alMain.h
@@ -324,26 +324,7 @@ void InitUIntMap(UIntMap *map);
void ResetUIntMap(UIntMap *map);
ALenum InsertUIntMapEntry(UIntMap *map, ALuint key, ALvoid *value);
void RemoveUIntMapKey(UIntMap *map, ALuint key);
-
-static __inline ALvoid *LookupUIntMapKey(UIntMap *map, ALuint key)
-{
- if(map->size > 0)
- {
- ALsizei low = 0;
- ALsizei high = map->size - 1;
- while(low < high)
- {
- ALsizei mid = low + (high-low)/2;
- if(map->array[mid].key < key)
- low = mid + 1;
- else
- high = mid;
- }
- if(map->array[low].key == key)
- return map->array[low].value;
- }
- return NULL;
-}
+ALvoid *LookupUIntMapKey(UIntMap *map, ALuint key);
struct ALCdevice_struct
diff --git a/OpenAL32/Include/alu.h b/OpenAL32/Include/alu.h
index 698fccfd..d3d29994 100644
--- a/OpenAL32/Include/alu.h
+++ b/OpenAL32/Include/alu.h
@@ -95,131 +95,13 @@ typedef enum {
#endif
-/* NOTE: The AL_FORMAT_REAR* enums aren't handled here because they're
- * converted to AL_FORMAT_QUAD* when loaded */
-static __inline ALuint aluBytesFromFormat(ALenum format)
-{
- switch(format)
- {
- case AL_FORMAT_MONO8:
- case AL_FORMAT_STEREO8:
- case AL_FORMAT_QUAD8_LOKI:
- case AL_FORMAT_QUAD8:
- case AL_FORMAT_REAR8:
- case AL_FORMAT_51CHN8:
- case AL_FORMAT_61CHN8:
- case AL_FORMAT_71CHN8:
- return 1;
-
- case AL_FORMAT_MONO16:
- case AL_FORMAT_STEREO16:
- case AL_FORMAT_QUAD16_LOKI:
- case AL_FORMAT_QUAD16:
- case AL_FORMAT_REAR16:
- case AL_FORMAT_51CHN16:
- case AL_FORMAT_61CHN16:
- case AL_FORMAT_71CHN16:
- return 2;
-
- case AL_FORMAT_MONO_FLOAT32:
- case AL_FORMAT_STEREO_FLOAT32:
- case AL_FORMAT_QUAD32:
- case AL_FORMAT_REAR32:
- case AL_FORMAT_51CHN32:
- case AL_FORMAT_61CHN32:
- case AL_FORMAT_71CHN32:
- return 4;
-
- case AL_FORMAT_MONO_DOUBLE_EXT:
- case AL_FORMAT_STEREO_DOUBLE_EXT:
- return 8;
-
- case AL_FORMAT_MONO_MULAW:
- case AL_FORMAT_STEREO_MULAW:
- case AL_FORMAT_QUAD_MULAW:
- case AL_FORMAT_REAR_MULAW:
- case AL_FORMAT_51CHN_MULAW:
- case AL_FORMAT_61CHN_MULAW:
- case AL_FORMAT_71CHN_MULAW:
- return 1;
-
- default:
- return 0;
- }
-}
-static __inline ALuint aluChannelsFromFormat(ALenum format)
-{
- switch(format)
- {
- case AL_FORMAT_MONO8:
- case AL_FORMAT_MONO16:
- case AL_FORMAT_MONO_FLOAT32:
- case AL_FORMAT_MONO_DOUBLE_EXT:
- case AL_FORMAT_MONO_MULAW:
- return 1;
-
- case AL_FORMAT_STEREO8:
- case AL_FORMAT_STEREO16:
- case AL_FORMAT_STEREO_FLOAT32:
- case AL_FORMAT_STEREO_DOUBLE_EXT:
- case AL_FORMAT_STEREO_MULAW:
- return 2;
-
- case AL_FORMAT_QUAD8_LOKI:
- case AL_FORMAT_QUAD16_LOKI:
- case AL_FORMAT_QUAD8:
- case AL_FORMAT_QUAD16:
- case AL_FORMAT_QUAD32:
- case AL_FORMAT_QUAD_MULAW:
- return 4;
-
- case AL_FORMAT_REAR8:
- case AL_FORMAT_REAR16:
- case AL_FORMAT_REAR32:
- case AL_FORMAT_REAR_MULAW:
- return 2;
-
- case AL_FORMAT_51CHN8:
- case AL_FORMAT_51CHN16:
- case AL_FORMAT_51CHN32:
- case AL_FORMAT_51CHN_MULAW:
- return 6;
-
- case AL_FORMAT_61CHN8:
- case AL_FORMAT_61CHN16:
- case AL_FORMAT_61CHN32:
- case AL_FORMAT_61CHN_MULAW:
- return 7;
-
- case AL_FORMAT_71CHN8:
- case AL_FORMAT_71CHN16:
- case AL_FORMAT_71CHN32:
- case AL_FORMAT_71CHN_MULAW:
- return 8;
-
- default:
- return 0;
- }
-}
+ALuint aluBytesFromFormat(ALenum format);
+ALuint aluChannelsFromFormat(ALenum format);
static __inline ALuint aluFrameSizeFromFormat(ALenum format)
{
return aluBytesFromFormat(format) * aluChannelsFromFormat(format);
}
-static __inline ALint aluCart2LUTpos(ALfloat re, ALfloat im)
-{
- ALint pos = 0;
- ALfloat denom = aluFabs(re) + aluFabs(im);
- if(denom > 0.0f)
- pos = (ALint)(QUADRANT_NUM*aluFabs(im) / denom + 0.5);
-
- if(re < 0.0)
- pos = 2 * QUADRANT_NUM - pos;
- if(im < 0.0)
- pos = LUT_NUM - pos;
- return pos%LUT_NUM;
-}
-
static __inline ALdouble lerp(ALdouble val1, ALdouble val2, ALdouble mu)
{
val1 += (val2-val1) * mu;
@@ -239,6 +121,7 @@ static __inline ALdouble cubic(ALdouble val0, ALdouble val1, ALdouble val2, ALdo
struct ALsource;
ALvoid aluInitPanning(ALCdevice *Device);
+ALint aluCart2LUTpos(ALfloat re, ALfloat im);
ALvoid CalcSourceParams(struct ALsource *ALSource, const ALCcontext *ALContext);
ALvoid CalcNonAttnSourceParams(struct ALsource *ALSource, const ALCcontext *ALContext);