/* Generated by dbus-binding-tool; do not edit! */

#include <glib.h>
#include <dbus/dbus-glib.h>

G_BEGIN_DECLS

#ifndef _DBUS_GLIB_ASYNC_DATA_FREE
#define _DBUS_GLIB_ASYNC_DATA_FREE
static
#ifdef G_HAVE_INLINE
inline
#endif
void
_dbus_glib_async_data_free (gpointer stuff)
{
	g_slice_free (DBusGAsyncData, stuff);
}
#endif

#ifndef DBUS_GLIB_CLIENT_WRAPPERS_org_ayatana_dbusmenu
#define DBUS_GLIB_CLIENT_WRAPPERS_org_ayatana_dbusmenu

static
#ifdef G_HAVE_INLINE
inline
#endif
gboolean
org_ayatana_dbusmenu_get_layout (DBusGProxy *proxy, const gint IN_parentId, guint* OUT_revision, char ** OUT_layout, GError **error)

{
  return dbus_g_proxy_call (proxy, "GetLayout", error, G_TYPE_INT, IN_parentId, G_TYPE_INVALID, G_TYPE_UINT, OUT_revision, G_TYPE_STRING, OUT_layout, G_TYPE_INVALID);
}

typedef void (*org_ayatana_dbusmenu_get_layout_reply) (DBusGProxy *proxy, guint OUT_revision, char * OUT_layout, GError *error, gpointer userdata);

static void
org_ayatana_dbusmenu_get_layout_async_callback (DBusGProxy *proxy, DBusGProxyCall *call, void *user_data)
{
  DBusGAsyncData *data = (DBusGAsyncData*) user_data;
  GError *error = NULL;
  guint OUT_revision;
  char * OUT_layout;
  dbus_g_proxy_end_call (proxy, call, &error, G_TYPE_UINT, &OUT_revision, G_TYPE_STRING, &OUT_layout, G_TYPE_INVALID);
  (*(org_ayatana_dbusmenu_get_layout_reply)data->cb) (proxy, OUT_revision, OUT_layout, error, data->userdata);
  return;
}

static
#ifdef G_HAVE_INLINE
inline
#endif
DBusGProxyCall*
org_ayatana_dbusmenu_get_layout_async (DBusGProxy *proxy, const gint IN_parentId, org_ayatana_dbusmenu_get_layout_reply callback, gpointer userdata)

{
  DBusGAsyncData *stuff;
  stuff = g_slice_new (DBusGAsyncData);
  stuff->cb = G_CALLBACK (callback);
  stuff->userdata = userdata;
  return dbus_g_proxy_begin_call (proxy, "GetLayout", org_ayatana_dbusmenu_get_layout_async_callback, stuff, _dbus_glib_async_data_free, G_TYPE_INT, IN_parentId, G_TYPE_INVALID);
}
static
#ifdef G_HAVE_INLINE
inline
#endif
gboolean
org_ayatana_dbusmenu_get_group_properties (DBusGProxy *proxy, const GArray* IN_ids, const char ** IN_propertyNames, GPtrArray** OUT_properties, GError **error)

{
  return dbus_g_proxy_call (proxy, "GetGroupProperties", error, dbus_g_type_get_collection ("GArray", G_TYPE_INT), IN_ids, G_TYPE_STRV, IN_propertyNames, G_TYPE_INVALID, dbus_g_type_get_collection ("GPtrArray", dbus_g_type_get_struct ("GValueArray", G_TYPE_INT, dbus_g_type_get_map ("GHashTable", G_TYPE_STRING, G_TYPE_VALUE), G_TYPE_INVALID)), OUT_properties, G_TYPE_INVALID);
}

typedef void (*org_ayatana_dbusmenu_get_group_properties_reply) (DBusGProxy *proxy, GPtrArray *OUT_properties, GError *error, gpointer userdata);

static void
org_ayatana_dbusmenu_get_group_properties_async_callback (DBusGProxy *proxy, DBusGProxyCall *call, void *user_data)
{
  DBusGAsyncData *data = (DBusGAsyncData*) user_data;
  GError *error = NULL;
  GPtrArray* OUT_properties;
  dbus_g_proxy_end_call (proxy, call, &error, dbus_g_type_get_collection ("GPtrArray", dbus_g_type_get_struct ("GValueArray", G_TYPE_INT, dbus_g_type_get_map ("GHashTable", G_TYPE_STRING, G_TYPE_VALUE), G_TYPE_INVALID)), &OUT_properties, G_TYPE_INVALID);
  (*(org_ayatana_dbusmenu_get_group_properties_reply)data->cb) (proxy, OUT_properties, error, data->userdata);
  return;
}

static
#ifdef G_HAVE_INLINE
inline
#endif
DBusGProxyCall*
org_ayatana_dbusmenu_get_group_properties_async (DBusGProxy *proxy, const GArray* IN_ids, const char ** IN_propertyNames, org_ayatana_dbusmenu_get_group_properties_reply callback, gpointer userdata)

{
  DBusGAsyncData *stuff;
  stuff = g_slice_new (DBusGAsyncData);
  stuff->cb = G_CALLBACK (callback);
  stuff->userdata = userdata;
  return dbus_g_proxy_begin_call (proxy, "GetGroupProperties", org_ayatana_dbusmenu_get_group_properties_async_callback, stuff, _dbus_glib_async_data_free, dbus_g_type_get_collection ("GArray", G_TYPE_INT), IN_ids, G_TYPE_STRV, IN_propertyNames, G_TYPE_INVALID);
}
static
#ifdef G_HAVE_INLINE
inline
#endif
gboolean
org_ayatana_dbusmenu_get_children (DBusGProxy *proxy, const gint IN_id, const char ** IN_propertyNames, GPtrArray** OUT_properties, GError **error)

{
  return dbus_g_proxy_call (proxy, "GetChildren", error, G_TYPE_INT, IN_id, G_TYPE_STRV, IN_propertyNames, G_TYPE_INVALID, dbus_g_type_get_collection ("GPtrArray", dbus_g_type_get_struct ("GValueArray", G_TYPE_INT, dbus_g_type_get_map ("GHashTable", G_TYPE_STRING, G_TYPE_VALUE), G_TYPE_INVALID)), OUT_properties, G_TYPE_INVALID);
}

typedef void (*org_ayatana_dbusmenu_get_children_reply) (DBusGProxy *proxy, GPtrArray *OUT_properties, GError *error, gpointer userdata);

static void
org_ayatana_dbusmenu_get_children_async_callback (DBusGProxy *proxy, DBusGProxyCall *call, void *user_data)
{
  DBusGAsyncData *data = (DBusGAsyncData*) user_data;
  GError *error = NULL;
  GPtrArray* OUT_properties;
  dbus_g_proxy_end_call (proxy, call, &error, dbus_g_type_get_collection ("GPtrArray", dbus_g_type_get_struct ("GValueArray", G_TYPE_INT, dbus_g_type_get_map ("GHashTable", G_TYPE_STRING, G_TYPE_VALUE), G_TYPE_INVALID)), &OUT_properties, G_TYPE_INVALID);
  (*(org_ayatana_dbusmenu_get_children_reply)data->cb) (proxy, OUT_properties, error, data->userdata);
  return;
}

static
#ifdef G_HAVE_INLINE
inline
#endif
DBusGProxyCall*
org_ayatana_dbusmenu_get_children_async (DBusGProxy *proxy, const gint IN_id, const char ** IN_propertyNames, org_ayatana_dbusmenu_get_children_reply callback, gpointer userdata)

{
  DBusGAsyncData *stuff;
  stuff = g_slice_new (DBusGAsyncData);
  stuff->cb = G_CALLBACK (callback);
  stuff->userdata = userdata;
  return dbus_g_proxy_begin_call (proxy, "GetChildren", org_ayatana_dbusmenu_get_children_async_callback, stuff, _dbus_glib_async_data_free, G_TYPE_INT, IN_id, G_TYPE_STRV, IN_propertyNames, G_TYPE_INVALID);
}
static
#ifdef G_HAVE_INLINE
inline
#endif
gboolean
org_ayatana_dbusmenu_get_property (DBusGProxy *proxy, const gint IN_id, const char * IN_name, GValue* OUT_value, GError **error)

{
  return dbus_g_proxy_call (proxy, "GetProperty", error, G_TYPE_INT, IN_id, G_TYPE_STRING, IN_name, G_TYPE_INVALID, G_TYPE_VALUE, OUT_value, G_TYPE_INVALID);
}

typedef void (*org_ayatana_dbusmenu_get_property_reply) (DBusGProxy *proxy, GValue OUT_value, GError *error, gpointer userdata);

static void
org_ayatana_dbusmenu_get_property_async_callback (DBusGProxy *proxy, DBusGProxyCall *call, void *user_data)
{
  DBusGAsyncData *data = (DBusGAsyncData*) user_data;
  GError *error = NULL;
  GValue OUT_value = { 0, };
  dbus_g_proxy_end_call (proxy, call, &error, G_TYPE_VALUE, &OUT_value, G_TYPE_INVALID);
  (*(org_ayatana_dbusmenu_get_property_reply)data->cb) (proxy, OUT_value, error, data->userdata);
  return;
}

static
#ifdef G_HAVE_INLINE
inline
#endif
DBusGProxyCall*
org_ayatana_dbusmenu_get_property_async (DBusGProxy *proxy, const gint IN_id, const char * IN_name, org_ayatana_dbusmenu_get_property_reply callback, gpointer userdata)

{
  DBusGAsyncData *stuff;
  stuff = g_slice_new (DBusGAsyncData);
  stuff->cb = G_CALLBACK (callback);
  stuff->userdata = userdata;
  return dbus_g_proxy_begin_call (proxy, "GetProperty", org_ayatana_dbusmenu_get_property_async_callback, stuff, _dbus_glib_async_data_free, G_TYPE_INT, IN_id, G_TYPE_STRING, IN_name, G_TYPE_INVALID);
}
static
#ifdef G_HAVE_INLINE
inline
#endif
gboolean
org_ayatana_dbusmenu_get_properties (DBusGProxy *proxy, const gint IN_id, const char ** IN_propertyNames, GHashTable** OUT_properties, GError **error)

{
  return dbus_g_proxy_call (proxy, "GetProperties", error, G_TYPE_INT, IN_id, G_TYPE_STRV, IN_propertyNames, G_TYPE_INVALID, dbus_g_type_get_map ("GHashTable", G_TYPE_STRING, G_TYPE_VALUE), OUT_properties, G_TYPE_INVALID);
}

typedef void (*org_ayatana_dbusmenu_get_properties_reply) (DBusGProxy *proxy, GHashTable *OUT_properties, GError *error, gpointer userdata);

static void
org_ayatana_dbusmenu_get_properties_async_callback (DBusGProxy *proxy, DBusGProxyCall *call, void *user_data)
{
  DBusGAsyncData *data = (DBusGAsyncData*) user_data;
  GError *error = NULL;
  GHashTable* OUT_properties;
  dbus_g_proxy_end_call (proxy, call, &error, dbus_g_type_get_map ("GHashTable", G_TYPE_STRING, G_TYPE_VALUE), &OUT_properties, G_TYPE_INVALID);
  (*(org_ayatana_dbusmenu_get_properties_reply)data->cb) (proxy, OUT_properties, error, data->userdata);
  return;
}

static
#ifdef G_HAVE_INLINE
inline
#endif
DBusGProxyCall*
org_ayatana_dbusmenu_get_properties_async (DBusGProxy *proxy, const gint IN_id, const char ** IN_propertyNames, org_ayatana_dbusmenu_get_properties_reply callback, gpointer userdata)

{
  DBusGAsyncData *stuff;
  stuff = g_slice_new (DBusGAsyncData);
  stuff->cb = G_CALLBACK (callback);
  stuff->userdata = userdata;
  return dbus_g_proxy_begin_call (proxy, "GetProperties", org_ayatana_dbusmenu_get_properties_async_callback, stuff, _dbus_glib_async_data_free, G_TYPE_INT, IN_id, G_TYPE_STRV, IN_propertyNames, G_TYPE_INVALID);
}
static
#ifdef G_HAVE_INLINE
inline
#endif
gboolean
org_ayatana_dbusmenu_event (DBusGProxy *proxy, const gint IN_id, const char * IN_eventId, const GValue* IN_data, const guint IN_timestamp, GError **error)

{
  return dbus_g_proxy_call (proxy, "Event", error, G_TYPE_INT, IN_id, G_TYPE_STRING, IN_eventId, G_TYPE_VALUE, IN_data, G_TYPE_UINT, IN_timestamp, G_TYPE_INVALID, G_TYPE_INVALID);
}

typedef void (*org_ayatana_dbusmenu_event_reply) (DBusGProxy *proxy, GError *error, gpointer userdata);

static void
org_ayatana_dbusmenu_event_async_callback (DBusGProxy *proxy, DBusGProxyCall *call, void *user_data)
{
  DBusGAsyncData *data = (DBusGAsyncData*) user_data;
  GError *error = NULL;
  dbus_g_proxy_end_call (proxy, call, &error, G_TYPE_INVALID);
  (*(org_ayatana_dbusmenu_event_reply)data->cb) (proxy, error, data->userdata);
  return;
}

static
#ifdef G_HAVE_INLINE
inline
#endif
DBusGProxyCall*
org_ayatana_dbusmenu_event_async (DBusGProxy *proxy, const gint IN_id, const char * IN_eventId, const GValue* IN_data, const guint IN_timestamp, org_ayatana_dbusmenu_event_reply callback, gpointer userdata)

{
  DBusGAsyncData *stuff;
  stuff = g_slice_new (DBusGAsyncData);
  stuff->cb = G_CALLBACK (callback);
  stuff->userdata = userdata;
  return dbus_g_proxy_begin_call (proxy, "Event", org_ayatana_dbusmenu_event_async_callback, stuff, _dbus_glib_async_data_free, G_TYPE_INT, IN_id, G_TYPE_STRING, IN_eventId, G_TYPE_VALUE, IN_data, G_TYPE_UINT, IN_timestamp, G_TYPE_INVALID);
}
static
#ifdef G_HAVE_INLINE
inline
#endif
gboolean
org_ayatana_dbusmenu_about_to_show (DBusGProxy *proxy, const gint IN_id, gboolean* OUT_needUpdate, GError **error)

{
  return dbus_g_proxy_call (proxy, "AboutToShow", error, G_TYPE_INT, IN_id, G_TYPE_INVALID, G_TYPE_BOOLEAN, OUT_needUpdate, G_TYPE_INVALID);
}

typedef void (*org_ayatana_dbusmenu_about_to_show_reply) (DBusGProxy *proxy, gboolean OUT_needUpdate, GError *error, gpointer userdata);

static void
org_ayatana_dbusmenu_about_to_show_async_callback (DBusGProxy *proxy, DBusGProxyCall *call, void *user_data)
{
  DBusGAsyncData *data = (DBusGAsyncData*) user_data;
  GError *error = NULL;
  gboolean OUT_needUpdate;
  dbus_g_proxy_end_call (proxy, call, &error, G_TYPE_BOOLEAN, &OUT_needUpdate, G_TYPE_INVALID);
  (*(org_ayatana_dbusmenu_about_to_show_reply)data->cb) (proxy, OUT_needUpdate, error, data->userdata);
  return;
}

static
#ifdef G_HAVE_INLINE
inline
#endif
DBusGProxyCall*
org_ayatana_dbusmenu_about_to_show_async (DBusGProxy *proxy, const gint IN_id, org_ayatana_dbusmenu_about_to_show_reply callback, gpointer userdata)

{
  DBusGAsyncData *stuff;
  stuff = g_slice_new (DBusGAsyncData);
  stuff->cb = G_CALLBACK (callback);
  stuff->userdata = userdata;
  return dbus_g_proxy_begin_call (proxy, "AboutToShow", org_ayatana_dbusmenu_about_to_show_async_callback, stuff, _dbus_glib_async_data_free, G_TYPE_INT, IN_id, G_TYPE_INVALID);
}
#endif /* defined DBUS_GLIB_CLIENT_WRAPPERS_org_ayatana_dbusmenu */

G_END_DECLS
