// This file was generated by the Gtk# code generator.
// Any changes made will be lost if regenerated.

namespace GLib {

	using System;
	using System.Runtime.InteropServices;

#region Autogenerated code
	public partial class IOError {

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate int d_g_io_error_from_errno(int err_no);
		static d_g_io_error_from_errno g_io_error_from_errno = FuncLoader.LoadFunction<d_g_io_error_from_errno>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gio), "g_io_error_from_errno"));

		public static GLib.IOErrorEnum FromErrno(int err_no) {
			int raw_ret = g_io_error_from_errno(err_no);
			GLib.IOErrorEnum ret = (GLib.IOErrorEnum) raw_ret;
			return ret;
		}

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate int d_g_io_error_from_win32_error(int error_code);
		static d_g_io_error_from_win32_error g_io_error_from_win32_error = FuncLoader.LoadFunction<d_g_io_error_from_win32_error>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gio), "g_io_error_from_win32_error"));

		public static GLib.IOErrorEnum FromWin32Error(int error_code) {
			int raw_ret = g_io_error_from_win32_error(error_code);
			GLib.IOErrorEnum ret = (GLib.IOErrorEnum) raw_ret;
			return ret;
		}

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate IntPtr d_g_io_modules_load_all_in_directory_with_scope(IntPtr dirname, IntPtr scope);
		static d_g_io_modules_load_all_in_directory_with_scope g_io_modules_load_all_in_directory_with_scope = FuncLoader.LoadFunction<d_g_io_modules_load_all_in_directory_with_scope>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gio), "g_io_modules_load_all_in_directory_with_scope"));

		public static GLib.List ModulesLoadAllInDirectoryWithScope(string dirname, GLib.IOModuleScope scope) {
			IntPtr native_dirname = GLib.Marshaller.StringToPtrGStrdup (dirname);
			IntPtr raw_ret = g_io_modules_load_all_in_directory_with_scope(native_dirname, scope == null ? IntPtr.Zero : scope.Handle);
			GLib.List ret = new GLib.List(raw_ret);
			GLib.Marshaller.Free (native_dirname);
			return ret;
		}

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate void d_g_io_modules_scan_all_in_directory_with_scope(IntPtr dirname, IntPtr scope);
		static d_g_io_modules_scan_all_in_directory_with_scope g_io_modules_scan_all_in_directory_with_scope = FuncLoader.LoadFunction<d_g_io_modules_scan_all_in_directory_with_scope>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gio), "g_io_modules_scan_all_in_directory_with_scope"));

		public static void ModulesScanAllInDirectoryWithScope(string dirname, GLib.IOModuleScope scope) {
			IntPtr native_dirname = GLib.Marshaller.StringToPtrGStrdup (dirname);
			g_io_modules_scan_all_in_directory_with_scope(native_dirname, scope == null ? IntPtr.Zero : scope.Handle);
			GLib.Marshaller.Free (native_dirname);
		}

#endregion
	}
}
