Merge pull request #5714 from alexischr/update_bockbuild
[mono.git] / mono / metadata / file-mmap.h
1 /**
2  * \file
3  * Managed mmap wrappers.
4  *
5  * Authors:
6  *      Rodrigo Kumpera
7  *
8  * Copyright 2014 Xamarin Inc (http://www.xamarin.com)
9  * Licensed under the MIT license. See LICENSE file in the project root for full license information.
10  */
11
12 #ifndef _MONO_METADATA_FILE_MMAP_H_
13 #define _MONO_METADATA_FILE_MMAP_H_
14
15 #include <config.h>
16 #include <glib.h>
17
18 #include <mono/metadata/object-internals.h>
19 #include <mono/utils/mono-compiler.h>
20
21 extern void mono_mmap_close (void *mmap_handle);
22
23 extern void mono_mmap_configure_inheritability (void *mmap_handle, gboolean inheritability);
24
25 extern void mono_mmap_flush (void *mmap_handle);
26
27 extern void *mono_mmap_open_file (MonoString *string, int mode, MonoString *mapName, gint64 *capacity, int access, int options, int *error);
28
29 extern void *mono_mmap_open_handle (void *handle, MonoString *mapName, gint64 *capacity, int access, int options, int *error);
30
31 extern int mono_mmap_map (void *handle, gint64 offset, gint64 *size, int access, void **mmap_handle, void **base_address);
32
33 extern gboolean mono_mmap_unmap (void *base_address);
34
35 #endif /* _MONO_METADATA_FILE_MMAP_H_ */