Mercurial > almixer_isolated
diff Isolated/SoundDecoder.h @ 56:208a9ed20087
Added explicit symbol visibility markers to audio support files in ALmixer for public headers so they can be built as a dynamic library if needed.
author | Eric Wing <ewing@anscamobile.com> |
---|---|
date | Tue, 29 May 2012 19:43:23 -0700 |
parents | 71b465ff0622 |
children | be97ae4f30c0 |
line wrap: on
line diff
--- a/Isolated/SoundDecoder.h Tue May 29 19:41:59 2012 -0700 +++ b/Isolated/SoundDecoder.h Tue May 29 19:43:23 2012 -0700 @@ -11,7 +11,30 @@ extern "C" { #endif + #if defined(_WIN32) + #if defined(SOUND_DECODER_BUILD_LIBRARY) + #define SOUND_DECODER_DECLSPEC __declspec(dllexport) + #else + #define SOUND_DECODER_DECLSPEC __declspec(dllimport) + #endif + #else + #if defined(SOUND_DECODER_BUILD_LIBRARY) + #if defined (__GNUC__) && __GNUC__ >= 4 + #define SOUND_DECODER_DECLSPEC __attribute__((visibility("default"))) + #else + #define SOUND_DECODER_DECLSPEC + #endif + #else + #define SOUND_DECODER_DECLSPEC + #endif + #endif + #if defined(_WIN32) + #define SOUND_DECODER_CALL __cdecl + #else + #define SOUND_DECODER_CALL + #endif + #include <stdint.h> #include <stddef.h> @@ -132,62 +155,62 @@ #define SOUND_VERSION SOUNDDECODER_VERSION -void SoundDecoder_GetLinkedVersion(SoundDecoder_Version *ver); +extern SOUND_DECODER_DECLSPEC void SOUND_DECODER_CALL SoundDecoder_GetLinkedVersion(SoundDecoder_Version *ver); #define Sound_GetLinkedVersion SoundDecoder_GetLinkedVersion -int SoundDecoder_Init(void); +extern SOUND_DECODER_DECLSPEC int SOUND_DECODER_CALL SoundDecoder_Init(void); #define Sound_Init SoundDecoder_Init -void SoundDecoder_Quit(void); +extern SOUND_DECODER_DECLSPEC void SOUND_DECODER_CALL SoundDecoder_Quit(void); #define Sound_Quit SoundDecoder_Quit -const SoundDecoder_DecoderInfo** SoundDecoder_AvailableDecoders(void); +extern SOUND_DECODER_DECLSPEC const SOUND_DECODER_CALL SoundDecoder_DecoderInfo** SoundDecoder_AvailableDecoders(void); #define Sound_AvailableDecoders SoundDecoder_AvailableDecoders -const char* SoundDecoder_GetError(void); +extern SOUND_DECODER_DECLSPEC const char* SOUND_DECODER_CALL SoundDecoder_GetError(void); #define Sound_GetError SoundDecoder_GetError -void SoundDecoder_ClearError(void); +extern SOUND_DECODER_DECLSPEC void SOUND_DECODER_CALL SoundDecoder_ClearError(void); #define Sound_ClearError SoundDecoder_ClearError -SoundDecoder_Sample* SoundDecoder_NewSample( +extern SOUND_DECODER_DECLSPEC SoundDecoder_Sample* SOUND_DECODER_CALL SoundDecoder_NewSample( struct ALmixer_RWops* rw_ops, const char* ext, SoundDecoder_AudioInfo* desired, size_t buffer_size); #define Sound_NewSample SoundDecoder_NewSample -SoundDecoder_Sample* SoundDecoder_NewSampleFromFile(const char* file_name, +extern SOUND_DECODER_DECLSPEC SoundDecoder_Sample* SOUND_DECODER_CALL SoundDecoder_NewSampleFromFile(const char* file_name, SoundDecoder_AudioInfo* desired, size_t bufferSize); #define Sound_NewSampleFromFile SoundDecoder_NewSampleFromFile -void SoundDecoder_FreeSample(SoundDecoder_Sample* sound_sample); +extern SOUND_DECODER_DECLSPEC void SOUND_DECODER_CALL SoundDecoder_FreeSample(SoundDecoder_Sample* sound_sample); #define Sound_FreeSample SoundDecoder_FreeSample -ptrdiff_t SoundDecoder_GetDuration(SoundDecoder_Sample* sound_sample); +extern SOUND_DECODER_DECLSPEC ptrdiff_t SOUND_DECODER_CALL SoundDecoder_GetDuration(SoundDecoder_Sample* sound_sample); #define Sound_GetDuration SoundDecoder_GetDuration -int SoundDecoder_SetBufferSize(SoundDecoder_Sample* sound_sample, size_t new_buffer_size); +extern SOUND_DECODER_DECLSPEC int SOUND_DECODER_CALL SoundDecoder_SetBufferSize(SoundDecoder_Sample* sound_sample, size_t new_buffer_size); #define Sound_SetBufferSize SoundDecoder_SetBufferSize -size_t SoundDecoder_Decode(SoundDecoder_Sample* sound_sample); +extern SOUND_DECODER_DECLSPEC size_t SOUND_DECODER_CALL SoundDecoder_Decode(SoundDecoder_Sample* sound_sample); #define Sound_Decode SoundDecoder_Decode -size_t SoundDecoder_DecodeAll(SoundDecoder_Sample* sound_sample); +extern SOUND_DECODER_DECLSPEC size_t SOUND_DECODER_CALL SoundDecoder_DecodeAll(SoundDecoder_Sample* sound_sample); #define Sound_DecodeAll SoundDecoder_DecodeAll -int SoundDecoder_Rewind(SoundDecoder_Sample* sound_sample); +extern SOUND_DECODER_DECLSPEC int SOUND_DECODER_CALL SoundDecoder_Rewind(SoundDecoder_Sample* sound_sample); #define Sound_Rewind SoundDecoder_Rewind -int SoundDecoder_Seek(SoundDecoder_Sample* sound_sample, size_t ms); +extern SOUND_DECODER_DECLSPEC int SOUND_DECODER_CALL SoundDecoder_Seek(SoundDecoder_Sample* sound_sample, size_t ms); #define Sound_Seek SoundDecoder_Seek