Merge pull request #1188 from arktronic/master
[mono.git] / mono / io-layer / shared.h
index b7b5b9310111321bd4d3dedd0204a573fead654e..b175b6e306bf2e26aeb6ed7df1571bbbe455f416 100644 (file)
@@ -4,7 +4,7 @@
  * Author:
  *     Dick Porter (dick@ximian.com)
  *
- * (C) 2002 Ximian, Inc.
+ * (C) 2002-2006 Novell, Inc.
  */
 
 #ifndef _WAPI_SHARED_H_
 
 #include <mono/io-layer/wapi-private.h>
 
-struct _WapiScratchHeader 
-{
-       /* These two can be merged */
-       guint32 flags;
-       guint32 length;
-};
-
-enum {
-       WAPI_SHM_SCRATCH_FREE=0x1,
-};
-
 typedef enum {
        WAPI_SHM_DATA,
-       WAPI_SHM_SCRATCH
+       WAPI_SHM_FILESHARE
 } _wapi_shm_t;
 
-extern guchar *_wapi_shm_file (_wapi_shm_t type, guint32 segment);
-extern gpointer _wapi_shm_file_map (_wapi_shm_t type, guint32 segment,
-                                   gboolean *created);
-extern gpointer _wapi_shm_file_expand (gpointer mem, _wapi_shm_t type,
-                                      guint32 segment, guint32 old_len,
-                                      guint32 new_len);
-extern gboolean _wapi_shm_attach (struct _WapiHandleShared_list **data,
-                                 struct _WapiHandleScratch **scratch);
-extern void _wapi_shm_destroy (void);
+extern gboolean _wapi_shm_disabled;
+
+extern gpointer _wapi_shm_attach (_wapi_shm_t type);
+extern void _wapi_shm_detach (_wapi_shm_t type);
+extern gboolean _wapi_shm_enabled (void);
+extern void _wapi_shm_semaphores_init (void);
+extern void _wapi_shm_semaphores_remove (void);
+extern int _wapi_shm_sem_lock (int sem);
+extern int _wapi_shm_sem_trylock (int sem);
+extern int _wapi_shm_sem_unlock (int sem);
 
 #endif /* _WAPI_SHARED_H_ */