[sre] Wrap mono_image_create_token with HANDLE_FUNCTION_{ENTER,RETURN}
[mono-project.git] / mono / metadata / cominterop-win32-internals.h
blob795ee2e5ea40b44cc97747caa9c445107ab148b4
1 /**
2 * \file
3 * Copyright 2016 Microsoft
4 * Licensed under the MIT license. See LICENSE file in the project root for full license information.
5 */
6 #ifndef __MONO_METADATA_COMINTEROP_WIN32_INTERNALS_H__
7 #define __MONO_METADATA_COMINTEROP_WIN32_INTERNALS_H__
9 #include <config.h>
10 #include <glib.h>
12 // On some Windows platforms the implementation of below methods are hosted
13 // in separate source files like cominterop-win32-*.c. On other platforms,
14 // the implementation is kept in cominterop.c and declared as static and in some
15 // cases even inline.
16 #if defined(HOST_WIN32) && !G_HAVE_API_SUPPORT(HAVE_CLASSIC_WINAPI_SUPPORT | HAVE_UWP_WINAPI_SUPPORT)
18 guint32
19 mono_marshal_win_safearray_get_dim (gpointer safearray);
21 int
22 mono_marshal_win_safe_array_get_lbound (gpointer psa, guint nDim, glong* plLbound);
24 int
25 mono_marshal_win_safe_array_get_ubound (gpointer psa, guint nDim, glong* plUbound);
27 int
28 mono_marshal_win_safearray_get_value (gpointer safearray, gpointer indices, gpointer *result);
30 void
31 mono_marshal_win_safearray_end (gpointer safearray, gpointer indices);
33 gboolean
34 mono_marshal_win_safearray_create_internal (UINT cDims, SAFEARRAYBOUND *rgsabound, gpointer *newsafearray);
36 int
37 mono_marshal_win_safearray_set_value (gpointer safearray, gpointer indices, gpointer value);
39 #endif /* HOST_WIN32 && !G_HAVE_API_SUPPORT(HAVE_CLASSIC_WINAPI_SUPPORT | HAVE_UWP_WINAPI_SUPPORT) */
41 #endif /* __MONO_METADATA_COMINTEROP_WIN32_INTERNALS_H__ */