Mercurial > almixer_isolated
view Isolated/SimpleMutex.h @ 58:79503033cf53
merged
author | Eric Wing <ewing . public |-at-| gmail . com> |
---|---|
date | Wed, 30 May 2012 02:26:03 -0700 |
parents | 208a9ed20087 |
children | 36644b1b940b |
line wrap: on
line source
/* Copyright: Eric Wing 2003 */ #ifndef SIMPLE_MUTEX_H #define SIMPLE_MUTEX_H #ifdef __cplusplus extern "C" { #endif #if defined(_WIN32) #if defined(SIMPLE_MUTEX_BUILD_LIBRARY) #define SIMPLE_MUTEX_DECLSPEC __declspec(dllexport) #else #define SIMPLE_MUTEX_DECLSPEC __declspec(dllimport) #endif #else #if defined(SIMPLE_MUTEX_BUILD_LIBRARY) #if defined (__GNUC__) && __GNUC__ >= 4 #define SIMPLE_MUTEX_DECLSPEC __attribute__((visibility("default"))) #else #define SIMPLE_MUTEX_DECLSPEC #endif #else #define SIMPLE_MUTEX_DECLSPEC #endif #endif #if defined(_WIN32) #define SIMPLE_MUTEX_CALL __cdecl #else #define SIMPLE_MUTEX_CALL #endif typedef struct SimpleMutex SimpleMutex; extern SIMPLE_MUTEX_DECLSPEC SimpleMutex* SIMPLE_MUTEX_CALL SimpleMutex_CreateMutex(void); extern SIMPLE_MUTEX_DECLSPEC void SIMPLE_MUTEX_CALL SimpleMutex_DestroyMutex(SimpleMutex* simple_mutex); extern SIMPLE_MUTEX_DECLSPEC int SIMPLE_MUTEX_CALL SimpleMutex_LockMutex(SimpleMutex* simple_mutex); extern SIMPLE_MUTEX_DECLSPEC void SIMPLE_MUTEX_CALL SimpleMutex_UnlockMutex(SimpleMutex* simple_mutex); /* Ends C function definitions when using C++ */ #ifdef __cplusplus } #endif #endif