/*
 * Generated by gdbus-codegen 2.48.1. DO NOT EDIT.
 *
 * The license of this code is the same as for the source it was derived from.
 */

#ifndef __LIB_OFONO_MODEM_H__
#define __LIB_OFONO_MODEM_H__

#include <gio/gio.h>

G_BEGIN_DECLS


/* ------------------------------------------------------------------------ */
/* Declarations for org.freedesktop.DBus.Introspectable */

#define OFONO_MODEM_TYPE_ORG_FREEDESKTOP_DBUS_INTROSPECTABLE (ofono_modem_org_freedesktop_dbus_introspectable_get_type ())
#define OFONO_MODEM_ORG_FREEDESKTOP_DBUS_INTROSPECTABLE(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), OFONO_MODEM_TYPE_ORG_FREEDESKTOP_DBUS_INTROSPECTABLE, OFONOMODEMOrgFreedesktopDBusIntrospectable))
#define OFONO_MODEM_IS_ORG_FREEDESKTOP_DBUS_INTROSPECTABLE(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), OFONO_MODEM_TYPE_ORG_FREEDESKTOP_DBUS_INTROSPECTABLE))
#define OFONO_MODEM_ORG_FREEDESKTOP_DBUS_INTROSPECTABLE_GET_IFACE(o) (G_TYPE_INSTANCE_GET_INTERFACE ((o), OFONO_MODEM_TYPE_ORG_FREEDESKTOP_DBUS_INTROSPECTABLE, OFONOMODEMOrgFreedesktopDBusIntrospectableIface))

struct _OFONOMODEMOrgFreedesktopDBusIntrospectable;
typedef struct _OFONOMODEMOrgFreedesktopDBusIntrospectable OFONOMODEMOrgFreedesktopDBusIntrospectable;
typedef struct _OFONOMODEMOrgFreedesktopDBusIntrospectableIface OFONOMODEMOrgFreedesktopDBusIntrospectableIface;

struct _OFONOMODEMOrgFreedesktopDBusIntrospectableIface
{
  GTypeInterface parent_iface;

  gboolean (*handle_introspect) (
    OFONOMODEMOrgFreedesktopDBusIntrospectable *object,
    GDBusMethodInvocation *invocation);

};

GType ofono_modem_org_freedesktop_dbus_introspectable_get_type (void) G_GNUC_CONST;

GDBusInterfaceInfo *ofono_modem_org_freedesktop_dbus_introspectable_interface_info (void);
guint ofono_modem_org_freedesktop_dbus_introspectable_override_properties (GObjectClass *klass, guint property_id_begin);


/* D-Bus method call completion functions: */
void ofono_modem_org_freedesktop_dbus_introspectable_complete_introspect (
    OFONOMODEMOrgFreedesktopDBusIntrospectable *object,
    GDBusMethodInvocation *invocation,
    const gchar *xml);



/* D-Bus method calls: */
void ofono_modem_org_freedesktop_dbus_introspectable_call_introspect (
    OFONOMODEMOrgFreedesktopDBusIntrospectable *proxy,
    GCancellable *cancellable,
    GAsyncReadyCallback callback,
    gpointer user_data);

gboolean ofono_modem_org_freedesktop_dbus_introspectable_call_introspect_finish (
    OFONOMODEMOrgFreedesktopDBusIntrospectable *proxy,
    gchar **out_xml,
    GAsyncResult *res,
    GError **error);

gboolean ofono_modem_org_freedesktop_dbus_introspectable_call_introspect_sync (
    OFONOMODEMOrgFreedesktopDBusIntrospectable *proxy,
    gchar **out_xml,
    GCancellable *cancellable,
    GError **error);



/* ---- */

#define OFONO_MODEM_TYPE_ORG_FREEDESKTOP_DBUS_INTROSPECTABLE_PROXY (ofono_modem_org_freedesktop_dbus_introspectable_proxy_get_type ())
#define OFONO_MODEM_ORG_FREEDESKTOP_DBUS_INTROSPECTABLE_PROXY(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), OFONO_MODEM_TYPE_ORG_FREEDESKTOP_DBUS_INTROSPECTABLE_PROXY, OFONOMODEMOrgFreedesktopDBusIntrospectableProxy))
#define OFONO_MODEM_ORG_FREEDESKTOP_DBUS_INTROSPECTABLE_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), OFONO_MODEM_TYPE_ORG_FREEDESKTOP_DBUS_INTROSPECTABLE_PROXY, OFONOMODEMOrgFreedesktopDBusIntrospectableProxyClass))
#define OFONO_MODEM_ORG_FREEDESKTOP_DBUS_INTROSPECTABLE_PROXY_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), OFONO_MODEM_TYPE_ORG_FREEDESKTOP_DBUS_INTROSPECTABLE_PROXY, OFONOMODEMOrgFreedesktopDBusIntrospectableProxyClass))
#define OFONO_MODEM_IS_ORG_FREEDESKTOP_DBUS_INTROSPECTABLE_PROXY(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), OFONO_MODEM_TYPE_ORG_FREEDESKTOP_DBUS_INTROSPECTABLE_PROXY))
#define OFONO_MODEM_IS_ORG_FREEDESKTOP_DBUS_INTROSPECTABLE_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), OFONO_MODEM_TYPE_ORG_FREEDESKTOP_DBUS_INTROSPECTABLE_PROXY))

typedef struct _OFONOMODEMOrgFreedesktopDBusIntrospectableProxy OFONOMODEMOrgFreedesktopDBusIntrospectableProxy;
typedef struct _OFONOMODEMOrgFreedesktopDBusIntrospectableProxyClass OFONOMODEMOrgFreedesktopDBusIntrospectableProxyClass;
typedef struct _OFONOMODEMOrgFreedesktopDBusIntrospectableProxyPrivate OFONOMODEMOrgFreedesktopDBusIntrospectableProxyPrivate;

struct _OFONOMODEMOrgFreedesktopDBusIntrospectableProxy
{
  /*< private >*/
  GDBusProxy parent_instance;
  OFONOMODEMOrgFreedesktopDBusIntrospectableProxyPrivate *priv;
};

struct _OFONOMODEMOrgFreedesktopDBusIntrospectableProxyClass
{
  GDBusProxyClass parent_class;
};

GType ofono_modem_org_freedesktop_dbus_introspectable_proxy_get_type (void) G_GNUC_CONST;

#if GLIB_CHECK_VERSION(2, 44, 0)
G_DEFINE_AUTOPTR_CLEANUP_FUNC (OFONOMODEMOrgFreedesktopDBusIntrospectableProxy, g_object_unref)
#endif

void ofono_modem_org_freedesktop_dbus_introspectable_proxy_new (
    GDBusConnection     *connection,
    GDBusProxyFlags      flags,
    const gchar         *name,
    const gchar         *object_path,
    GCancellable        *cancellable,
    GAsyncReadyCallback  callback,
    gpointer             user_data);
OFONOMODEMOrgFreedesktopDBusIntrospectable *ofono_modem_org_freedesktop_dbus_introspectable_proxy_new_finish (
    GAsyncResult        *res,
    GError             **error);
OFONOMODEMOrgFreedesktopDBusIntrospectable *ofono_modem_org_freedesktop_dbus_introspectable_proxy_new_sync (
    GDBusConnection     *connection,
    GDBusProxyFlags      flags,
    const gchar         *name,
    const gchar         *object_path,
    GCancellable        *cancellable,
    GError             **error);

void ofono_modem_org_freedesktop_dbus_introspectable_proxy_new_for_bus (
    GBusType             bus_type,
    GDBusProxyFlags      flags,
    const gchar         *name,
    const gchar         *object_path,
    GCancellable        *cancellable,
    GAsyncReadyCallback  callback,
    gpointer             user_data);
OFONOMODEMOrgFreedesktopDBusIntrospectable *ofono_modem_org_freedesktop_dbus_introspectable_proxy_new_for_bus_finish (
    GAsyncResult        *res,
    GError             **error);
OFONOMODEMOrgFreedesktopDBusIntrospectable *ofono_modem_org_freedesktop_dbus_introspectable_proxy_new_for_bus_sync (
    GBusType             bus_type,
    GDBusProxyFlags      flags,
    const gchar         *name,
    const gchar         *object_path,
    GCancellable        *cancellable,
    GError             **error);


/* ---- */

#define OFONO_MODEM_TYPE_ORG_FREEDESKTOP_DBUS_INTROSPECTABLE_SKELETON (ofono_modem_org_freedesktop_dbus_introspectable_skeleton_get_type ())
#define OFONO_MODEM_ORG_FREEDESKTOP_DBUS_INTROSPECTABLE_SKELETON(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), OFONO_MODEM_TYPE_ORG_FREEDESKTOP_DBUS_INTROSPECTABLE_SKELETON, OFONOMODEMOrgFreedesktopDBusIntrospectableSkeleton))
#define OFONO_MODEM_ORG_FREEDESKTOP_DBUS_INTROSPECTABLE_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), OFONO_MODEM_TYPE_ORG_FREEDESKTOP_DBUS_INTROSPECTABLE_SKELETON, OFONOMODEMOrgFreedesktopDBusIntrospectableSkeletonClass))
#define OFONO_MODEM_ORG_FREEDESKTOP_DBUS_INTROSPECTABLE_SKELETON_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), OFONO_MODEM_TYPE_ORG_FREEDESKTOP_DBUS_INTROSPECTABLE_SKELETON, OFONOMODEMOrgFreedesktopDBusIntrospectableSkeletonClass))
#define OFONO_MODEM_IS_ORG_FREEDESKTOP_DBUS_INTROSPECTABLE_SKELETON(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), OFONO_MODEM_TYPE_ORG_FREEDESKTOP_DBUS_INTROSPECTABLE_SKELETON))
#define OFONO_MODEM_IS_ORG_FREEDESKTOP_DBUS_INTROSPECTABLE_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), OFONO_MODEM_TYPE_ORG_FREEDESKTOP_DBUS_INTROSPECTABLE_SKELETON))

typedef struct _OFONOMODEMOrgFreedesktopDBusIntrospectableSkeleton OFONOMODEMOrgFreedesktopDBusIntrospectableSkeleton;
typedef struct _OFONOMODEMOrgFreedesktopDBusIntrospectableSkeletonClass OFONOMODEMOrgFreedesktopDBusIntrospectableSkeletonClass;
typedef struct _OFONOMODEMOrgFreedesktopDBusIntrospectableSkeletonPrivate OFONOMODEMOrgFreedesktopDBusIntrospectableSkeletonPrivate;

struct _OFONOMODEMOrgFreedesktopDBusIntrospectableSkeleton
{
  /*< private >*/
  GDBusInterfaceSkeleton parent_instance;
  OFONOMODEMOrgFreedesktopDBusIntrospectableSkeletonPrivate *priv;
};

struct _OFONOMODEMOrgFreedesktopDBusIntrospectableSkeletonClass
{
  GDBusInterfaceSkeletonClass parent_class;
};

GType ofono_modem_org_freedesktop_dbus_introspectable_skeleton_get_type (void) G_GNUC_CONST;

#if GLIB_CHECK_VERSION(2, 44, 0)
G_DEFINE_AUTOPTR_CLEANUP_FUNC (OFONOMODEMOrgFreedesktopDBusIntrospectableSkeleton, g_object_unref)
#endif

OFONOMODEMOrgFreedesktopDBusIntrospectable *ofono_modem_org_freedesktop_dbus_introspectable_skeleton_new (void);


/* ------------------------------------------------------------------------ */
/* Declarations for org.ofono.Modem */

#define OFONO_MODEM_TYPE_ORG_OFONO_MODEM (ofono_modem_org_ofono_modem_get_type ())
#define OFONO_MODEM_ORG_OFONO_MODEM(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), OFONO_MODEM_TYPE_ORG_OFONO_MODEM, OFONOMODEMOrgOfonoModem))
#define OFONO_MODEM_IS_ORG_OFONO_MODEM(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), OFONO_MODEM_TYPE_ORG_OFONO_MODEM))
#define OFONO_MODEM_ORG_OFONO_MODEM_GET_IFACE(o) (G_TYPE_INSTANCE_GET_INTERFACE ((o), OFONO_MODEM_TYPE_ORG_OFONO_MODEM, OFONOMODEMOrgOfonoModemIface))

struct _OFONOMODEMOrgOfonoModem;
typedef struct _OFONOMODEMOrgOfonoModem OFONOMODEMOrgOfonoModem;
typedef struct _OFONOMODEMOrgOfonoModemIface OFONOMODEMOrgOfonoModemIface;

struct _OFONOMODEMOrgOfonoModemIface
{
  GTypeInterface parent_iface;


  gboolean (*handle_get_properties) (
    OFONOMODEMOrgOfonoModem *object,
    GDBusMethodInvocation *invocation);

  gboolean (*handle_set_property) (
    OFONOMODEMOrgOfonoModem *object,
    GDBusMethodInvocation *invocation,
    const gchar *arg_property,
    GVariant *arg_value);

  void (*property_changed) (
    OFONOMODEMOrgOfonoModem *object,
    const gchar *arg_name,
    GVariant *arg_value);

};

GType ofono_modem_org_ofono_modem_get_type (void) G_GNUC_CONST;

GDBusInterfaceInfo *ofono_modem_org_ofono_modem_interface_info (void);
guint ofono_modem_org_ofono_modem_override_properties (GObjectClass *klass, guint property_id_begin);


/* D-Bus method call completion functions: */
void ofono_modem_org_ofono_modem_complete_get_properties (
    OFONOMODEMOrgOfonoModem *object,
    GDBusMethodInvocation *invocation,
    GVariant *properties);

void ofono_modem_org_ofono_modem_complete_set_property (
    OFONOMODEMOrgOfonoModem *object,
    GDBusMethodInvocation *invocation);



/* D-Bus signal emissions functions: */
void ofono_modem_org_ofono_modem_emit_property_changed (
    OFONOMODEMOrgOfonoModem *object,
    const gchar *arg_name,
    GVariant *arg_value);



/* D-Bus method calls: */
void ofono_modem_org_ofono_modem_call_get_properties (
    OFONOMODEMOrgOfonoModem *proxy,
    GCancellable *cancellable,
    GAsyncReadyCallback callback,
    gpointer user_data);

gboolean ofono_modem_org_ofono_modem_call_get_properties_finish (
    OFONOMODEMOrgOfonoModem *proxy,
    GVariant **out_properties,
    GAsyncResult *res,
    GError **error);

gboolean ofono_modem_org_ofono_modem_call_get_properties_sync (
    OFONOMODEMOrgOfonoModem *proxy,
    GVariant **out_properties,
    GCancellable *cancellable,
    GError **error);

void ofono_modem_org_ofono_modem_call_set_property (
    OFONOMODEMOrgOfonoModem *proxy,
    const gchar *arg_property,
    GVariant *arg_value,
    GCancellable *cancellable,
    GAsyncReadyCallback callback,
    gpointer user_data);

gboolean ofono_modem_org_ofono_modem_call_set_property_finish (
    OFONOMODEMOrgOfonoModem *proxy,
    GAsyncResult *res,
    GError **error);

gboolean ofono_modem_org_ofono_modem_call_set_property_sync (
    OFONOMODEMOrgOfonoModem *proxy,
    const gchar *arg_property,
    GVariant *arg_value,
    GCancellable *cancellable,
    GError **error);



/* ---- */

#define OFONO_MODEM_TYPE_ORG_OFONO_MODEM_PROXY (ofono_modem_org_ofono_modem_proxy_get_type ())
#define OFONO_MODEM_ORG_OFONO_MODEM_PROXY(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), OFONO_MODEM_TYPE_ORG_OFONO_MODEM_PROXY, OFONOMODEMOrgOfonoModemProxy))
#define OFONO_MODEM_ORG_OFONO_MODEM_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), OFONO_MODEM_TYPE_ORG_OFONO_MODEM_PROXY, OFONOMODEMOrgOfonoModemProxyClass))
#define OFONO_MODEM_ORG_OFONO_MODEM_PROXY_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), OFONO_MODEM_TYPE_ORG_OFONO_MODEM_PROXY, OFONOMODEMOrgOfonoModemProxyClass))
#define OFONO_MODEM_IS_ORG_OFONO_MODEM_PROXY(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), OFONO_MODEM_TYPE_ORG_OFONO_MODEM_PROXY))
#define OFONO_MODEM_IS_ORG_OFONO_MODEM_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), OFONO_MODEM_TYPE_ORG_OFONO_MODEM_PROXY))

typedef struct _OFONOMODEMOrgOfonoModemProxy OFONOMODEMOrgOfonoModemProxy;
typedef struct _OFONOMODEMOrgOfonoModemProxyClass OFONOMODEMOrgOfonoModemProxyClass;
typedef struct _OFONOMODEMOrgOfonoModemProxyPrivate OFONOMODEMOrgOfonoModemProxyPrivate;

struct _OFONOMODEMOrgOfonoModemProxy
{
  /*< private >*/
  GDBusProxy parent_instance;
  OFONOMODEMOrgOfonoModemProxyPrivate *priv;
};

struct _OFONOMODEMOrgOfonoModemProxyClass
{
  GDBusProxyClass parent_class;
};

GType ofono_modem_org_ofono_modem_proxy_get_type (void) G_GNUC_CONST;

#if GLIB_CHECK_VERSION(2, 44, 0)
G_DEFINE_AUTOPTR_CLEANUP_FUNC (OFONOMODEMOrgOfonoModemProxy, g_object_unref)
#endif

void ofono_modem_org_ofono_modem_proxy_new (
    GDBusConnection     *connection,
    GDBusProxyFlags      flags,
    const gchar         *name,
    const gchar         *object_path,
    GCancellable        *cancellable,
    GAsyncReadyCallback  callback,
    gpointer             user_data);
OFONOMODEMOrgOfonoModem *ofono_modem_org_ofono_modem_proxy_new_finish (
    GAsyncResult        *res,
    GError             **error);
OFONOMODEMOrgOfonoModem *ofono_modem_org_ofono_modem_proxy_new_sync (
    GDBusConnection     *connection,
    GDBusProxyFlags      flags,
    const gchar         *name,
    const gchar         *object_path,
    GCancellable        *cancellable,
    GError             **error);

void ofono_modem_org_ofono_modem_proxy_new_for_bus (
    GBusType             bus_type,
    GDBusProxyFlags      flags,
    const gchar         *name,
    const gchar         *object_path,
    GCancellable        *cancellable,
    GAsyncReadyCallback  callback,
    gpointer             user_data);
OFONOMODEMOrgOfonoModem *ofono_modem_org_ofono_modem_proxy_new_for_bus_finish (
    GAsyncResult        *res,
    GError             **error);
OFONOMODEMOrgOfonoModem *ofono_modem_org_ofono_modem_proxy_new_for_bus_sync (
    GBusType             bus_type,
    GDBusProxyFlags      flags,
    const gchar         *name,
    const gchar         *object_path,
    GCancellable        *cancellable,
    GError             **error);


/* ---- */

#define OFONO_MODEM_TYPE_ORG_OFONO_MODEM_SKELETON (ofono_modem_org_ofono_modem_skeleton_get_type ())
#define OFONO_MODEM_ORG_OFONO_MODEM_SKELETON(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), OFONO_MODEM_TYPE_ORG_OFONO_MODEM_SKELETON, OFONOMODEMOrgOfonoModemSkeleton))
#define OFONO_MODEM_ORG_OFONO_MODEM_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), OFONO_MODEM_TYPE_ORG_OFONO_MODEM_SKELETON, OFONOMODEMOrgOfonoModemSkeletonClass))
#define OFONO_MODEM_ORG_OFONO_MODEM_SKELETON_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), OFONO_MODEM_TYPE_ORG_OFONO_MODEM_SKELETON, OFONOMODEMOrgOfonoModemSkeletonClass))
#define OFONO_MODEM_IS_ORG_OFONO_MODEM_SKELETON(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), OFONO_MODEM_TYPE_ORG_OFONO_MODEM_SKELETON))
#define OFONO_MODEM_IS_ORG_OFONO_MODEM_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), OFONO_MODEM_TYPE_ORG_OFONO_MODEM_SKELETON))

typedef struct _OFONOMODEMOrgOfonoModemSkeleton OFONOMODEMOrgOfonoModemSkeleton;
typedef struct _OFONOMODEMOrgOfonoModemSkeletonClass OFONOMODEMOrgOfonoModemSkeletonClass;
typedef struct _OFONOMODEMOrgOfonoModemSkeletonPrivate OFONOMODEMOrgOfonoModemSkeletonPrivate;

struct _OFONOMODEMOrgOfonoModemSkeleton
{
  /*< private >*/
  GDBusInterfaceSkeleton parent_instance;
  OFONOMODEMOrgOfonoModemSkeletonPrivate *priv;
};

struct _OFONOMODEMOrgOfonoModemSkeletonClass
{
  GDBusInterfaceSkeletonClass parent_class;
};

GType ofono_modem_org_ofono_modem_skeleton_get_type (void) G_GNUC_CONST;

#if GLIB_CHECK_VERSION(2, 44, 0)
G_DEFINE_AUTOPTR_CLEANUP_FUNC (OFONOMODEMOrgOfonoModemSkeleton, g_object_unref)
#endif

OFONOMODEMOrgOfonoModem *ofono_modem_org_ofono_modem_skeleton_new (void);


/* ------------------------------------------------------------------------ */
/* Declarations for org.ofono.NetworkTime */

#define OFONO_MODEM_TYPE_ORG_OFONO_NETWORK_TIME (ofono_modem_org_ofono_network_time_get_type ())
#define OFONO_MODEM_ORG_OFONO_NETWORK_TIME(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), OFONO_MODEM_TYPE_ORG_OFONO_NETWORK_TIME, OFONOMODEMOrgOfonoNetworkTime))
#define OFONO_MODEM_IS_ORG_OFONO_NETWORK_TIME(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), OFONO_MODEM_TYPE_ORG_OFONO_NETWORK_TIME))
#define OFONO_MODEM_ORG_OFONO_NETWORK_TIME_GET_IFACE(o) (G_TYPE_INSTANCE_GET_INTERFACE ((o), OFONO_MODEM_TYPE_ORG_OFONO_NETWORK_TIME, OFONOMODEMOrgOfonoNetworkTimeIface))

struct _OFONOMODEMOrgOfonoNetworkTime;
typedef struct _OFONOMODEMOrgOfonoNetworkTime OFONOMODEMOrgOfonoNetworkTime;
typedef struct _OFONOMODEMOrgOfonoNetworkTimeIface OFONOMODEMOrgOfonoNetworkTimeIface;

struct _OFONOMODEMOrgOfonoNetworkTimeIface
{
  GTypeInterface parent_iface;


  gboolean (*handle_get_network_time) (
    OFONOMODEMOrgOfonoNetworkTime *object,
    GDBusMethodInvocation *invocation);

  void (*network_time_changed) (
    OFONOMODEMOrgOfonoNetworkTime *object,
    GVariant *arg_time);

};

GType ofono_modem_org_ofono_network_time_get_type (void) G_GNUC_CONST;

GDBusInterfaceInfo *ofono_modem_org_ofono_network_time_interface_info (void);
guint ofono_modem_org_ofono_network_time_override_properties (GObjectClass *klass, guint property_id_begin);


/* D-Bus method call completion functions: */
void ofono_modem_org_ofono_network_time_complete_get_network_time (
    OFONOMODEMOrgOfonoNetworkTime *object,
    GDBusMethodInvocation *invocation,
    GVariant *time);



/* D-Bus signal emissions functions: */
void ofono_modem_org_ofono_network_time_emit_network_time_changed (
    OFONOMODEMOrgOfonoNetworkTime *object,
    GVariant *arg_time);



/* D-Bus method calls: */
void ofono_modem_org_ofono_network_time_call_get_network_time (
    OFONOMODEMOrgOfonoNetworkTime *proxy,
    GCancellable *cancellable,
    GAsyncReadyCallback callback,
    gpointer user_data);

gboolean ofono_modem_org_ofono_network_time_call_get_network_time_finish (
    OFONOMODEMOrgOfonoNetworkTime *proxy,
    GVariant **out_time,
    GAsyncResult *res,
    GError **error);

gboolean ofono_modem_org_ofono_network_time_call_get_network_time_sync (
    OFONOMODEMOrgOfonoNetworkTime *proxy,
    GVariant **out_time,
    GCancellable *cancellable,
    GError **error);



/* ---- */

#define OFONO_MODEM_TYPE_ORG_OFONO_NETWORK_TIME_PROXY (ofono_modem_org_ofono_network_time_proxy_get_type ())
#define OFONO_MODEM_ORG_OFONO_NETWORK_TIME_PROXY(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), OFONO_MODEM_TYPE_ORG_OFONO_NETWORK_TIME_PROXY, OFONOMODEMOrgOfonoNetworkTimeProxy))
#define OFONO_MODEM_ORG_OFONO_NETWORK_TIME_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), OFONO_MODEM_TYPE_ORG_OFONO_NETWORK_TIME_PROXY, OFONOMODEMOrgOfonoNetworkTimeProxyClass))
#define OFONO_MODEM_ORG_OFONO_NETWORK_TIME_PROXY_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), OFONO_MODEM_TYPE_ORG_OFONO_NETWORK_TIME_PROXY, OFONOMODEMOrgOfonoNetworkTimeProxyClass))
#define OFONO_MODEM_IS_ORG_OFONO_NETWORK_TIME_PROXY(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), OFONO_MODEM_TYPE_ORG_OFONO_NETWORK_TIME_PROXY))
#define OFONO_MODEM_IS_ORG_OFONO_NETWORK_TIME_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), OFONO_MODEM_TYPE_ORG_OFONO_NETWORK_TIME_PROXY))

typedef struct _OFONOMODEMOrgOfonoNetworkTimeProxy OFONOMODEMOrgOfonoNetworkTimeProxy;
typedef struct _OFONOMODEMOrgOfonoNetworkTimeProxyClass OFONOMODEMOrgOfonoNetworkTimeProxyClass;
typedef struct _OFONOMODEMOrgOfonoNetworkTimeProxyPrivate OFONOMODEMOrgOfonoNetworkTimeProxyPrivate;

struct _OFONOMODEMOrgOfonoNetworkTimeProxy
{
  /*< private >*/
  GDBusProxy parent_instance;
  OFONOMODEMOrgOfonoNetworkTimeProxyPrivate *priv;
};

struct _OFONOMODEMOrgOfonoNetworkTimeProxyClass
{
  GDBusProxyClass parent_class;
};

GType ofono_modem_org_ofono_network_time_proxy_get_type (void) G_GNUC_CONST;

#if GLIB_CHECK_VERSION(2, 44, 0)
G_DEFINE_AUTOPTR_CLEANUP_FUNC (OFONOMODEMOrgOfonoNetworkTimeProxy, g_object_unref)
#endif

void ofono_modem_org_ofono_network_time_proxy_new (
    GDBusConnection     *connection,
    GDBusProxyFlags      flags,
    const gchar         *name,
    const gchar         *object_path,
    GCancellable        *cancellable,
    GAsyncReadyCallback  callback,
    gpointer             user_data);
OFONOMODEMOrgOfonoNetworkTime *ofono_modem_org_ofono_network_time_proxy_new_finish (
    GAsyncResult        *res,
    GError             **error);
OFONOMODEMOrgOfonoNetworkTime *ofono_modem_org_ofono_network_time_proxy_new_sync (
    GDBusConnection     *connection,
    GDBusProxyFlags      flags,
    const gchar         *name,
    const gchar         *object_path,
    GCancellable        *cancellable,
    GError             **error);

void ofono_modem_org_ofono_network_time_proxy_new_for_bus (
    GBusType             bus_type,
    GDBusProxyFlags      flags,
    const gchar         *name,
    const gchar         *object_path,
    GCancellable        *cancellable,
    GAsyncReadyCallback  callback,
    gpointer             user_data);
OFONOMODEMOrgOfonoNetworkTime *ofono_modem_org_ofono_network_time_proxy_new_for_bus_finish (
    GAsyncResult        *res,
    GError             **error);
OFONOMODEMOrgOfonoNetworkTime *ofono_modem_org_ofono_network_time_proxy_new_for_bus_sync (
    GBusType             bus_type,
    GDBusProxyFlags      flags,
    const gchar         *name,
    const gchar         *object_path,
    GCancellable        *cancellable,
    GError             **error);


/* ---- */

#define OFONO_MODEM_TYPE_ORG_OFONO_NETWORK_TIME_SKELETON (ofono_modem_org_ofono_network_time_skeleton_get_type ())
#define OFONO_MODEM_ORG_OFONO_NETWORK_TIME_SKELETON(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), OFONO_MODEM_TYPE_ORG_OFONO_NETWORK_TIME_SKELETON, OFONOMODEMOrgOfonoNetworkTimeSkeleton))
#define OFONO_MODEM_ORG_OFONO_NETWORK_TIME_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), OFONO_MODEM_TYPE_ORG_OFONO_NETWORK_TIME_SKELETON, OFONOMODEMOrgOfonoNetworkTimeSkeletonClass))
#define OFONO_MODEM_ORG_OFONO_NETWORK_TIME_SKELETON_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), OFONO_MODEM_TYPE_ORG_OFONO_NETWORK_TIME_SKELETON, OFONOMODEMOrgOfonoNetworkTimeSkeletonClass))
#define OFONO_MODEM_IS_ORG_OFONO_NETWORK_TIME_SKELETON(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), OFONO_MODEM_TYPE_ORG_OFONO_NETWORK_TIME_SKELETON))
#define OFONO_MODEM_IS_ORG_OFONO_NETWORK_TIME_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), OFONO_MODEM_TYPE_ORG_OFONO_NETWORK_TIME_SKELETON))

typedef struct _OFONOMODEMOrgOfonoNetworkTimeSkeleton OFONOMODEMOrgOfonoNetworkTimeSkeleton;
typedef struct _OFONOMODEMOrgOfonoNetworkTimeSkeletonClass OFONOMODEMOrgOfonoNetworkTimeSkeletonClass;
typedef struct _OFONOMODEMOrgOfonoNetworkTimeSkeletonPrivate OFONOMODEMOrgOfonoNetworkTimeSkeletonPrivate;

struct _OFONOMODEMOrgOfonoNetworkTimeSkeleton
{
  /*< private >*/
  GDBusInterfaceSkeleton parent_instance;
  OFONOMODEMOrgOfonoNetworkTimeSkeletonPrivate *priv;
};

struct _OFONOMODEMOrgOfonoNetworkTimeSkeletonClass
{
  GDBusInterfaceSkeletonClass parent_class;
};

GType ofono_modem_org_ofono_network_time_skeleton_get_type (void) G_GNUC_CONST;

#if GLIB_CHECK_VERSION(2, 44, 0)
G_DEFINE_AUTOPTR_CLEANUP_FUNC (OFONOMODEMOrgOfonoNetworkTimeSkeleton, g_object_unref)
#endif

OFONOMODEMOrgOfonoNetworkTime *ofono_modem_org_ofono_network_time_skeleton_new (void);


/* ------------------------------------------------------------------------ */
/* Declarations for org.ofono.NetworkRegistration */

#define OFONO_MODEM_TYPE_ORG_OFONO_NETWORK_REGISTRATION (ofono_modem_org_ofono_network_registration_get_type ())
#define OFONO_MODEM_ORG_OFONO_NETWORK_REGISTRATION(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), OFONO_MODEM_TYPE_ORG_OFONO_NETWORK_REGISTRATION, OFONOMODEMOrgOfonoNetworkRegistration))
#define OFONO_MODEM_IS_ORG_OFONO_NETWORK_REGISTRATION(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), OFONO_MODEM_TYPE_ORG_OFONO_NETWORK_REGISTRATION))
#define OFONO_MODEM_ORG_OFONO_NETWORK_REGISTRATION_GET_IFACE(o) (G_TYPE_INSTANCE_GET_INTERFACE ((o), OFONO_MODEM_TYPE_ORG_OFONO_NETWORK_REGISTRATION, OFONOMODEMOrgOfonoNetworkRegistrationIface))

struct _OFONOMODEMOrgOfonoNetworkRegistration;
typedef struct _OFONOMODEMOrgOfonoNetworkRegistration OFONOMODEMOrgOfonoNetworkRegistration;
typedef struct _OFONOMODEMOrgOfonoNetworkRegistrationIface OFONOMODEMOrgOfonoNetworkRegistrationIface;

struct _OFONOMODEMOrgOfonoNetworkRegistrationIface
{
  GTypeInterface parent_iface;


  gboolean (*handle_get_operators) (
    OFONOMODEMOrgOfonoNetworkRegistration *object,
    GDBusMethodInvocation *invocation);

  gboolean (*handle_get_properties) (
    OFONOMODEMOrgOfonoNetworkRegistration *object,
    GDBusMethodInvocation *invocation);

  gboolean (*handle_register) (
    OFONOMODEMOrgOfonoNetworkRegistration *object,
    GDBusMethodInvocation *invocation);

  gboolean (*handle_scan) (
    OFONOMODEMOrgOfonoNetworkRegistration *object,
    GDBusMethodInvocation *invocation);

  void (*property_changed) (
    OFONOMODEMOrgOfonoNetworkRegistration *object,
    const gchar *arg_name,
    GVariant *arg_value);

};

GType ofono_modem_org_ofono_network_registration_get_type (void) G_GNUC_CONST;

GDBusInterfaceInfo *ofono_modem_org_ofono_network_registration_interface_info (void);
guint ofono_modem_org_ofono_network_registration_override_properties (GObjectClass *klass, guint property_id_begin);


/* D-Bus method call completion functions: */
void ofono_modem_org_ofono_network_registration_complete_get_properties (
    OFONOMODEMOrgOfonoNetworkRegistration *object,
    GDBusMethodInvocation *invocation,
    GVariant *properties);

void ofono_modem_org_ofono_network_registration_complete_register (
    OFONOMODEMOrgOfonoNetworkRegistration *object,
    GDBusMethodInvocation *invocation);

void ofono_modem_org_ofono_network_registration_complete_get_operators (
    OFONOMODEMOrgOfonoNetworkRegistration *object,
    GDBusMethodInvocation *invocation,
    GVariant *operators_with_properties);

void ofono_modem_org_ofono_network_registration_complete_scan (
    OFONOMODEMOrgOfonoNetworkRegistration *object,
    GDBusMethodInvocation *invocation,
    GVariant *operators_with_properties);



/* D-Bus signal emissions functions: */
void ofono_modem_org_ofono_network_registration_emit_property_changed (
    OFONOMODEMOrgOfonoNetworkRegistration *object,
    const gchar *arg_name,
    GVariant *arg_value);



/* D-Bus method calls: */
void ofono_modem_org_ofono_network_registration_call_get_properties (
    OFONOMODEMOrgOfonoNetworkRegistration *proxy,
    GCancellable *cancellable,
    GAsyncReadyCallback callback,
    gpointer user_data);

gboolean ofono_modem_org_ofono_network_registration_call_get_properties_finish (
    OFONOMODEMOrgOfonoNetworkRegistration *proxy,
    GVariant **out_properties,
    GAsyncResult *res,
    GError **error);

gboolean ofono_modem_org_ofono_network_registration_call_get_properties_sync (
    OFONOMODEMOrgOfonoNetworkRegistration *proxy,
    GVariant **out_properties,
    GCancellable *cancellable,
    GError **error);

void ofono_modem_org_ofono_network_registration_call_register (
    OFONOMODEMOrgOfonoNetworkRegistration *proxy,
    GCancellable *cancellable,
    GAsyncReadyCallback callback,
    gpointer user_data);

gboolean ofono_modem_org_ofono_network_registration_call_register_finish (
    OFONOMODEMOrgOfonoNetworkRegistration *proxy,
    GAsyncResult *res,
    GError **error);

gboolean ofono_modem_org_ofono_network_registration_call_register_sync (
    OFONOMODEMOrgOfonoNetworkRegistration *proxy,
    GCancellable *cancellable,
    GError **error);

void ofono_modem_org_ofono_network_registration_call_get_operators (
    OFONOMODEMOrgOfonoNetworkRegistration *proxy,
    GCancellable *cancellable,
    GAsyncReadyCallback callback,
    gpointer user_data);

gboolean ofono_modem_org_ofono_network_registration_call_get_operators_finish (
    OFONOMODEMOrgOfonoNetworkRegistration *proxy,
    GVariant **out_operators_with_properties,
    GAsyncResult *res,
    GError **error);

gboolean ofono_modem_org_ofono_network_registration_call_get_operators_sync (
    OFONOMODEMOrgOfonoNetworkRegistration *proxy,
    GVariant **out_operators_with_properties,
    GCancellable *cancellable,
    GError **error);

void ofono_modem_org_ofono_network_registration_call_scan (
    OFONOMODEMOrgOfonoNetworkRegistration *proxy,
    GCancellable *cancellable,
    GAsyncReadyCallback callback,
    gpointer user_data);

gboolean ofono_modem_org_ofono_network_registration_call_scan_finish (
    OFONOMODEMOrgOfonoNetworkRegistration *proxy,
    GVariant **out_operators_with_properties,
    GAsyncResult *res,
    GError **error);

gboolean ofono_modem_org_ofono_network_registration_call_scan_sync (
    OFONOMODEMOrgOfonoNetworkRegistration *proxy,
    GVariant **out_operators_with_properties,
    GCancellable *cancellable,
    GError **error);



/* ---- */

#define OFONO_MODEM_TYPE_ORG_OFONO_NETWORK_REGISTRATION_PROXY (ofono_modem_org_ofono_network_registration_proxy_get_type ())
#define OFONO_MODEM_ORG_OFONO_NETWORK_REGISTRATION_PROXY(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), OFONO_MODEM_TYPE_ORG_OFONO_NETWORK_REGISTRATION_PROXY, OFONOMODEMOrgOfonoNetworkRegistrationProxy))
#define OFONO_MODEM_ORG_OFONO_NETWORK_REGISTRATION_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), OFONO_MODEM_TYPE_ORG_OFONO_NETWORK_REGISTRATION_PROXY, OFONOMODEMOrgOfonoNetworkRegistrationProxyClass))
#define OFONO_MODEM_ORG_OFONO_NETWORK_REGISTRATION_PROXY_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), OFONO_MODEM_TYPE_ORG_OFONO_NETWORK_REGISTRATION_PROXY, OFONOMODEMOrgOfonoNetworkRegistrationProxyClass))
#define OFONO_MODEM_IS_ORG_OFONO_NETWORK_REGISTRATION_PROXY(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), OFONO_MODEM_TYPE_ORG_OFONO_NETWORK_REGISTRATION_PROXY))
#define OFONO_MODEM_IS_ORG_OFONO_NETWORK_REGISTRATION_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), OFONO_MODEM_TYPE_ORG_OFONO_NETWORK_REGISTRATION_PROXY))

typedef struct _OFONOMODEMOrgOfonoNetworkRegistrationProxy OFONOMODEMOrgOfonoNetworkRegistrationProxy;
typedef struct _OFONOMODEMOrgOfonoNetworkRegistrationProxyClass OFONOMODEMOrgOfonoNetworkRegistrationProxyClass;
typedef struct _OFONOMODEMOrgOfonoNetworkRegistrationProxyPrivate OFONOMODEMOrgOfonoNetworkRegistrationProxyPrivate;

struct _OFONOMODEMOrgOfonoNetworkRegistrationProxy
{
  /*< private >*/
  GDBusProxy parent_instance;
  OFONOMODEMOrgOfonoNetworkRegistrationProxyPrivate *priv;
};

struct _OFONOMODEMOrgOfonoNetworkRegistrationProxyClass
{
  GDBusProxyClass parent_class;
};

GType ofono_modem_org_ofono_network_registration_proxy_get_type (void) G_GNUC_CONST;

#if GLIB_CHECK_VERSION(2, 44, 0)
G_DEFINE_AUTOPTR_CLEANUP_FUNC (OFONOMODEMOrgOfonoNetworkRegistrationProxy, g_object_unref)
#endif

void ofono_modem_org_ofono_network_registration_proxy_new (
    GDBusConnection     *connection,
    GDBusProxyFlags      flags,
    const gchar         *name,
    const gchar         *object_path,
    GCancellable        *cancellable,
    GAsyncReadyCallback  callback,
    gpointer             user_data);
OFONOMODEMOrgOfonoNetworkRegistration *ofono_modem_org_ofono_network_registration_proxy_new_finish (
    GAsyncResult        *res,
    GError             **error);
OFONOMODEMOrgOfonoNetworkRegistration *ofono_modem_org_ofono_network_registration_proxy_new_sync (
    GDBusConnection     *connection,
    GDBusProxyFlags      flags,
    const gchar         *name,
    const gchar         *object_path,
    GCancellable        *cancellable,
    GError             **error);

void ofono_modem_org_ofono_network_registration_proxy_new_for_bus (
    GBusType             bus_type,
    GDBusProxyFlags      flags,
    const gchar         *name,
    const gchar         *object_path,
    GCancellable        *cancellable,
    GAsyncReadyCallback  callback,
    gpointer             user_data);
OFONOMODEMOrgOfonoNetworkRegistration *ofono_modem_org_ofono_network_registration_proxy_new_for_bus_finish (
    GAsyncResult        *res,
    GError             **error);
OFONOMODEMOrgOfonoNetworkRegistration *ofono_modem_org_ofono_network_registration_proxy_new_for_bus_sync (
    GBusType             bus_type,
    GDBusProxyFlags      flags,
    const gchar         *name,
    const gchar         *object_path,
    GCancellable        *cancellable,
    GError             **error);


/* ---- */

#define OFONO_MODEM_TYPE_ORG_OFONO_NETWORK_REGISTRATION_SKELETON (ofono_modem_org_ofono_network_registration_skeleton_get_type ())
#define OFONO_MODEM_ORG_OFONO_NETWORK_REGISTRATION_SKELETON(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), OFONO_MODEM_TYPE_ORG_OFONO_NETWORK_REGISTRATION_SKELETON, OFONOMODEMOrgOfonoNetworkRegistrationSkeleton))
#define OFONO_MODEM_ORG_OFONO_NETWORK_REGISTRATION_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), OFONO_MODEM_TYPE_ORG_OFONO_NETWORK_REGISTRATION_SKELETON, OFONOMODEMOrgOfonoNetworkRegistrationSkeletonClass))
#define OFONO_MODEM_ORG_OFONO_NETWORK_REGISTRATION_SKELETON_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), OFONO_MODEM_TYPE_ORG_OFONO_NETWORK_REGISTRATION_SKELETON, OFONOMODEMOrgOfonoNetworkRegistrationSkeletonClass))
#define OFONO_MODEM_IS_ORG_OFONO_NETWORK_REGISTRATION_SKELETON(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), OFONO_MODEM_TYPE_ORG_OFONO_NETWORK_REGISTRATION_SKELETON))
#define OFONO_MODEM_IS_ORG_OFONO_NETWORK_REGISTRATION_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), OFONO_MODEM_TYPE_ORG_OFONO_NETWORK_REGISTRATION_SKELETON))

typedef struct _OFONOMODEMOrgOfonoNetworkRegistrationSkeleton OFONOMODEMOrgOfonoNetworkRegistrationSkeleton;
typedef struct _OFONOMODEMOrgOfonoNetworkRegistrationSkeletonClass OFONOMODEMOrgOfonoNetworkRegistrationSkeletonClass;
typedef struct _OFONOMODEMOrgOfonoNetworkRegistrationSkeletonPrivate OFONOMODEMOrgOfonoNetworkRegistrationSkeletonPrivate;

struct _OFONOMODEMOrgOfonoNetworkRegistrationSkeleton
{
  /*< private >*/
  GDBusInterfaceSkeleton parent_instance;
  OFONOMODEMOrgOfonoNetworkRegistrationSkeletonPrivate *priv;
};

struct _OFONOMODEMOrgOfonoNetworkRegistrationSkeletonClass
{
  GDBusInterfaceSkeletonClass parent_class;
};

GType ofono_modem_org_ofono_network_registration_skeleton_get_type (void) G_GNUC_CONST;

#if GLIB_CHECK_VERSION(2, 44, 0)
G_DEFINE_AUTOPTR_CLEANUP_FUNC (OFONOMODEMOrgOfonoNetworkRegistrationSkeleton, g_object_unref)
#endif

OFONOMODEMOrgOfonoNetworkRegistration *ofono_modem_org_ofono_network_registration_skeleton_new (void);


/* ------------------------------------------------------------------------ */
/* Declarations for org.ofono.Handsfree */

#define OFONO_MODEM_TYPE_ORG_OFONO_HANDSFREE (ofono_modem_org_ofono_handsfree_get_type ())
#define OFONO_MODEM_ORG_OFONO_HANDSFREE(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), OFONO_MODEM_TYPE_ORG_OFONO_HANDSFREE, OFONOMODEMOrgOfonoHandsfree))
#define OFONO_MODEM_IS_ORG_OFONO_HANDSFREE(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), OFONO_MODEM_TYPE_ORG_OFONO_HANDSFREE))
#define OFONO_MODEM_ORG_OFONO_HANDSFREE_GET_IFACE(o) (G_TYPE_INSTANCE_GET_INTERFACE ((o), OFONO_MODEM_TYPE_ORG_OFONO_HANDSFREE, OFONOMODEMOrgOfonoHandsfreeIface))

struct _OFONOMODEMOrgOfonoHandsfree;
typedef struct _OFONOMODEMOrgOfonoHandsfree OFONOMODEMOrgOfonoHandsfree;
typedef struct _OFONOMODEMOrgOfonoHandsfreeIface OFONOMODEMOrgOfonoHandsfreeIface;

struct _OFONOMODEMOrgOfonoHandsfreeIface
{
  GTypeInterface parent_iface;


  gboolean (*handle_get_properties) (
    OFONOMODEMOrgOfonoHandsfree *object,
    GDBusMethodInvocation *invocation);

  gboolean (*handle_request_phone_number) (
    OFONOMODEMOrgOfonoHandsfree *object,
    GDBusMethodInvocation *invocation);

  gboolean (*handle_set_property) (
    OFONOMODEMOrgOfonoHandsfree *object,
    GDBusMethodInvocation *invocation,
    const gchar *arg_property,
    GVariant *arg_value);

  void (*property_changed) (
    OFONOMODEMOrgOfonoHandsfree *object,
    const gchar *arg_name,
    GVariant *arg_value);

};

GType ofono_modem_org_ofono_handsfree_get_type (void) G_GNUC_CONST;

GDBusInterfaceInfo *ofono_modem_org_ofono_handsfree_interface_info (void);
guint ofono_modem_org_ofono_handsfree_override_properties (GObjectClass *klass, guint property_id_begin);


/* D-Bus method call completion functions: */
void ofono_modem_org_ofono_handsfree_complete_get_properties (
    OFONOMODEMOrgOfonoHandsfree *object,
    GDBusMethodInvocation *invocation,
    GVariant *properties);

void ofono_modem_org_ofono_handsfree_complete_set_property (
    OFONOMODEMOrgOfonoHandsfree *object,
    GDBusMethodInvocation *invocation);

void ofono_modem_org_ofono_handsfree_complete_request_phone_number (
    OFONOMODEMOrgOfonoHandsfree *object,
    GDBusMethodInvocation *invocation,
    const gchar *number);



/* D-Bus signal emissions functions: */
void ofono_modem_org_ofono_handsfree_emit_property_changed (
    OFONOMODEMOrgOfonoHandsfree *object,
    const gchar *arg_name,
    GVariant *arg_value);



/* D-Bus method calls: */
void ofono_modem_org_ofono_handsfree_call_get_properties (
    OFONOMODEMOrgOfonoHandsfree *proxy,
    GCancellable *cancellable,
    GAsyncReadyCallback callback,
    gpointer user_data);

gboolean ofono_modem_org_ofono_handsfree_call_get_properties_finish (
    OFONOMODEMOrgOfonoHandsfree *proxy,
    GVariant **out_properties,
    GAsyncResult *res,
    GError **error);

gboolean ofono_modem_org_ofono_handsfree_call_get_properties_sync (
    OFONOMODEMOrgOfonoHandsfree *proxy,
    GVariant **out_properties,
    GCancellable *cancellable,
    GError **error);

void ofono_modem_org_ofono_handsfree_call_set_property (
    OFONOMODEMOrgOfonoHandsfree *proxy,
    const gchar *arg_property,
    GVariant *arg_value,
    GCancellable *cancellable,
    GAsyncReadyCallback callback,
    gpointer user_data);

gboolean ofono_modem_org_ofono_handsfree_call_set_property_finish (
    OFONOMODEMOrgOfonoHandsfree *proxy,
    GAsyncResult *res,
    GError **error);

gboolean ofono_modem_org_ofono_handsfree_call_set_property_sync (
    OFONOMODEMOrgOfonoHandsfree *proxy,
    const gchar *arg_property,
    GVariant *arg_value,
    GCancellable *cancellable,
    GError **error);

void ofono_modem_org_ofono_handsfree_call_request_phone_number (
    OFONOMODEMOrgOfonoHandsfree *proxy,
    GCancellable *cancellable,
    GAsyncReadyCallback callback,
    gpointer user_data);

gboolean ofono_modem_org_ofono_handsfree_call_request_phone_number_finish (
    OFONOMODEMOrgOfonoHandsfree *proxy,
    gchar **out_number,
    GAsyncResult *res,
    GError **error);

gboolean ofono_modem_org_ofono_handsfree_call_request_phone_number_sync (
    OFONOMODEMOrgOfonoHandsfree *proxy,
    gchar **out_number,
    GCancellable *cancellable,
    GError **error);



/* ---- */

#define OFONO_MODEM_TYPE_ORG_OFONO_HANDSFREE_PROXY (ofono_modem_org_ofono_handsfree_proxy_get_type ())
#define OFONO_MODEM_ORG_OFONO_HANDSFREE_PROXY(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), OFONO_MODEM_TYPE_ORG_OFONO_HANDSFREE_PROXY, OFONOMODEMOrgOfonoHandsfreeProxy))
#define OFONO_MODEM_ORG_OFONO_HANDSFREE_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), OFONO_MODEM_TYPE_ORG_OFONO_HANDSFREE_PROXY, OFONOMODEMOrgOfonoHandsfreeProxyClass))
#define OFONO_MODEM_ORG_OFONO_HANDSFREE_PROXY_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), OFONO_MODEM_TYPE_ORG_OFONO_HANDSFREE_PROXY, OFONOMODEMOrgOfonoHandsfreeProxyClass))
#define OFONO_MODEM_IS_ORG_OFONO_HANDSFREE_PROXY(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), OFONO_MODEM_TYPE_ORG_OFONO_HANDSFREE_PROXY))
#define OFONO_MODEM_IS_ORG_OFONO_HANDSFREE_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), OFONO_MODEM_TYPE_ORG_OFONO_HANDSFREE_PROXY))

typedef struct _OFONOMODEMOrgOfonoHandsfreeProxy OFONOMODEMOrgOfonoHandsfreeProxy;
typedef struct _OFONOMODEMOrgOfonoHandsfreeProxyClass OFONOMODEMOrgOfonoHandsfreeProxyClass;
typedef struct _OFONOMODEMOrgOfonoHandsfreeProxyPrivate OFONOMODEMOrgOfonoHandsfreeProxyPrivate;

struct _OFONOMODEMOrgOfonoHandsfreeProxy
{
  /*< private >*/
  GDBusProxy parent_instance;
  OFONOMODEMOrgOfonoHandsfreeProxyPrivate *priv;
};

struct _OFONOMODEMOrgOfonoHandsfreeProxyClass
{
  GDBusProxyClass parent_class;
};

GType ofono_modem_org_ofono_handsfree_proxy_get_type (void) G_GNUC_CONST;

#if GLIB_CHECK_VERSION(2, 44, 0)
G_DEFINE_AUTOPTR_CLEANUP_FUNC (OFONOMODEMOrgOfonoHandsfreeProxy, g_object_unref)
#endif

void ofono_modem_org_ofono_handsfree_proxy_new (
    GDBusConnection     *connection,
    GDBusProxyFlags      flags,
    const gchar         *name,
    const gchar         *object_path,
    GCancellable        *cancellable,
    GAsyncReadyCallback  callback,
    gpointer             user_data);
OFONOMODEMOrgOfonoHandsfree *ofono_modem_org_ofono_handsfree_proxy_new_finish (
    GAsyncResult        *res,
    GError             **error);
OFONOMODEMOrgOfonoHandsfree *ofono_modem_org_ofono_handsfree_proxy_new_sync (
    GDBusConnection     *connection,
    GDBusProxyFlags      flags,
    const gchar         *name,
    const gchar         *object_path,
    GCancellable        *cancellable,
    GError             **error);

void ofono_modem_org_ofono_handsfree_proxy_new_for_bus (
    GBusType             bus_type,
    GDBusProxyFlags      flags,
    const gchar         *name,
    const gchar         *object_path,
    GCancellable        *cancellable,
    GAsyncReadyCallback  callback,
    gpointer             user_data);
OFONOMODEMOrgOfonoHandsfree *ofono_modem_org_ofono_handsfree_proxy_new_for_bus_finish (
    GAsyncResult        *res,
    GError             **error);
OFONOMODEMOrgOfonoHandsfree *ofono_modem_org_ofono_handsfree_proxy_new_for_bus_sync (
    GBusType             bus_type,
    GDBusProxyFlags      flags,
    const gchar         *name,
    const gchar         *object_path,
    GCancellable        *cancellable,
    GError             **error);


/* ---- */

#define OFONO_MODEM_TYPE_ORG_OFONO_HANDSFREE_SKELETON (ofono_modem_org_ofono_handsfree_skeleton_get_type ())
#define OFONO_MODEM_ORG_OFONO_HANDSFREE_SKELETON(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), OFONO_MODEM_TYPE_ORG_OFONO_HANDSFREE_SKELETON, OFONOMODEMOrgOfonoHandsfreeSkeleton))
#define OFONO_MODEM_ORG_OFONO_HANDSFREE_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), OFONO_MODEM_TYPE_ORG_OFONO_HANDSFREE_SKELETON, OFONOMODEMOrgOfonoHandsfreeSkeletonClass))
#define OFONO_MODEM_ORG_OFONO_HANDSFREE_SKELETON_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), OFONO_MODEM_TYPE_ORG_OFONO_HANDSFREE_SKELETON, OFONOMODEMOrgOfonoHandsfreeSkeletonClass))
#define OFONO_MODEM_IS_ORG_OFONO_HANDSFREE_SKELETON(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), OFONO_MODEM_TYPE_ORG_OFONO_HANDSFREE_SKELETON))
#define OFONO_MODEM_IS_ORG_OFONO_HANDSFREE_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), OFONO_MODEM_TYPE_ORG_OFONO_HANDSFREE_SKELETON))

typedef struct _OFONOMODEMOrgOfonoHandsfreeSkeleton OFONOMODEMOrgOfonoHandsfreeSkeleton;
typedef struct _OFONOMODEMOrgOfonoHandsfreeSkeletonClass OFONOMODEMOrgOfonoHandsfreeSkeletonClass;
typedef struct _OFONOMODEMOrgOfonoHandsfreeSkeletonPrivate OFONOMODEMOrgOfonoHandsfreeSkeletonPrivate;

struct _OFONOMODEMOrgOfonoHandsfreeSkeleton
{
  /*< private >*/
  GDBusInterfaceSkeleton parent_instance;
  OFONOMODEMOrgOfonoHandsfreeSkeletonPrivate *priv;
};

struct _OFONOMODEMOrgOfonoHandsfreeSkeletonClass
{
  GDBusInterfaceSkeletonClass parent_class;
};

GType ofono_modem_org_ofono_handsfree_skeleton_get_type (void) G_GNUC_CONST;

#if GLIB_CHECK_VERSION(2, 44, 0)
G_DEFINE_AUTOPTR_CLEANUP_FUNC (OFONOMODEMOrgOfonoHandsfreeSkeleton, g_object_unref)
#endif

OFONOMODEMOrgOfonoHandsfree *ofono_modem_org_ofono_handsfree_skeleton_new (void);


/* ------------------------------------------------------------------------ */
/* Declarations for org.ofono.CallVolume */

#define OFONO_MODEM_TYPE_ORG_OFONO_CALL_VOLUME (ofono_modem_org_ofono_call_volume_get_type ())
#define OFONO_MODEM_ORG_OFONO_CALL_VOLUME(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), OFONO_MODEM_TYPE_ORG_OFONO_CALL_VOLUME, OFONOMODEMOrgOfonoCallVolume))
#define OFONO_MODEM_IS_ORG_OFONO_CALL_VOLUME(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), OFONO_MODEM_TYPE_ORG_OFONO_CALL_VOLUME))
#define OFONO_MODEM_ORG_OFONO_CALL_VOLUME_GET_IFACE(o) (G_TYPE_INSTANCE_GET_INTERFACE ((o), OFONO_MODEM_TYPE_ORG_OFONO_CALL_VOLUME, OFONOMODEMOrgOfonoCallVolumeIface))

struct _OFONOMODEMOrgOfonoCallVolume;
typedef struct _OFONOMODEMOrgOfonoCallVolume OFONOMODEMOrgOfonoCallVolume;
typedef struct _OFONOMODEMOrgOfonoCallVolumeIface OFONOMODEMOrgOfonoCallVolumeIface;

struct _OFONOMODEMOrgOfonoCallVolumeIface
{
  GTypeInterface parent_iface;


  gboolean (*handle_get_properties) (
    OFONOMODEMOrgOfonoCallVolume *object,
    GDBusMethodInvocation *invocation);

  gboolean (*handle_set_property) (
    OFONOMODEMOrgOfonoCallVolume *object,
    GDBusMethodInvocation *invocation,
    const gchar *arg_property,
    GVariant *arg_value);

  void (*property_changed) (
    OFONOMODEMOrgOfonoCallVolume *object,
    const gchar *arg_property,
    GVariant *arg_value);

};

GType ofono_modem_org_ofono_call_volume_get_type (void) G_GNUC_CONST;

GDBusInterfaceInfo *ofono_modem_org_ofono_call_volume_interface_info (void);
guint ofono_modem_org_ofono_call_volume_override_properties (GObjectClass *klass, guint property_id_begin);


/* D-Bus method call completion functions: */
void ofono_modem_org_ofono_call_volume_complete_get_properties (
    OFONOMODEMOrgOfonoCallVolume *object,
    GDBusMethodInvocation *invocation,
    GVariant *properties);

void ofono_modem_org_ofono_call_volume_complete_set_property (
    OFONOMODEMOrgOfonoCallVolume *object,
    GDBusMethodInvocation *invocation);



/* D-Bus signal emissions functions: */
void ofono_modem_org_ofono_call_volume_emit_property_changed (
    OFONOMODEMOrgOfonoCallVolume *object,
    const gchar *arg_property,
    GVariant *arg_value);



/* D-Bus method calls: */
void ofono_modem_org_ofono_call_volume_call_get_properties (
    OFONOMODEMOrgOfonoCallVolume *proxy,
    GCancellable *cancellable,
    GAsyncReadyCallback callback,
    gpointer user_data);

gboolean ofono_modem_org_ofono_call_volume_call_get_properties_finish (
    OFONOMODEMOrgOfonoCallVolume *proxy,
    GVariant **out_properties,
    GAsyncResult *res,
    GError **error);

gboolean ofono_modem_org_ofono_call_volume_call_get_properties_sync (
    OFONOMODEMOrgOfonoCallVolume *proxy,
    GVariant **out_properties,
    GCancellable *cancellable,
    GError **error);

void ofono_modem_org_ofono_call_volume_call_set_property (
    OFONOMODEMOrgOfonoCallVolume *proxy,
    const gchar *arg_property,
    GVariant *arg_value,
    GCancellable *cancellable,
    GAsyncReadyCallback callback,
    gpointer user_data);

gboolean ofono_modem_org_ofono_call_volume_call_set_property_finish (
    OFONOMODEMOrgOfonoCallVolume *proxy,
    GAsyncResult *res,
    GError **error);

gboolean ofono_modem_org_ofono_call_volume_call_set_property_sync (
    OFONOMODEMOrgOfonoCallVolume *proxy,
    const gchar *arg_property,
    GVariant *arg_value,
    GCancellable *cancellable,
    GError **error);



/* ---- */

#define OFONO_MODEM_TYPE_ORG_OFONO_CALL_VOLUME_PROXY (ofono_modem_org_ofono_call_volume_proxy_get_type ())
#define OFONO_MODEM_ORG_OFONO_CALL_VOLUME_PROXY(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), OFONO_MODEM_TYPE_ORG_OFONO_CALL_VOLUME_PROXY, OFONOMODEMOrgOfonoCallVolumeProxy))
#define OFONO_MODEM_ORG_OFONO_CALL_VOLUME_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), OFONO_MODEM_TYPE_ORG_OFONO_CALL_VOLUME_PROXY, OFONOMODEMOrgOfonoCallVolumeProxyClass))
#define OFONO_MODEM_ORG_OFONO_CALL_VOLUME_PROXY_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), OFONO_MODEM_TYPE_ORG_OFONO_CALL_VOLUME_PROXY, OFONOMODEMOrgOfonoCallVolumeProxyClass))
#define OFONO_MODEM_IS_ORG_OFONO_CALL_VOLUME_PROXY(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), OFONO_MODEM_TYPE_ORG_OFONO_CALL_VOLUME_PROXY))
#define OFONO_MODEM_IS_ORG_OFONO_CALL_VOLUME_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), OFONO_MODEM_TYPE_ORG_OFONO_CALL_VOLUME_PROXY))

typedef struct _OFONOMODEMOrgOfonoCallVolumeProxy OFONOMODEMOrgOfonoCallVolumeProxy;
typedef struct _OFONOMODEMOrgOfonoCallVolumeProxyClass OFONOMODEMOrgOfonoCallVolumeProxyClass;
typedef struct _OFONOMODEMOrgOfonoCallVolumeProxyPrivate OFONOMODEMOrgOfonoCallVolumeProxyPrivate;

struct _OFONOMODEMOrgOfonoCallVolumeProxy
{
  /*< private >*/
  GDBusProxy parent_instance;
  OFONOMODEMOrgOfonoCallVolumeProxyPrivate *priv;
};

struct _OFONOMODEMOrgOfonoCallVolumeProxyClass
{
  GDBusProxyClass parent_class;
};

GType ofono_modem_org_ofono_call_volume_proxy_get_type (void) G_GNUC_CONST;

#if GLIB_CHECK_VERSION(2, 44, 0)
G_DEFINE_AUTOPTR_CLEANUP_FUNC (OFONOMODEMOrgOfonoCallVolumeProxy, g_object_unref)
#endif

void ofono_modem_org_ofono_call_volume_proxy_new (
    GDBusConnection     *connection,
    GDBusProxyFlags      flags,
    const gchar         *name,
    const gchar         *object_path,
    GCancellable        *cancellable,
    GAsyncReadyCallback  callback,
    gpointer             user_data);
OFONOMODEMOrgOfonoCallVolume *ofono_modem_org_ofono_call_volume_proxy_new_finish (
    GAsyncResult        *res,
    GError             **error);
OFONOMODEMOrgOfonoCallVolume *ofono_modem_org_ofono_call_volume_proxy_new_sync (
    GDBusConnection     *connection,
    GDBusProxyFlags      flags,
    const gchar         *name,
    const gchar         *object_path,
    GCancellable        *cancellable,
    GError             **error);

void ofono_modem_org_ofono_call_volume_proxy_new_for_bus (
    GBusType             bus_type,
    GDBusProxyFlags      flags,
    const gchar         *name,
    const gchar         *object_path,
    GCancellable        *cancellable,
    GAsyncReadyCallback  callback,
    gpointer             user_data);
OFONOMODEMOrgOfonoCallVolume *ofono_modem_org_ofono_call_volume_proxy_new_for_bus_finish (
    GAsyncResult        *res,
    GError             **error);
OFONOMODEMOrgOfonoCallVolume *ofono_modem_org_ofono_call_volume_proxy_new_for_bus_sync (
    GBusType             bus_type,
    GDBusProxyFlags      flags,
    const gchar         *name,
    const gchar         *object_path,
    GCancellable        *cancellable,
    GError             **error);


/* ---- */

#define OFONO_MODEM_TYPE_ORG_OFONO_CALL_VOLUME_SKELETON (ofono_modem_org_ofono_call_volume_skeleton_get_type ())
#define OFONO_MODEM_ORG_OFONO_CALL_VOLUME_SKELETON(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), OFONO_MODEM_TYPE_ORG_OFONO_CALL_VOLUME_SKELETON, OFONOMODEMOrgOfonoCallVolumeSkeleton))
#define OFONO_MODEM_ORG_OFONO_CALL_VOLUME_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), OFONO_MODEM_TYPE_ORG_OFONO_CALL_VOLUME_SKELETON, OFONOMODEMOrgOfonoCallVolumeSkeletonClass))
#define OFONO_MODEM_ORG_OFONO_CALL_VOLUME_SKELETON_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), OFONO_MODEM_TYPE_ORG_OFONO_CALL_VOLUME_SKELETON, OFONOMODEMOrgOfonoCallVolumeSkeletonClass))
#define OFONO_MODEM_IS_ORG_OFONO_CALL_VOLUME_SKELETON(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), OFONO_MODEM_TYPE_ORG_OFONO_CALL_VOLUME_SKELETON))
#define OFONO_MODEM_IS_ORG_OFONO_CALL_VOLUME_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), OFONO_MODEM_TYPE_ORG_OFONO_CALL_VOLUME_SKELETON))

typedef struct _OFONOMODEMOrgOfonoCallVolumeSkeleton OFONOMODEMOrgOfonoCallVolumeSkeleton;
typedef struct _OFONOMODEMOrgOfonoCallVolumeSkeletonClass OFONOMODEMOrgOfonoCallVolumeSkeletonClass;
typedef struct _OFONOMODEMOrgOfonoCallVolumeSkeletonPrivate OFONOMODEMOrgOfonoCallVolumeSkeletonPrivate;

struct _OFONOMODEMOrgOfonoCallVolumeSkeleton
{
  /*< private >*/
  GDBusInterfaceSkeleton parent_instance;
  OFONOMODEMOrgOfonoCallVolumeSkeletonPrivate *priv;
};

struct _OFONOMODEMOrgOfonoCallVolumeSkeletonClass
{
  GDBusInterfaceSkeletonClass parent_class;
};

GType ofono_modem_org_ofono_call_volume_skeleton_get_type (void) G_GNUC_CONST;

#if GLIB_CHECK_VERSION(2, 44, 0)
G_DEFINE_AUTOPTR_CLEANUP_FUNC (OFONOMODEMOrgOfonoCallVolumeSkeleton, g_object_unref)
#endif

OFONOMODEMOrgOfonoCallVolume *ofono_modem_org_ofono_call_volume_skeleton_new (void);


/* ------------------------------------------------------------------------ */
/* Declarations for org.ofono.VoiceCallManager */

#define OFONO_MODEM_TYPE_ORG_OFONO_VOICE_CALL_MANAGER (ofono_modem_org_ofono_voice_call_manager_get_type ())
#define OFONO_MODEM_ORG_OFONO_VOICE_CALL_MANAGER(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), OFONO_MODEM_TYPE_ORG_OFONO_VOICE_CALL_MANAGER, OFONOMODEMOrgOfonoVoiceCallManager))
#define OFONO_MODEM_IS_ORG_OFONO_VOICE_CALL_MANAGER(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), OFONO_MODEM_TYPE_ORG_OFONO_VOICE_CALL_MANAGER))
#define OFONO_MODEM_ORG_OFONO_VOICE_CALL_MANAGER_GET_IFACE(o) (G_TYPE_INSTANCE_GET_INTERFACE ((o), OFONO_MODEM_TYPE_ORG_OFONO_VOICE_CALL_MANAGER, OFONOMODEMOrgOfonoVoiceCallManagerIface))

struct _OFONOMODEMOrgOfonoVoiceCallManager;
typedef struct _OFONOMODEMOrgOfonoVoiceCallManager OFONOMODEMOrgOfonoVoiceCallManager;
typedef struct _OFONOMODEMOrgOfonoVoiceCallManagerIface OFONOMODEMOrgOfonoVoiceCallManagerIface;

struct _OFONOMODEMOrgOfonoVoiceCallManagerIface
{
  GTypeInterface parent_iface;


  gboolean (*handle_create_multiparty) (
    OFONOMODEMOrgOfonoVoiceCallManager *object,
    GDBusMethodInvocation *invocation);

  gboolean (*handle_dial) (
    OFONOMODEMOrgOfonoVoiceCallManager *object,
    GDBusMethodInvocation *invocation,
    const gchar *arg_number,
    const gchar *arg_hide_callerid);

  gboolean (*handle_get_calls) (
    OFONOMODEMOrgOfonoVoiceCallManager *object,
    GDBusMethodInvocation *invocation);

  gboolean (*handle_get_properties) (
    OFONOMODEMOrgOfonoVoiceCallManager *object,
    GDBusMethodInvocation *invocation);

  gboolean (*handle_hangup_all) (
    OFONOMODEMOrgOfonoVoiceCallManager *object,
    GDBusMethodInvocation *invocation);

  gboolean (*handle_hangup_multiparty) (
    OFONOMODEMOrgOfonoVoiceCallManager *object,
    GDBusMethodInvocation *invocation);

  gboolean (*handle_hold_and_answer) (
    OFONOMODEMOrgOfonoVoiceCallManager *object,
    GDBusMethodInvocation *invocation);

  gboolean (*handle_private_chat) (
    OFONOMODEMOrgOfonoVoiceCallManager *object,
    GDBusMethodInvocation *invocation,
    const gchar *arg_call);

  gboolean (*handle_release_and_answer) (
    OFONOMODEMOrgOfonoVoiceCallManager *object,
    GDBusMethodInvocation *invocation);

  gboolean (*handle_release_and_swap) (
    OFONOMODEMOrgOfonoVoiceCallManager *object,
    GDBusMethodInvocation *invocation);

  gboolean (*handle_send_tones) (
    OFONOMODEMOrgOfonoVoiceCallManager *object,
    GDBusMethodInvocation *invocation,
    const gchar *arg_SendTones);

  gboolean (*handle_swap_calls) (
    OFONOMODEMOrgOfonoVoiceCallManager *object,
    GDBusMethodInvocation *invocation);

  gboolean (*handle_transfer) (
    OFONOMODEMOrgOfonoVoiceCallManager *object,
    GDBusMethodInvocation *invocation);

  void (*barring_active) (
    OFONOMODEMOrgOfonoVoiceCallManager *object,
    const gchar *arg_type);

  void (*call_added) (
    OFONOMODEMOrgOfonoVoiceCallManager *object,
    const gchar *arg_path,
    GVariant *arg_properties);

  void (*call_removed) (
    OFONOMODEMOrgOfonoVoiceCallManager *object,
    const gchar *arg_path);

  void (*forwarded) (
    OFONOMODEMOrgOfonoVoiceCallManager *object,
    const gchar *arg_type);

  void (*property_changed) (
    OFONOMODEMOrgOfonoVoiceCallManager *object,
    const gchar *arg_name,
    GVariant *arg_value);

};

GType ofono_modem_org_ofono_voice_call_manager_get_type (void) G_GNUC_CONST;

GDBusInterfaceInfo *ofono_modem_org_ofono_voice_call_manager_interface_info (void);
guint ofono_modem_org_ofono_voice_call_manager_override_properties (GObjectClass *klass, guint property_id_begin);


/* D-Bus method call completion functions: */
void ofono_modem_org_ofono_voice_call_manager_complete_get_properties (
    OFONOMODEMOrgOfonoVoiceCallManager *object,
    GDBusMethodInvocation *invocation,
    GVariant *properties);

void ofono_modem_org_ofono_voice_call_manager_complete_dial (
    OFONOMODEMOrgOfonoVoiceCallManager *object,
    GDBusMethodInvocation *invocation,
    const gchar *path);

void ofono_modem_org_ofono_voice_call_manager_complete_transfer (
    OFONOMODEMOrgOfonoVoiceCallManager *object,
    GDBusMethodInvocation *invocation);

void ofono_modem_org_ofono_voice_call_manager_complete_swap_calls (
    OFONOMODEMOrgOfonoVoiceCallManager *object,
    GDBusMethodInvocation *invocation);

void ofono_modem_org_ofono_voice_call_manager_complete_release_and_answer (
    OFONOMODEMOrgOfonoVoiceCallManager *object,
    GDBusMethodInvocation *invocation);

void ofono_modem_org_ofono_voice_call_manager_complete_release_and_swap (
    OFONOMODEMOrgOfonoVoiceCallManager *object,
    GDBusMethodInvocation *invocation);

void ofono_modem_org_ofono_voice_call_manager_complete_hold_and_answer (
    OFONOMODEMOrgOfonoVoiceCallManager *object,
    GDBusMethodInvocation *invocation);

void ofono_modem_org_ofono_voice_call_manager_complete_hangup_all (
    OFONOMODEMOrgOfonoVoiceCallManager *object,
    GDBusMethodInvocation *invocation);

void ofono_modem_org_ofono_voice_call_manager_complete_private_chat (
    OFONOMODEMOrgOfonoVoiceCallManager *object,
    GDBusMethodInvocation *invocation,
    const gchar *const *calls);

void ofono_modem_org_ofono_voice_call_manager_complete_create_multiparty (
    OFONOMODEMOrgOfonoVoiceCallManager *object,
    GDBusMethodInvocation *invocation,
    const gchar *calls);

void ofono_modem_org_ofono_voice_call_manager_complete_hangup_multiparty (
    OFONOMODEMOrgOfonoVoiceCallManager *object,
    GDBusMethodInvocation *invocation);

void ofono_modem_org_ofono_voice_call_manager_complete_send_tones (
    OFONOMODEMOrgOfonoVoiceCallManager *object,
    GDBusMethodInvocation *invocation);

void ofono_modem_org_ofono_voice_call_manager_complete_get_calls (
    OFONOMODEMOrgOfonoVoiceCallManager *object,
    GDBusMethodInvocation *invocation,
    GVariant *calls_with_properties);



/* D-Bus signal emissions functions: */
void ofono_modem_org_ofono_voice_call_manager_emit_forwarded (
    OFONOMODEMOrgOfonoVoiceCallManager *object,
    const gchar *arg_type);

void ofono_modem_org_ofono_voice_call_manager_emit_barring_active (
    OFONOMODEMOrgOfonoVoiceCallManager *object,
    const gchar *arg_type);

void ofono_modem_org_ofono_voice_call_manager_emit_property_changed (
    OFONOMODEMOrgOfonoVoiceCallManager *object,
    const gchar *arg_name,
    GVariant *arg_value);

void ofono_modem_org_ofono_voice_call_manager_emit_call_added (
    OFONOMODEMOrgOfonoVoiceCallManager *object,
    const gchar *arg_path,
    GVariant *arg_properties);

void ofono_modem_org_ofono_voice_call_manager_emit_call_removed (
    OFONOMODEMOrgOfonoVoiceCallManager *object,
    const gchar *arg_path);



/* D-Bus method calls: */
void ofono_modem_org_ofono_voice_call_manager_call_get_properties (
    OFONOMODEMOrgOfonoVoiceCallManager *proxy,
    GCancellable *cancellable,
    GAsyncReadyCallback callback,
    gpointer user_data);

gboolean ofono_modem_org_ofono_voice_call_manager_call_get_properties_finish (
    OFONOMODEMOrgOfonoVoiceCallManager *proxy,
    GVariant **out_properties,
    GAsyncResult *res,
    GError **error);

gboolean ofono_modem_org_ofono_voice_call_manager_call_get_properties_sync (
    OFONOMODEMOrgOfonoVoiceCallManager *proxy,
    GVariant **out_properties,
    GCancellable *cancellable,
    GError **error);

void ofono_modem_org_ofono_voice_call_manager_call_dial (
    OFONOMODEMOrgOfonoVoiceCallManager *proxy,
    const gchar *arg_number,
    const gchar *arg_hide_callerid,
    GCancellable *cancellable,
    GAsyncReadyCallback callback,
    gpointer user_data);

gboolean ofono_modem_org_ofono_voice_call_manager_call_dial_finish (
    OFONOMODEMOrgOfonoVoiceCallManager *proxy,
    gchar **out_path,
    GAsyncResult *res,
    GError **error);

gboolean ofono_modem_org_ofono_voice_call_manager_call_dial_sync (
    OFONOMODEMOrgOfonoVoiceCallManager *proxy,
    const gchar *arg_number,
    const gchar *arg_hide_callerid,
    gchar **out_path,
    GCancellable *cancellable,
    GError **error);

void ofono_modem_org_ofono_voice_call_manager_call_transfer (
    OFONOMODEMOrgOfonoVoiceCallManager *proxy,
    GCancellable *cancellable,
    GAsyncReadyCallback callback,
    gpointer user_data);

gboolean ofono_modem_org_ofono_voice_call_manager_call_transfer_finish (
    OFONOMODEMOrgOfonoVoiceCallManager *proxy,
    GAsyncResult *res,
    GError **error);

gboolean ofono_modem_org_ofono_voice_call_manager_call_transfer_sync (
    OFONOMODEMOrgOfonoVoiceCallManager *proxy,
    GCancellable *cancellable,
    GError **error);

void ofono_modem_org_ofono_voice_call_manager_call_swap_calls (
    OFONOMODEMOrgOfonoVoiceCallManager *proxy,
    GCancellable *cancellable,
    GAsyncReadyCallback callback,
    gpointer user_data);

gboolean ofono_modem_org_ofono_voice_call_manager_call_swap_calls_finish (
    OFONOMODEMOrgOfonoVoiceCallManager *proxy,
    GAsyncResult *res,
    GError **error);

gboolean ofono_modem_org_ofono_voice_call_manager_call_swap_calls_sync (
    OFONOMODEMOrgOfonoVoiceCallManager *proxy,
    GCancellable *cancellable,
    GError **error);

void ofono_modem_org_ofono_voice_call_manager_call_release_and_answer (
    OFONOMODEMOrgOfonoVoiceCallManager *proxy,
    GCancellable *cancellable,
    GAsyncReadyCallback callback,
    gpointer user_data);

gboolean ofono_modem_org_ofono_voice_call_manager_call_release_and_answer_finish (
    OFONOMODEMOrgOfonoVoiceCallManager *proxy,
    GAsyncResult *res,
    GError **error);

gboolean ofono_modem_org_ofono_voice_call_manager_call_release_and_answer_sync (
    OFONOMODEMOrgOfonoVoiceCallManager *proxy,
    GCancellable *cancellable,
    GError **error);

void ofono_modem_org_ofono_voice_call_manager_call_release_and_swap (
    OFONOMODEMOrgOfonoVoiceCallManager *proxy,
    GCancellable *cancellable,
    GAsyncReadyCallback callback,
    gpointer user_data);

gboolean ofono_modem_org_ofono_voice_call_manager_call_release_and_swap_finish (
    OFONOMODEMOrgOfonoVoiceCallManager *proxy,
    GAsyncResult *res,
    GError **error);

gboolean ofono_modem_org_ofono_voice_call_manager_call_release_and_swap_sync (
    OFONOMODEMOrgOfonoVoiceCallManager *proxy,
    GCancellable *cancellable,
    GError **error);

void ofono_modem_org_ofono_voice_call_manager_call_hold_and_answer (
    OFONOMODEMOrgOfonoVoiceCallManager *proxy,
    GCancellable *cancellable,
    GAsyncReadyCallback callback,
    gpointer user_data);

gboolean ofono_modem_org_ofono_voice_call_manager_call_hold_and_answer_finish (
    OFONOMODEMOrgOfonoVoiceCallManager *proxy,
    GAsyncResult *res,
    GError **error);

gboolean ofono_modem_org_ofono_voice_call_manager_call_hold_and_answer_sync (
    OFONOMODEMOrgOfonoVoiceCallManager *proxy,
    GCancellable *cancellable,
    GError **error);

void ofono_modem_org_ofono_voice_call_manager_call_hangup_all (
    OFONOMODEMOrgOfonoVoiceCallManager *proxy,
    GCancellable *cancellable,
    GAsyncReadyCallback callback,
    gpointer user_data);

gboolean ofono_modem_org_ofono_voice_call_manager_call_hangup_all_finish (
    OFONOMODEMOrgOfonoVoiceCallManager *proxy,
    GAsyncResult *res,
    GError **error);

gboolean ofono_modem_org_ofono_voice_call_manager_call_hangup_all_sync (
    OFONOMODEMOrgOfonoVoiceCallManager *proxy,
    GCancellable *cancellable,
    GError **error);

void ofono_modem_org_ofono_voice_call_manager_call_private_chat (
    OFONOMODEMOrgOfonoVoiceCallManager *proxy,
    const gchar *arg_call,
    GCancellable *cancellable,
    GAsyncReadyCallback callback,
    gpointer user_data);

gboolean ofono_modem_org_ofono_voice_call_manager_call_private_chat_finish (
    OFONOMODEMOrgOfonoVoiceCallManager *proxy,
    gchar ***out_calls,
    GAsyncResult *res,
    GError **error);

gboolean ofono_modem_org_ofono_voice_call_manager_call_private_chat_sync (
    OFONOMODEMOrgOfonoVoiceCallManager *proxy,
    const gchar *arg_call,
    gchar ***out_calls,
    GCancellable *cancellable,
    GError **error);

void ofono_modem_org_ofono_voice_call_manager_call_create_multiparty (
    OFONOMODEMOrgOfonoVoiceCallManager *proxy,
    GCancellable *cancellable,
    GAsyncReadyCallback callback,
    gpointer user_data);

gboolean ofono_modem_org_ofono_voice_call_manager_call_create_multiparty_finish (
    OFONOMODEMOrgOfonoVoiceCallManager *proxy,
    gchar **out_calls,
    GAsyncResult *res,
    GError **error);

gboolean ofono_modem_org_ofono_voice_call_manager_call_create_multiparty_sync (
    OFONOMODEMOrgOfonoVoiceCallManager *proxy,
    gchar **out_calls,
    GCancellable *cancellable,
    GError **error);

void ofono_modem_org_ofono_voice_call_manager_call_hangup_multiparty (
    OFONOMODEMOrgOfonoVoiceCallManager *proxy,
    GCancellable *cancellable,
    GAsyncReadyCallback callback,
    gpointer user_data);

gboolean ofono_modem_org_ofono_voice_call_manager_call_hangup_multiparty_finish (
    OFONOMODEMOrgOfonoVoiceCallManager *proxy,
    GAsyncResult *res,
    GError **error);

gboolean ofono_modem_org_ofono_voice_call_manager_call_hangup_multiparty_sync (
    OFONOMODEMOrgOfonoVoiceCallManager *proxy,
    GCancellable *cancellable,
    GError **error);

void ofono_modem_org_ofono_voice_call_manager_call_send_tones (
    OFONOMODEMOrgOfonoVoiceCallManager *proxy,
    const gchar *arg_SendTones,
    GCancellable *cancellable,
    GAsyncReadyCallback callback,
    gpointer user_data);

gboolean ofono_modem_org_ofono_voice_call_manager_call_send_tones_finish (
    OFONOMODEMOrgOfonoVoiceCallManager *proxy,
    GAsyncResult *res,
    GError **error);

gboolean ofono_modem_org_ofono_voice_call_manager_call_send_tones_sync (
    OFONOMODEMOrgOfonoVoiceCallManager *proxy,
    const gchar *arg_SendTones,
    GCancellable *cancellable,
    GError **error);

void ofono_modem_org_ofono_voice_call_manager_call_get_calls (
    OFONOMODEMOrgOfonoVoiceCallManager *proxy,
    GCancellable *cancellable,
    GAsyncReadyCallback callback,
    gpointer user_data);

gboolean ofono_modem_org_ofono_voice_call_manager_call_get_calls_finish (
    OFONOMODEMOrgOfonoVoiceCallManager *proxy,
    GVariant **out_calls_with_properties,
    GAsyncResult *res,
    GError **error);

gboolean ofono_modem_org_ofono_voice_call_manager_call_get_calls_sync (
    OFONOMODEMOrgOfonoVoiceCallManager *proxy,
    GVariant **out_calls_with_properties,
    GCancellable *cancellable,
    GError **error);



/* ---- */

#define OFONO_MODEM_TYPE_ORG_OFONO_VOICE_CALL_MANAGER_PROXY (ofono_modem_org_ofono_voice_call_manager_proxy_get_type ())
#define OFONO_MODEM_ORG_OFONO_VOICE_CALL_MANAGER_PROXY(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), OFONO_MODEM_TYPE_ORG_OFONO_VOICE_CALL_MANAGER_PROXY, OFONOMODEMOrgOfonoVoiceCallManagerProxy))
#define OFONO_MODEM_ORG_OFONO_VOICE_CALL_MANAGER_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), OFONO_MODEM_TYPE_ORG_OFONO_VOICE_CALL_MANAGER_PROXY, OFONOMODEMOrgOfonoVoiceCallManagerProxyClass))
#define OFONO_MODEM_ORG_OFONO_VOICE_CALL_MANAGER_PROXY_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), OFONO_MODEM_TYPE_ORG_OFONO_VOICE_CALL_MANAGER_PROXY, OFONOMODEMOrgOfonoVoiceCallManagerProxyClass))
#define OFONO_MODEM_IS_ORG_OFONO_VOICE_CALL_MANAGER_PROXY(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), OFONO_MODEM_TYPE_ORG_OFONO_VOICE_CALL_MANAGER_PROXY))
#define OFONO_MODEM_IS_ORG_OFONO_VOICE_CALL_MANAGER_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), OFONO_MODEM_TYPE_ORG_OFONO_VOICE_CALL_MANAGER_PROXY))

typedef struct _OFONOMODEMOrgOfonoVoiceCallManagerProxy OFONOMODEMOrgOfonoVoiceCallManagerProxy;
typedef struct _OFONOMODEMOrgOfonoVoiceCallManagerProxyClass OFONOMODEMOrgOfonoVoiceCallManagerProxyClass;
typedef struct _OFONOMODEMOrgOfonoVoiceCallManagerProxyPrivate OFONOMODEMOrgOfonoVoiceCallManagerProxyPrivate;

struct _OFONOMODEMOrgOfonoVoiceCallManagerProxy
{
  /*< private >*/
  GDBusProxy parent_instance;
  OFONOMODEMOrgOfonoVoiceCallManagerProxyPrivate *priv;
};

struct _OFONOMODEMOrgOfonoVoiceCallManagerProxyClass
{
  GDBusProxyClass parent_class;
};

GType ofono_modem_org_ofono_voice_call_manager_proxy_get_type (void) G_GNUC_CONST;

#if GLIB_CHECK_VERSION(2, 44, 0)
G_DEFINE_AUTOPTR_CLEANUP_FUNC (OFONOMODEMOrgOfonoVoiceCallManagerProxy, g_object_unref)
#endif

void ofono_modem_org_ofono_voice_call_manager_proxy_new (
    GDBusConnection     *connection,
    GDBusProxyFlags      flags,
    const gchar         *name,
    const gchar         *object_path,
    GCancellable        *cancellable,
    GAsyncReadyCallback  callback,
    gpointer             user_data);
OFONOMODEMOrgOfonoVoiceCallManager *ofono_modem_org_ofono_voice_call_manager_proxy_new_finish (
    GAsyncResult        *res,
    GError             **error);
OFONOMODEMOrgOfonoVoiceCallManager *ofono_modem_org_ofono_voice_call_manager_proxy_new_sync (
    GDBusConnection     *connection,
    GDBusProxyFlags      flags,
    const gchar         *name,
    const gchar         *object_path,
    GCancellable        *cancellable,
    GError             **error);

void ofono_modem_org_ofono_voice_call_manager_proxy_new_for_bus (
    GBusType             bus_type,
    GDBusProxyFlags      flags,
    const gchar         *name,
    const gchar         *object_path,
    GCancellable        *cancellable,
    GAsyncReadyCallback  callback,
    gpointer             user_data);
OFONOMODEMOrgOfonoVoiceCallManager *ofono_modem_org_ofono_voice_call_manager_proxy_new_for_bus_finish (
    GAsyncResult        *res,
    GError             **error);
OFONOMODEMOrgOfonoVoiceCallManager *ofono_modem_org_ofono_voice_call_manager_proxy_new_for_bus_sync (
    GBusType             bus_type,
    GDBusProxyFlags      flags,
    const gchar         *name,
    const gchar         *object_path,
    GCancellable        *cancellable,
    GError             **error);


/* ---- */

#define OFONO_MODEM_TYPE_ORG_OFONO_VOICE_CALL_MANAGER_SKELETON (ofono_modem_org_ofono_voice_call_manager_skeleton_get_type ())
#define OFONO_MODEM_ORG_OFONO_VOICE_CALL_MANAGER_SKELETON(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), OFONO_MODEM_TYPE_ORG_OFONO_VOICE_CALL_MANAGER_SKELETON, OFONOMODEMOrgOfonoVoiceCallManagerSkeleton))
#define OFONO_MODEM_ORG_OFONO_VOICE_CALL_MANAGER_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), OFONO_MODEM_TYPE_ORG_OFONO_VOICE_CALL_MANAGER_SKELETON, OFONOMODEMOrgOfonoVoiceCallManagerSkeletonClass))
#define OFONO_MODEM_ORG_OFONO_VOICE_CALL_MANAGER_SKELETON_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), OFONO_MODEM_TYPE_ORG_OFONO_VOICE_CALL_MANAGER_SKELETON, OFONOMODEMOrgOfonoVoiceCallManagerSkeletonClass))
#define OFONO_MODEM_IS_ORG_OFONO_VOICE_CALL_MANAGER_SKELETON(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), OFONO_MODEM_TYPE_ORG_OFONO_VOICE_CALL_MANAGER_SKELETON))
#define OFONO_MODEM_IS_ORG_OFONO_VOICE_CALL_MANAGER_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), OFONO_MODEM_TYPE_ORG_OFONO_VOICE_CALL_MANAGER_SKELETON))

typedef struct _OFONOMODEMOrgOfonoVoiceCallManagerSkeleton OFONOMODEMOrgOfonoVoiceCallManagerSkeleton;
typedef struct _OFONOMODEMOrgOfonoVoiceCallManagerSkeletonClass OFONOMODEMOrgOfonoVoiceCallManagerSkeletonClass;
typedef struct _OFONOMODEMOrgOfonoVoiceCallManagerSkeletonPrivate OFONOMODEMOrgOfonoVoiceCallManagerSkeletonPrivate;

struct _OFONOMODEMOrgOfonoVoiceCallManagerSkeleton
{
  /*< private >*/
  GDBusInterfaceSkeleton parent_instance;
  OFONOMODEMOrgOfonoVoiceCallManagerSkeletonPrivate *priv;
};

struct _OFONOMODEMOrgOfonoVoiceCallManagerSkeletonClass
{
  GDBusInterfaceSkeletonClass parent_class;
};

GType ofono_modem_org_ofono_voice_call_manager_skeleton_get_type (void) G_GNUC_CONST;

#if GLIB_CHECK_VERSION(2, 44, 0)
G_DEFINE_AUTOPTR_CLEANUP_FUNC (OFONOMODEMOrgOfonoVoiceCallManagerSkeleton, g_object_unref)
#endif

OFONOMODEMOrgOfonoVoiceCallManager *ofono_modem_org_ofono_voice_call_manager_skeleton_new (void);


/* ---- */

#define OFONO_MODEM_TYPE_OBJECT (ofono_modem_object_get_type ())
#define OFONO_MODEM_OBJECT(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), OFONO_MODEM_TYPE_OBJECT, OFONOMODEMObject))
#define OFONO_MODEM_IS_OBJECT(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), OFONO_MODEM_TYPE_OBJECT))
#define OFONO_MODEM_OBJECT_GET_IFACE(o) (G_TYPE_INSTANCE_GET_INTERFACE ((o), OFONO_MODEM_TYPE_OBJECT, OFONOMODEMObject))

struct _OFONOMODEMObject;
typedef struct _OFONOMODEMObject OFONOMODEMObject;
typedef struct _OFONOMODEMObjectIface OFONOMODEMObjectIface;

struct _OFONOMODEMObjectIface
{
  GTypeInterface parent_iface;
};

GType ofono_modem_object_get_type (void) G_GNUC_CONST;

OFONOMODEMOrgFreedesktopDBusIntrospectable *ofono_modem_object_get_org_freedesktop_dbus_introspectable (OFONOMODEMObject *object);
OFONOMODEMOrgOfonoModem *ofono_modem_object_get_org_ofono_modem (OFONOMODEMObject *object);
OFONOMODEMOrgOfonoNetworkTime *ofono_modem_object_get_org_ofono_network_time (OFONOMODEMObject *object);
OFONOMODEMOrgOfonoNetworkRegistration *ofono_modem_object_get_org_ofono_network_registration (OFONOMODEMObject *object);
OFONOMODEMOrgOfonoHandsfree *ofono_modem_object_get_org_ofono_handsfree (OFONOMODEMObject *object);
OFONOMODEMOrgOfonoCallVolume *ofono_modem_object_get_org_ofono_call_volume (OFONOMODEMObject *object);
OFONOMODEMOrgOfonoVoiceCallManager *ofono_modem_object_get_org_ofono_voice_call_manager (OFONOMODEMObject *object);
OFONOMODEMOrgFreedesktopDBusIntrospectable *ofono_modem_object_peek_org_freedesktop_dbus_introspectable (OFONOMODEMObject *object);
OFONOMODEMOrgOfonoModem *ofono_modem_object_peek_org_ofono_modem (OFONOMODEMObject *object);
OFONOMODEMOrgOfonoNetworkTime *ofono_modem_object_peek_org_ofono_network_time (OFONOMODEMObject *object);
OFONOMODEMOrgOfonoNetworkRegistration *ofono_modem_object_peek_org_ofono_network_registration (OFONOMODEMObject *object);
OFONOMODEMOrgOfonoHandsfree *ofono_modem_object_peek_org_ofono_handsfree (OFONOMODEMObject *object);
OFONOMODEMOrgOfonoCallVolume *ofono_modem_object_peek_org_ofono_call_volume (OFONOMODEMObject *object);
OFONOMODEMOrgOfonoVoiceCallManager *ofono_modem_object_peek_org_ofono_voice_call_manager (OFONOMODEMObject *object);

#define OFONO_MODEM_TYPE_OBJECT_PROXY (ofono_modem_object_proxy_get_type ())
#define OFONO_MODEM_OBJECT_PROXY(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), OFONO_MODEM_TYPE_OBJECT_PROXY, OFONOMODEMObjectProxy))
#define OFONO_MODEM_OBJECT_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), OFONO_MODEM_TYPE_OBJECT_PROXY, OFONOMODEMObjectProxyClass))
#define OFONO_MODEM_OBJECT_PROXY_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), OFONO_MODEM_TYPE_OBJECT_PROXY, OFONOMODEMObjectProxyClass))
#define OFONO_MODEM_IS_OBJECT_PROXY(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), OFONO_MODEM_TYPE_OBJECT_PROXY))
#define OFONO_MODEM_IS_OBJECT_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), OFONO_MODEM_TYPE_OBJECT_PROXY))

typedef struct _OFONOMODEMObjectProxy OFONOMODEMObjectProxy;
typedef struct _OFONOMODEMObjectProxyClass OFONOMODEMObjectProxyClass;
typedef struct _OFONOMODEMObjectProxyPrivate OFONOMODEMObjectProxyPrivate;

struct _OFONOMODEMObjectProxy
{
  /*< private >*/
  GDBusObjectProxy parent_instance;
  OFONOMODEMObjectProxyPrivate *priv;
};

struct _OFONOMODEMObjectProxyClass
{
  GDBusObjectProxyClass parent_class;
};

GType ofono_modem_object_proxy_get_type (void) G_GNUC_CONST;

#if GLIB_CHECK_VERSION(2, 44, 0)
G_DEFINE_AUTOPTR_CLEANUP_FUNC (OFONOMODEMObjectProxy, g_object_unref)
#endif

OFONOMODEMObjectProxy *ofono_modem_object_proxy_new (GDBusConnection *connection, const gchar *object_path);

#define OFONO_MODEM_TYPE_OBJECT_SKELETON (ofono_modem_object_skeleton_get_type ())
#define OFONO_MODEM_OBJECT_SKELETON(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), OFONO_MODEM_TYPE_OBJECT_SKELETON, OFONOMODEMObjectSkeleton))
#define OFONO_MODEM_OBJECT_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), OFONO_MODEM_TYPE_OBJECT_SKELETON, OFONOMODEMObjectSkeletonClass))
#define OFONO_MODEM_OBJECT_SKELETON_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), OFONO_MODEM_TYPE_OBJECT_SKELETON, OFONOMODEMObjectSkeletonClass))
#define OFONO_MODEM_IS_OBJECT_SKELETON(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), OFONO_MODEM_TYPE_OBJECT_SKELETON))
#define OFONO_MODEM_IS_OBJECT_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), OFONO_MODEM_TYPE_OBJECT_SKELETON))

typedef struct _OFONOMODEMObjectSkeleton OFONOMODEMObjectSkeleton;
typedef struct _OFONOMODEMObjectSkeletonClass OFONOMODEMObjectSkeletonClass;
typedef struct _OFONOMODEMObjectSkeletonPrivate OFONOMODEMObjectSkeletonPrivate;

struct _OFONOMODEMObjectSkeleton
{
  /*< private >*/
  GDBusObjectSkeleton parent_instance;
  OFONOMODEMObjectSkeletonPrivate *priv;
};

struct _OFONOMODEMObjectSkeletonClass
{
  GDBusObjectSkeletonClass parent_class;
};

GType ofono_modem_object_skeleton_get_type (void) G_GNUC_CONST;

#if GLIB_CHECK_VERSION(2, 44, 0)
G_DEFINE_AUTOPTR_CLEANUP_FUNC (OFONOMODEMObjectSkeleton, g_object_unref)
#endif

OFONOMODEMObjectSkeleton *ofono_modem_object_skeleton_new (const gchar *object_path);
void ofono_modem_object_skeleton_set_org_freedesktop_dbus_introspectable (OFONOMODEMObjectSkeleton *object, OFONOMODEMOrgFreedesktopDBusIntrospectable *interface_);
void ofono_modem_object_skeleton_set_org_ofono_modem (OFONOMODEMObjectSkeleton *object, OFONOMODEMOrgOfonoModem *interface_);
void ofono_modem_object_skeleton_set_org_ofono_network_time (OFONOMODEMObjectSkeleton *object, OFONOMODEMOrgOfonoNetworkTime *interface_);
void ofono_modem_object_skeleton_set_org_ofono_network_registration (OFONOMODEMObjectSkeleton *object, OFONOMODEMOrgOfonoNetworkRegistration *interface_);
void ofono_modem_object_skeleton_set_org_ofono_handsfree (OFONOMODEMObjectSkeleton *object, OFONOMODEMOrgOfonoHandsfree *interface_);
void ofono_modem_object_skeleton_set_org_ofono_call_volume (OFONOMODEMObjectSkeleton *object, OFONOMODEMOrgOfonoCallVolume *interface_);
void ofono_modem_object_skeleton_set_org_ofono_voice_call_manager (OFONOMODEMObjectSkeleton *object, OFONOMODEMOrgOfonoVoiceCallManager *interface_);

/* ---- */

#define OFONO_MODEM_TYPE_OBJECT_MANAGER_CLIENT (ofono_modem_object_manager_client_get_type ())
#define OFONO_MODEM_OBJECT_MANAGER_CLIENT(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), OFONO_MODEM_TYPE_OBJECT_MANAGER_CLIENT, OFONOMODEMObjectManagerClient))
#define OFONO_MODEM_OBJECT_MANAGER_CLIENT_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), OFONO_MODEM_TYPE_OBJECT_MANAGER_CLIENT, OFONOMODEMObjectManagerClientClass))
#define OFONO_MODEM_OBJECT_MANAGER_CLIENT_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), OFONO_MODEM_TYPE_OBJECT_MANAGER_CLIENT, OFONOMODEMObjectManagerClientClass))
#define OFONO_MODEM_IS_OBJECT_MANAGER_CLIENT(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), OFONO_MODEM_TYPE_OBJECT_MANAGER_CLIENT))
#define OFONO_MODEM_IS_OBJECT_MANAGER_CLIENT_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), OFONO_MODEM_TYPE_OBJECT_MANAGER_CLIENT))

typedef struct _OFONOMODEMObjectManagerClient OFONOMODEMObjectManagerClient;
typedef struct _OFONOMODEMObjectManagerClientClass OFONOMODEMObjectManagerClientClass;
typedef struct _OFONOMODEMObjectManagerClientPrivate OFONOMODEMObjectManagerClientPrivate;

struct _OFONOMODEMObjectManagerClient
{
  /*< private >*/
  GDBusObjectManagerClient parent_instance;
  OFONOMODEMObjectManagerClientPrivate *priv;
};

struct _OFONOMODEMObjectManagerClientClass
{
  GDBusObjectManagerClientClass parent_class;
};

#if GLIB_CHECK_VERSION(2, 44, 0)
G_DEFINE_AUTOPTR_CLEANUP_FUNC (OFONOMODEMObjectManagerClient, g_object_unref)
#endif

GType ofono_modem_object_manager_client_get_type (void) G_GNUC_CONST;

GType ofono_modem_object_manager_client_get_proxy_type (GDBusObjectManagerClient *manager, const gchar *object_path, const gchar *interface_name, gpointer user_data);

void ofono_modem_object_manager_client_new (
    GDBusConnection        *connection,
    GDBusObjectManagerClientFlags  flags,
    const gchar            *name,
    const gchar            *object_path,
    GCancellable           *cancellable,
    GAsyncReadyCallback     callback,
    gpointer                user_data);
GDBusObjectManager *ofono_modem_object_manager_client_new_finish (
    GAsyncResult        *res,
    GError             **error);
GDBusObjectManager *ofono_modem_object_manager_client_new_sync (
    GDBusConnection        *connection,
    GDBusObjectManagerClientFlags  flags,
    const gchar            *name,
    const gchar            *object_path,
    GCancellable           *cancellable,
    GError                **error);

void ofono_modem_object_manager_client_new_for_bus (
    GBusType                bus_type,
    GDBusObjectManagerClientFlags  flags,
    const gchar            *name,
    const gchar            *object_path,
    GCancellable           *cancellable,
    GAsyncReadyCallback     callback,
    gpointer                user_data);
GDBusObjectManager *ofono_modem_object_manager_client_new_for_bus_finish (
    GAsyncResult        *res,
    GError             **error);
GDBusObjectManager *ofono_modem_object_manager_client_new_for_bus_sync (
    GBusType                bus_type,
    GDBusObjectManagerClientFlags  flags,
    const gchar            *name,
    const gchar            *object_path,
    GCancellable           *cancellable,
    GError                **error);


G_END_DECLS

#endif /* __LIB_OFONO_MODEM_H__ */