2 * Copyright 2016 Microsoft
3 * Licensed under the MIT license. See LICENSE file in the project root for full license information.
5 #ifndef __MONO_METADATA_COMINTEROP_WIN32_INTERNALS_H__
6 #define __MONO_METADATA_COMINTEROP_WIN32_INTERNALS_H__
11 // On some Windows platforms the implementation of below methods are hosted
12 // in separate source files like cominterop-win32-*.c. On other platforms,
13 // the implementation is kept in cominterop.c and declared as static and in some
15 #if defined(HOST_WIN32) && !G_HAVE_API_SUPPORT(HAVE_CLASSIC_WINAPI_SUPPORT | HAVE_UWP_WINAPI_SUPPORT)
18 mono_marshal_win_safearray_get_dim (gpointer safearray);
21 mono_marshal_win_safe_array_get_lbound (gpointer psa, guint nDim, glong* plLbound);
24 mono_marshal_win_safe_array_get_ubound (gpointer psa, guint nDim, glong* plUbound);
27 mono_marshal_win_safearray_get_value (gpointer safearray, gpointer indices, gpointer *result);
30 mono_marshal_win_safearray_end (gpointer safearray, gpointer indices);
33 mono_marshal_win_safearray_create_internal (UINT cDims, SAFEARRAYBOUND *rgsabound, gpointer *newsafearray);
36 mono_marshal_win_safearray_set_value (gpointer safearray, gpointer indices, gpointer value);
38 #endif /* HOST_WIN32 && !G_HAVE_API_SUPPORT(HAVE_CLASSIC_WINAPI_SUPPORT | HAVE_UWP_WINAPI_SUPPORT) */
40 #endif /* __MONO_METADATA_COMINTEROP_WIN32_INTERNALS_H__ */