File:  [RetroPC.NET] / np2 / sound / sndcsec.h
Revision 1.1.1.1 (vendor branch): download - view: text, annotated - select for diffs
Fri Oct 17 02:58:02 2003 JST (22 years ago) by yui
Branches: mie, MAIN
CVS tags: start, rel_036, VER_0_82_x64, VER_0_82, VER_0_81A, VER_0_81, VER_0_80, VER_0_79, VER_0_78, VER_0_77, VER_0_76, VER_0_75, VER_0_74, VER_0_73, VER_0_72, VER_0_71, VER_0_70, HEAD
Neko Project II


#if !defined(SOUND_CRITICAL)

#define	SNDCSEC_INIT
#define	SNDCSEC_TERM
#define	SNDCSEC_ENTER
#define	SNDCSEC_LEAVE

#else

#ifdef __cplusplus
extern "C" {
#endif

#if defined(WIN32) || defined(_WIN32_WCE)

extern	CRITICAL_SECTION	sndcsec;

#define	SNDCSEC_INIT	InitializeCriticalSection(&sndcsec)
#define	SNDCSEC_TERM	DeleteCriticalSection(&sndcsec)
#define	SNDCSEC_ENTER	EnterCriticalSection(&sndcsec)
#define	SNDCSEC_LEAVE	LeaveCriticalSection(&sndcsec)

#elif defined(MACOS)

extern	MPCriticalRegionID	sndcsec;

#define	SNDCSEC_INIT	MPCreateCriticalRegion(&sndcsec)
#define	SNDCSEC_TERM	MPDeleteCriticalRegion(sndcsec)
#define	SNDCSEC_ENTER	MPEnterCriticalRegion(sndcsec, kDurationForever)
#define	SNDCSEC_LEAVE	MPExitCriticalRegion(sndcsec)

#elif defined(X11) || defined(SLZAURUS)

extern	pthread_mutex_t		sndcsec;

#define	SNDCSEC_INIT	pthread_mutex_init(&sndcsec, NULL)
#define	SNDCSEC_TERM	pthread_mutex_destroy(&sndcsec)
#define	SNDCSEC_ENTER	pthread_mutex_lock(&sndcsec)
#define	SNDCSEC_LEAVE	pthread_mutex_unlock(&sndcsec)

#endif

#ifdef __cplusplus
}
#endif

#endif


RetroPC.NET-CVS <cvs@retropc.net>