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

static
#ifdef G_HAVE_INLINE
inline
#endif
gboolean
tp_conn_connect (DBusGProxy *proxy, GError **error)

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

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

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

static
#ifdef G_HAVE_INLINE
inline
#endif
DBusGProxyCall*
tp_conn_connect_async (DBusGProxy *proxy, tp_conn_connect_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, "Connect", tp_conn_connect_async_callback, stuff, _dbus_glib_async_data_free, G_TYPE_INVALID);
}
static
#ifdef G_HAVE_INLINE
inline
#endif
gboolean
tp_conn_disconnect (DBusGProxy *proxy, GError **error)

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

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

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

static
#ifdef G_HAVE_INLINE
inline
#endif
DBusGProxyCall*
tp_conn_disconnect_async (DBusGProxy *proxy, tp_conn_disconnect_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, "Disconnect", tp_conn_disconnect_async_callback, stuff, _dbus_glib_async_data_free, G_TYPE_INVALID);
}
static
#ifdef G_HAVE_INLINE
inline
#endif
gboolean
tp_conn_get_interfaces (DBusGProxy *proxy, char *** OUT_arg0, GError **error)

{
  return dbus_g_proxy_call (proxy, "GetInterfaces", error, G_TYPE_INVALID, G_TYPE_STRV, OUT_arg0, G_TYPE_INVALID);
}

typedef void (*tp_conn_get_interfaces_reply) (DBusGProxy *proxy, char * *OUT_arg0, GError *error, gpointer userdata);

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

static
#ifdef G_HAVE_INLINE
inline
#endif
DBusGProxyCall*
tp_conn_get_interfaces_async (DBusGProxy *proxy, tp_conn_get_interfaces_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, "GetInterfaces", tp_conn_get_interfaces_async_callback, stuff, _dbus_glib_async_data_free, G_TYPE_INVALID);
}
static
#ifdef G_HAVE_INLINE
inline
#endif
gboolean
tp_conn_get_protocol (DBusGProxy *proxy, char ** OUT_arg0, GError **error)

{
  return dbus_g_proxy_call (proxy, "GetProtocol", error, G_TYPE_INVALID, G_TYPE_STRING, OUT_arg0, G_TYPE_INVALID);
}

typedef void (*tp_conn_get_protocol_reply) (DBusGProxy *proxy, char * OUT_arg0, GError *error, gpointer userdata);

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

static
#ifdef G_HAVE_INLINE
inline
#endif
DBusGProxyCall*
tp_conn_get_protocol_async (DBusGProxy *proxy, tp_conn_get_protocol_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, "GetProtocol", tp_conn_get_protocol_async_callback, stuff, _dbus_glib_async_data_free, G_TYPE_INVALID);
}
static
#ifdef G_HAVE_INLINE
inline
#endif
gboolean
tp_conn_get_self_handle (DBusGProxy *proxy, guint* OUT_arg0, GError **error)

{
  return dbus_g_proxy_call (proxy, "GetSelfHandle", error, G_TYPE_INVALID, G_TYPE_UINT, OUT_arg0, G_TYPE_INVALID);
}

typedef void (*tp_conn_get_self_handle_reply) (DBusGProxy *proxy, guint OUT_arg0, GError *error, gpointer userdata);

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

static
#ifdef G_HAVE_INLINE
inline
#endif
DBusGProxyCall*
tp_conn_get_self_handle_async (DBusGProxy *proxy, tp_conn_get_self_handle_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, "GetSelfHandle", tp_conn_get_self_handle_async_callback, stuff, _dbus_glib_async_data_free, G_TYPE_INVALID);
}
static
#ifdef G_HAVE_INLINE
inline
#endif
gboolean
tp_conn_get_status (DBusGProxy *proxy, guint* OUT_arg0, GError **error)

{
  return dbus_g_proxy_call (proxy, "GetStatus", error, G_TYPE_INVALID, G_TYPE_UINT, OUT_arg0, G_TYPE_INVALID);
}

typedef void (*tp_conn_get_status_reply) (DBusGProxy *proxy, guint OUT_arg0, GError *error, gpointer userdata);

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

static
#ifdef G_HAVE_INLINE
inline
#endif
DBusGProxyCall*
tp_conn_get_status_async (DBusGProxy *proxy, tp_conn_get_status_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, "GetStatus", tp_conn_get_status_async_callback, stuff, _dbus_glib_async_data_free, G_TYPE_INVALID);
}
static
#ifdef G_HAVE_INLINE
inline
#endif
gboolean
tp_conn_hold_handles (DBusGProxy *proxy, const guint IN_handle_type, const GArray* IN_handles, GError **error)

{
  return dbus_g_proxy_call (proxy, "HoldHandles", error, G_TYPE_UINT, IN_handle_type, dbus_g_type_get_collection ("GArray", G_TYPE_UINT), IN_handles, G_TYPE_INVALID, G_TYPE_INVALID);
}

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

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

static
#ifdef G_HAVE_INLINE
inline
#endif
DBusGProxyCall*
tp_conn_hold_handles_async (DBusGProxy *proxy, const guint IN_handle_type, const GArray* IN_handles, tp_conn_hold_handles_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, "HoldHandles", tp_conn_hold_handles_async_callback, stuff, _dbus_glib_async_data_free, G_TYPE_UINT, IN_handle_type, dbus_g_type_get_collection ("GArray", G_TYPE_UINT), IN_handles, G_TYPE_INVALID);
}
static
#ifdef G_HAVE_INLINE
inline
#endif
gboolean
tp_conn_inspect_handles (DBusGProxy *proxy, const guint IN_handle_type, const GArray* IN_handles, char *** OUT_arg2, GError **error)

{
  return dbus_g_proxy_call (proxy, "InspectHandles", error, G_TYPE_UINT, IN_handle_type, dbus_g_type_get_collection ("GArray", G_TYPE_UINT), IN_handles, G_TYPE_INVALID, G_TYPE_STRV, OUT_arg2, G_TYPE_INVALID);
}

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

static void
tp_conn_inspect_handles_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_STRV, &OUT_arg2, G_TYPE_INVALID);
  (*(tp_conn_inspect_handles_reply)data->cb) (proxy, OUT_arg2, error, data->userdata);
  return;
}

static
#ifdef G_HAVE_INLINE
inline
#endif
DBusGProxyCall*
tp_conn_inspect_handles_async (DBusGProxy *proxy, const guint IN_handle_type, const GArray* IN_handles, tp_conn_inspect_handles_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, "InspectHandles", tp_conn_inspect_handles_async_callback, stuff, _dbus_glib_async_data_free, G_TYPE_UINT, IN_handle_type, dbus_g_type_get_collection ("GArray", G_TYPE_UINT), IN_handles, G_TYPE_INVALID);
}
static
#ifdef G_HAVE_INLINE
inline
#endif
gboolean
tp_conn_list_channels (DBusGProxy *proxy, GPtrArray** OUT_arg0, GError **error)

{
  return dbus_g_proxy_call (proxy, "ListChannels", error, G_TYPE_INVALID, dbus_g_type_get_collection ("GPtrArray", dbus_g_type_get_struct ("GValueArray", DBUS_TYPE_G_OBJECT_PATH, G_TYPE_STRING, G_TYPE_UINT, G_TYPE_UINT, G_TYPE_INVALID)), OUT_arg0, G_TYPE_INVALID);
}

typedef void (*tp_conn_list_channels_reply) (DBusGProxy *proxy, GPtrArray *OUT_arg0, GError *error, gpointer userdata);

static void
tp_conn_list_channels_async_callback (DBusGProxy *proxy, DBusGProxyCall *call, void *user_data)
{
  DBusGAsyncData *data = (DBusGAsyncData*) user_data;
  GError *error = NULL;
  GPtrArray* OUT_arg0;
  dbus_g_proxy_end_call (proxy, call, &error, dbus_g_type_get_collection ("GPtrArray", dbus_g_type_get_struct ("GValueArray", DBUS_TYPE_G_OBJECT_PATH, G_TYPE_STRING, G_TYPE_UINT, G_TYPE_UINT, G_TYPE_INVALID)), &OUT_arg0, G_TYPE_INVALID);
  (*(tp_conn_list_channels_reply)data->cb) (proxy, OUT_arg0, error, data->userdata);
  return;
}

static
#ifdef G_HAVE_INLINE
inline
#endif
DBusGProxyCall*
tp_conn_list_channels_async (DBusGProxy *proxy, tp_conn_list_channels_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, "ListChannels", tp_conn_list_channels_async_callback, stuff, _dbus_glib_async_data_free, G_TYPE_INVALID);
}
static
#ifdef G_HAVE_INLINE
inline
#endif
gboolean
tp_conn_release_handles (DBusGProxy *proxy, const guint IN_handle_type, const GArray* IN_handles, GError **error)

{
  return dbus_g_proxy_call (proxy, "ReleaseHandles", error, G_TYPE_UINT, IN_handle_type, dbus_g_type_get_collection ("GArray", G_TYPE_UINT), IN_handles, G_TYPE_INVALID, G_TYPE_INVALID);
}

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

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

static
#ifdef G_HAVE_INLINE
inline
#endif
DBusGProxyCall*
tp_conn_release_handles_async (DBusGProxy *proxy, const guint IN_handle_type, const GArray* IN_handles, tp_conn_release_handles_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, "ReleaseHandles", tp_conn_release_handles_async_callback, stuff, _dbus_glib_async_data_free, G_TYPE_UINT, IN_handle_type, dbus_g_type_get_collection ("GArray", G_TYPE_UINT), IN_handles, G_TYPE_INVALID);
}
static
#ifdef G_HAVE_INLINE
inline
#endif
gboolean
tp_conn_request_channel (DBusGProxy *proxy, const char * IN_type, const guint IN_handle_type, const guint IN_handle, const gboolean IN_suppress_handler, char** OUT_arg4, GError **error)

{
  return dbus_g_proxy_call (proxy, "RequestChannel", error, G_TYPE_STRING, IN_type, G_TYPE_UINT, IN_handle_type, G_TYPE_UINT, IN_handle, G_TYPE_BOOLEAN, IN_suppress_handler, G_TYPE_INVALID, DBUS_TYPE_G_OBJECT_PATH, OUT_arg4, G_TYPE_INVALID);
}

typedef void (*tp_conn_request_channel_reply) (DBusGProxy *proxy, char *OUT_arg4, GError *error, gpointer userdata);

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

static
#ifdef G_HAVE_INLINE
inline
#endif
DBusGProxyCall*
tp_conn_request_channel_async (DBusGProxy *proxy, const char * IN_type, const guint IN_handle_type, const guint IN_handle, const gboolean IN_suppress_handler, tp_conn_request_channel_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, "RequestChannel", tp_conn_request_channel_async_callback, stuff, _dbus_glib_async_data_free, G_TYPE_STRING, IN_type, G_TYPE_UINT, IN_handle_type, G_TYPE_UINT, IN_handle, G_TYPE_BOOLEAN, IN_suppress_handler, G_TYPE_INVALID);
}
static
#ifdef G_HAVE_INLINE
inline
#endif
gboolean
tp_conn_request_handles (DBusGProxy *proxy, const guint IN_handle_type, const char ** IN_names, GArray** OUT_arg2, GError **error)

{
  return dbus_g_proxy_call (proxy, "RequestHandles", error, G_TYPE_UINT, IN_handle_type, G_TYPE_STRV, IN_names, G_TYPE_INVALID, dbus_g_type_get_collection ("GArray", G_TYPE_UINT), OUT_arg2, G_TYPE_INVALID);
}

typedef void (*tp_conn_request_handles_reply) (DBusGProxy *proxy, GArray *OUT_arg2, GError *error, gpointer userdata);

static void
tp_conn_request_handles_async_callback (DBusGProxy *proxy, DBusGProxyCall *call, void *user_data)
{
  DBusGAsyncData *data = (DBusGAsyncData*) user_data;
  GError *error = NULL;
  GArray* OUT_arg2;
  dbus_g_proxy_end_call (proxy, call, &error, dbus_g_type_get_collection ("GArray", G_TYPE_UINT), &OUT_arg2, G_TYPE_INVALID);
  (*(tp_conn_request_handles_reply)data->cb) (proxy, OUT_arg2, error, data->userdata);
  return;
}

static
#ifdef G_HAVE_INLINE
inline
#endif
DBusGProxyCall*
tp_conn_request_handles_async (DBusGProxy *proxy, const guint IN_handle_type, const char ** IN_names, tp_conn_request_handles_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, "RequestHandles", tp_conn_request_handles_async_callback, stuff, _dbus_glib_async_data_free, G_TYPE_UINT, IN_handle_type, G_TYPE_STRV, IN_names, G_TYPE_INVALID);
}
#endif /* defined DBUS_GLIB_CLIENT_WRAPPERS_org_freedesktop_Telepathy_Connection */

G_END_DECLS
