view src/thread/win32/win_ce_semaphore.h @ 4439:ab63fdcf66af

esigra 2010-04-17 03:53:57 PDT If this header file is supposed to be includable from C++ code, the code should of course use one of the SDL_*_cast macros from SDL_stdinc.h.
author Sam Lantinga <slouken@libsdl.org>
date Fri, 23 Apr 2010 02:15:05 -0700
parents c121d94672cb
children
line wrap: on
line source

/* win_ce_semaphore.h - header file to go with win_ce_semaphore.c */

typedef struct _SYNCH_HANDLE_STRUCTURE
{
    HANDLE hEvent;
    HANDLE hMutex;
    HANDLE hSemph;
    LONG MaxCount;
    volatile LONG CurCount;
    LPCTSTR lpName;
} SYNCH_HANDLE_STRUCTURE, *SYNCHHANDLE;

#define SYNCH_HANDLE_SIZE sizeof (SYNCH_HANDLE_STRUCTURE)

        /* Error codes - all must have bit 29 set */
#define SYNCH_ERROR 0X20000000  /* EXERCISE - REFINE THE ERROR NUMBERS */

extern SYNCHHANDLE CreateSemaphoreCE(LPSECURITY_ATTRIBUTES, LONG, LONG,
                                     LPCTSTR);

extern BOOL ReleaseSemaphoreCE(SYNCHHANDLE, LONG, LPLONG);
extern DWORD WaitForSemaphoreCE(SYNCHHANDLE, DWORD);

extern BOOL CloseSynchHandle(SYNCHHANDLE);
/* vi: set ts=4 sw=4 expandtab: */