1 /**
2  * \file
3  */
4 
5 #ifndef _MONO_METADATA_W32MUTEX_H_
6 #define _MONO_METADATA_W32MUTEX_H_
7 
8 #include <config.h>
9 #include <glib.h>
10 
11 #include "object.h"
12 #include "object-internals.h"
13 #include "w32handle-namespace.h"
14 
15 void
16 mono_w32mutex_init (void);
17 
18 gpointer
19 ves_icall_System_Threading_Mutex_CreateMutex_internal (MonoBoolean owned, MonoStringHandle name, MonoBoolean *created, MonoError *error);
20 
21 MonoBoolean
22 ves_icall_System_Threading_Mutex_ReleaseMutex_internal (gpointer handle);
23 
24 gpointer
25 ves_icall_System_Threading_Mutex_OpenMutex_internal (MonoStringHandle name, gint32 rights, gint32 *err, MonoError *error);
26 
27 typedef struct MonoW32HandleNamedMutex MonoW32HandleNamedMutex;
28 
29 MonoW32HandleNamespace*
30 mono_w32mutex_get_namespace (MonoW32HandleNamedMutex *mutex);
31 
32 #ifndef HOST_WIN32
33 void
34 mono_w32mutex_abandon (void);
35 #endif
36 
37 #endif /* _MONO_METADATA_W32MUTEX_H_ */
38