/* 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_freedesktop_Telepathy_Connection_Interface_Avatars
#define DBUS_GLIB_CLIENT_WRAPPERS_org_freedesktop_Telepathy_Connection_Interface_Avatars

static
#ifdef G_HAVE_INLINE
inline
#endif
gboolean
tp_conn_iface_avatars_get_avatar_requirements (DBusGProxy *proxy, char *** OUT_arg0, guint* OUT_arg1, guint* OUT_arg2, guint* OUT_arg3, guint* OUT_arg4, guint* OUT_arg5, GError **error)

{
  return dbus_g_proxy_call (proxy, "GetAvatarRequirements", error, G_TYPE_INVALID, G_TYPE_STRV, OUT_arg0, G_TYPE_UINT, OUT_arg1, G_TYPE_UINT, OUT_arg2, G_TYPE_UINT, OUT_arg3, G_TYPE_UINT, OUT_arg4, G_TYPE_UINT, OUT_arg5, G_TYPE_INVALID);
}

typedef void (*tp_conn_iface_avatars_get_avatar_requirements_reply) (DBusGProxy *proxy, char * *OUT_arg0, guint OUT_arg1, guint OUT_arg2, guint OUT_arg3, guint OUT_arg4, guint OUT_arg5, GError *error, gpointer userdata);

static void
tp_conn_iface_avatars_get_avatar_requirements_async_callback (DBusGProxy *proxy, DBusGProxyCall *call, void *user_data)
{
  DBusGAsyncData *data = (DBusGAsyncData*) user_data;
  GError *error = NULL;
  char ** OUT_arg0;
  guint OUT_arg1;
  guint OUT_arg2;
  guint OUT_arg3;
  guint OUT_arg4;
  guint OUT_arg5;
  dbus_g_proxy_end_call (proxy, call, &error, G_TYPE_STRV, &OUT_arg0, G_TYPE_UINT, &OUT_arg1, G_TYPE_UINT, &OUT_arg2, G_TYPE_UINT, &OUT_arg3, G_TYPE_UINT, &OUT_arg4, G_TYPE_UINT, &OUT_arg5, G_TYPE_INVALID);
  (*(tp_conn_iface_avatars_get_avatar_requirements_reply)data->cb) (proxy, OUT_arg0, OUT_arg1, OUT_arg2, OUT_arg3, OUT_arg4, OUT_arg5, error, data->userdata);
  return;
}

static
#ifdef G_HAVE_INLINE
inline
#endif
DBusGProxyCall*
tp_conn_iface_avatars_get_avatar_requirements_async (DBusGProxy *proxy, tp_conn_iface_avatars_get_avatar_requirements_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, "GetAvatarRequirements", tp_conn_iface_avatars_get_avatar_requirements_async_callback, stuff, _dbus_glib_async_data_free, G_TYPE_INVALID);
}
static
#ifdef G_HAVE_INLINE
inline
#endif
gboolean
tp_conn_iface_avatars_get_avatar_tokens (DBusGProxy *proxy, const GArray* IN_contacts, char *** OUT_arg1, GError **error)

{
  return dbus_g_proxy_call (proxy, "GetAvatarTokens", error, dbus_g_type_get_collection ("GArray", G_TYPE_UINT), IN_contacts, G_TYPE_INVALID, G_TYPE_STRV, OUT_arg1, G_TYPE_INVALID);
}

typedef void (*tp_conn_iface_avatars_get_avatar_tokens_reply) (DBusGProxy *proxy, char * *OUT_arg1, GError *error, gpointer userdata);

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

static
#ifdef G_HAVE_INLINE
inline
#endif
DBusGProxyCall*
tp_conn_iface_avatars_get_avatar_tokens_async (DBusGProxy *proxy, const GArray* IN_contacts, tp_conn_iface_avatars_get_avatar_tokens_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, "GetAvatarTokens", tp_conn_iface_avatars_get_avatar_tokens_async_callback, stuff, _dbus_glib_async_data_free, dbus_g_type_get_collection ("GArray", G_TYPE_UINT), IN_contacts, G_TYPE_INVALID);
}
static
#ifdef G_HAVE_INLINE
inline
#endif
gboolean
tp_conn_iface_avatars_get_known_avatar_tokens (DBusGProxy *proxy, const GArray* IN_contacts, GHashTable** OUT_arg1, GError **error)

{
  return dbus_g_proxy_call (proxy, "GetKnownAvatarTokens", error, dbus_g_type_get_collection ("GArray", G_TYPE_UINT), IN_contacts, G_TYPE_INVALID, dbus_g_type_get_map ("GHashTable", G_TYPE_UINT, G_TYPE_STRING), OUT_arg1, G_TYPE_INVALID);
}

typedef void (*tp_conn_iface_avatars_get_known_avatar_tokens_reply) (DBusGProxy *proxy, GHashTable *OUT_arg1, GError *error, gpointer userdata);

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

static
#ifdef G_HAVE_INLINE
inline
#endif
DBusGProxyCall*
tp_conn_iface_avatars_get_known_avatar_tokens_async (DBusGProxy *proxy, const GArray* IN_contacts, tp_conn_iface_avatars_get_known_avatar_tokens_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, "GetKnownAvatarTokens", tp_conn_iface_avatars_get_known_avatar_tokens_async_callback, stuff, _dbus_glib_async_data_free, dbus_g_type_get_collection ("GArray", G_TYPE_UINT), IN_contacts, G_TYPE_INVALID);
}
static
#ifdef G_HAVE_INLINE
inline
#endif
gboolean
tp_conn_iface_avatars_request_avatar (DBusGProxy *proxy, const guint IN_contact, GArray** OUT_arg1, char ** OUT_arg2, GError **error)

{
  return dbus_g_proxy_call (proxy, "RequestAvatar", error, G_TYPE_UINT, IN_contact, G_TYPE_INVALID, dbus_g_type_get_collection ("GArray", G_TYPE_UCHAR), OUT_arg1, G_TYPE_STRING, OUT_arg2, G_TYPE_INVALID);
}

typedef void (*tp_conn_iface_avatars_request_avatar_reply) (DBusGProxy *proxy, GArray *OUT_arg1, char * OUT_arg2, GError *error, gpointer userdata);

static void
tp_conn_iface_avatars_request_avatar_async_callback (DBusGProxy *proxy, DBusGProxyCall *call, void *user_data)
{
  DBusGAsyncData *data = (DBusGAsyncData*) user_data;
  GError *error = NULL;
  GArray* OUT_arg1;
  char * OUT_arg2;
  dbus_g_proxy_end_call (proxy, call, &error, dbus_g_type_get_collection ("GArray", G_TYPE_UCHAR), &OUT_arg1, G_TYPE_STRING, &OUT_arg2, G_TYPE_INVALID);
  (*(tp_conn_iface_avatars_request_avatar_reply)data->cb) (proxy, OUT_arg1, OUT_arg2, error, data->userdata);
  return;
}

static
#ifdef G_HAVE_INLINE
inline
#endif
DBusGProxyCall*
tp_conn_iface_avatars_request_avatar_async (DBusGProxy *proxy, const guint IN_contact, tp_conn_iface_avatars_request_avatar_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, "RequestAvatar", tp_conn_iface_avatars_request_avatar_async_callback, stuff, _dbus_glib_async_data_free, G_TYPE_UINT, IN_contact, G_TYPE_INVALID);
}
static
#ifdef G_HAVE_INLINE
inline
#endif
gboolean
tp_conn_iface_avatars_request_avatars (DBusGProxy *proxy, const GArray* IN_contacts, GError **error)

{
  return dbus_g_proxy_call (proxy, "RequestAvatars", error, dbus_g_type_get_collection ("GArray", G_TYPE_UINT), IN_contacts, G_TYPE_INVALID, G_TYPE_INVALID);
}

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

static void
tp_conn_iface_avatars_request_avatars_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);
  (*(tp_conn_iface_avatars_request_avatars_reply)data->cb) (proxy, error, data->userdata);
  return;
}

static
#ifdef G_HAVE_INLINE
inline
#endif
DBusGProxyCall*
tp_conn_iface_avatars_request_avatars_async (DBusGProxy *proxy, const GArray* IN_contacts, tp_conn_iface_avatars_request_avatars_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, "RequestAvatars", tp_conn_iface_avatars_request_avatars_async_callback, stuff, _dbus_glib_async_data_free, dbus_g_type_get_collection ("GArray", G_TYPE_UINT), IN_contacts, G_TYPE_INVALID);
}
static
#ifdef G_HAVE_INLINE
inline
#endif
gboolean
tp_conn_iface_avatars_set_avatar (DBusGProxy *proxy, const GArray* IN_avatar, const char * IN_mime_type, char ** OUT_arg2, GError **error)

{
  return dbus_g_proxy_call (proxy, "SetAvatar", error, dbus_g_type_get_collection ("GArray", G_TYPE_UCHAR), IN_avatar, G_TYPE_STRING, IN_mime_type, G_TYPE_INVALID, G_TYPE_STRING, OUT_arg2, G_TYPE_INVALID);
}

typedef void (*tp_conn_iface_avatars_set_avatar_reply) (DBusGProxy *proxy, char * OUT_arg2, GError *error, gpointer userdata);

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

static
#ifdef G_HAVE_INLINE
inline
#endif
DBusGProxyCall*
tp_conn_iface_avatars_set_avatar_async (DBusGProxy *proxy, const GArray* IN_avatar, const char * IN_mime_type, tp_conn_iface_avatars_set_avatar_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, "SetAvatar", tp_conn_iface_avatars_set_avatar_async_callback, stuff, _dbus_glib_async_data_free, dbus_g_type_get_collection ("GArray", G_TYPE_UCHAR), IN_avatar, G_TYPE_STRING, IN_mime_type, G_TYPE_INVALID);
}
static
#ifdef G_HAVE_INLINE
inline
#endif
gboolean
tp_conn_iface_avatars_clear_avatar (DBusGProxy *proxy, GError **error)

{
  return dbus_g_proxy_call (proxy, "ClearAvatar", error, G_TYPE_INVALID, G_TYPE_INVALID);
}

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

static void
tp_conn_iface_avatars_clear_avatar_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);
  (*(tp_conn_iface_avatars_clear_avatar_reply)data->cb) (proxy, error, data->userdata);
  return;
}

static
#ifdef G_HAVE_INLINE
inline
#endif
DBusGProxyCall*
tp_conn_iface_avatars_clear_avatar_async (DBusGProxy *proxy, tp_conn_iface_avatars_clear_avatar_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, "ClearAvatar", tp_conn_iface_avatars_clear_avatar_async_callback, stuff, _dbus_glib_async_data_free, G_TYPE_INVALID);
}
#endif /* defined DBUS_GLIB_CLIENT_WRAPPERS_org_freedesktop_Telepathy_Connection_Interface_Avatars */

G_END_DECLS
