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

namespace Gtk {

	using System;
	using System.Runtime.InteropServices;

#region Autogenerated code
	public partial class Main {

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate void d_gtk_main_do_event(IntPtr evnt);
		static d_gtk_main_do_event gtk_main_do_event = FuncLoader.LoadFunction<d_gtk_main_do_event>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gtk), "gtk_main_do_event"));

		public static void DoEvent(Gdk.Event evnt) {
			gtk_main_do_event(evnt == null ? IntPtr.Zero : evnt.Handle);
		}

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate bool d_gtk_main_iteration();
		static d_gtk_main_iteration gtk_main_iteration = FuncLoader.LoadFunction<d_gtk_main_iteration>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gtk), "gtk_main_iteration"));

		public static bool Iteration() {
			bool raw_ret = gtk_main_iteration();
			bool ret = raw_ret;
			return ret;
		}

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate bool d_gtk_main_iteration_do(bool blocking);
		static d_gtk_main_iteration_do gtk_main_iteration_do = FuncLoader.LoadFunction<d_gtk_main_iteration_do>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gtk), "gtk_main_iteration_do"));

		public static bool IterationDo(bool blocking) {
			bool raw_ret = gtk_main_iteration_do(blocking);
			bool ret = raw_ret;
			return ret;
		}

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate uint d_gtk_main_level();
		static d_gtk_main_level gtk_main_level = FuncLoader.LoadFunction<d_gtk_main_level>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gtk), "gtk_main_level"));

		public static uint Level() {
			uint raw_ret = gtk_main_level();
			uint ret = raw_ret;
			return ret;
		}

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate void d_gtk_main_quit();
		static d_gtk_main_quit gtk_main_quit = FuncLoader.LoadFunction<d_gtk_main_quit>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gtk), "gtk_main_quit"));

		public static void Quit() {
			gtk_main_quit();
		}

#endregion
	}
}
