## Service-side Account interfaces

Service-side Account interfaces — GInterfaces for Telepathy Account objects

## Functions

void | tp_svc_account_emit_account_property_changed ()
void | tp_svc_account_emit_removed ()
void | (*tp_svc_account_reconnect_impl) ()
void | tp_svc_account_return_from_reconnect ()
void | tp_svc_account_implement_reconnect ()
void | (*tp_svc_account_remove_impl) ()
void | tp_svc_account_return_from_remove ()
void | tp_svc_account_implement_remove ()
void | (*tp_svc_account_update_parameters_impl) ()
void | tp_svc_account_return_from_update_parameters ()
void | tp_svc_account_implement_update_parameters ()
void | tp_svc_account_interface_avatar_emit_avatar_changed ()
void | tp_svc_account_interface_addressing_implement_set_uri_scheme_association ()
void | tp_svc_account_interface_addressing_return_from_set_uri_scheme_association ()
void | (*tp_svc_account_interface_addressing_set_uri_scheme_association_impl) ()

## Signals

void | account-property-changed | Has Details
void | removed | Has Details
void | avatar-changed | Has Details

## Types and Values

| TpSvcAccount
| TpSvcAccountClass
| TpSvcAccountInterfaceAvatar
| TpSvcAccountInterfaceAvatarClass
| TpSvcAccountInterfaceStorage
| TpSvcAccountInterfaceStorageClass
| TpSvcAccountInterfaceAddressing
| TpSvcAccountInterfaceAddressingClass

## Object Hierarchy

        GInterface
        ├── TpSvcAccount
        ├── TpSvcAccountInterfaceAddressing
        ├── TpSvcAccountInterfaceAvatar
        ╰── TpSvcAccountInterfaceStorage

## Includes

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

## Description

These interfaces (auto-generated from the Telepathy spec) make it easier to export objects implementing the Telepathy Account and its optional interfaces, with the correct method and signal signatures, and emit signals from those objects in a type-safe way.

You don't need these interfaces unless you're implementing a Telepathy AccountManager, such as Mission Control.

## Functions

### tp_svc_account_emit_account_property_changed ()

    void
    tp_svc_account_emit_account_property_changed
                                   (gpointer instance,
                                    GHashTable *arg_Properties);

Type-safe wrapper around g_signal_emit to emit the AccountPropertyChanged signal on interface org.freedesktop.Telepathy.Account.

#### Parameters

instance | The object implementing this interface |
arg_Properties | GHashTable * (FIXME, generate documentation) |

### tp_svc_account_emit_removed ()

    void
    tp_svc_account_emit_removed (gpointer instance);

Type-safe wrapper around g_signal_emit to emit the Removed signal on interface org.freedesktop.Telepathy.Account.

#### Parameters

instance | The object implementing this interface |

### tp_svc_account_reconnect_impl ()

    void
    (*tp_svc_account_reconnect_impl) (TpSvcAccount *self,
                                      DBusGMethodInvocation *context);

The signature of an implementation of the D-Bus method Reconnect on interface org.freedesktop.Telepathy.Account.

#### Parameters

self | The object implementing this interface |
context | Used to return values or throw an error |

### tp_svc_account_return_from_reconnect ()

    void
    tp_svc_account_return_from_reconnect (DBusGMethodInvocation *context);

Return successfully by calling `dbus_g_method_return()`. This inline function exists only to provide type-safety.

#### Parameters

context | The D-Bus method invocation context |

### tp_svc_account_implement_reconnect ()

    void
    tp_svc_account_implement_reconnect (TpSvcAccountClass *klass,
                                        tp_svc_account_reconnect_impl impl);

Register an implementation for the Reconnect method in the vtable of an implementation of this interface. To be called from the interface init function.

#### Parameters

klass | A class whose instances implement this interface |
impl | A callback used to implement the Reconnect D-Bus method |

### tp_svc_account_remove_impl ()

    void
    (*tp_svc_account_remove_impl) (TpSvcAccount *self,
                                   DBusGMethodInvocation *context);

The signature of an implementation of the D-Bus method Remove on interface org.freedesktop.Telepathy.Account.

#### Parameters

self | The object implementing this interface |
context | Used to return values or throw an error |

### tp_svc_account_return_from_remove ()

    void
    tp_svc_account_return_from_remove (DBusGMethodInvocation *context);

Return successfully by calling `dbus_g_method_return()`. This inline function exists only to provide type-safety.

#### Parameters

context | The D-Bus method invocation context |

### tp_svc_account_implement_remove ()

    void
    tp_svc_account_implement_remove (TpSvcAccountClass *klass,
                                     tp_svc_account_remove_impl impl);

Register an implementation for the Remove method in the vtable of an implementation of this interface. To be called from the interface init function.

#### Parameters

klass | A class whose instances implement this interface |
impl | A callback used to implement the Remove D-Bus method |

### tp_svc_account_update_parameters_impl ()

    void
    (*tp_svc_account_update_parameters_impl)
                                   (TpSvcAccount *self,
                                    GHashTable *in_Set,
                                    const gchar **in_Unset,
                                    DBusGMethodInvocation *context);

The signature of an implementation of the D-Bus method UpdateParameters on interface org.freedesktop.Telepathy.Account.

#### Parameters

self | The object implementing this interface |
in_Set | GHashTable * (FIXME, generate documentation) |
in_Unset | const gchar ** (FIXME, generate documentation) |
context | Used to return values or throw an error |

### tp_svc_account_return_from_update_parameters ()

    void
    tp_svc_account_return_from_update_parameters
                                   (DBusGMethodInvocation *context,
                                    const gchar **out_Reconnect_Required);

Return successfully by calling `dbus_g_method_return()`. This inline function exists only to provide type-safety.

#### Parameters

context | The D-Bus method invocation context |
out_Reconnect_Required | const gchar ** (FIXME, generate documentation) |

### tp_svc_account_implement_update_parameters ()

    void
    tp_svc_account_implement_update_parameters
                                   (TpSvcAccountClass *klass,
                                    tp_svc_account_update_parameters_impl impl);

Register an implementation for the UpdateParameters method in the vtable of an implementation of this interface. To be called from the interface init function.

#### Parameters

klass | A class whose instances implement this interface |
impl | A callback used to implement the UpdateParameters D-Bus method |

### tp_svc_account_interface_avatar_emit_avatar_changed ()

    void
    tp_svc_account_interface_avatar_emit_avatar_changed
                                   (gpointer instance);

Type-safe wrapper around g_signal_emit to emit the AvatarChanged signal on interface org.freedesktop.Telepathy.Account.Interface.Avatar.

#### Parameters

instance | The object implementing this interface |

### tp_svc_account_interface_addressing_implement_set_uri_scheme_association ()

    void
    tp_svc_account_interface_addressing_implement_set_uri_scheme_association
                                   (TpSvcAccountInterfaceAddressingClass *klass,
                                    tp_svc_account_interface_addressing_set_uri_scheme_association_impl impl);

Register an implementation for the SetURISchemeAssociation method in the vtable of an implementation of this interface. To be called from the interface init function.

#### Parameters

klass | A class whose instances implement this interface |
impl | A callback used to implement the SetURISchemeAssociation D-Bus method |

### tp_svc_account_interface_addressing_return_from_set_uri_scheme_association ()

    void
    tp_svc_account_interface_addressing_return_from_set_uri_scheme_association
                                   (DBusGMethodInvocation *context);

Return successfully by calling `dbus_g_method_return()`. This inline function exists only to provide type-safety.

#### Parameters

context | The D-Bus method invocation context |

### tp_svc_account_interface_addressing_set_uri_scheme_association_impl ()

    void
    (*tp_svc_account_interface_addressing_set_uri_scheme_association_impl)
                                   (TpSvcAccountInterfaceAddressing *self,
                                    const gchar *in_URI_Scheme,
                                    gboolean in_Association,
                                    DBusGMethodInvocation *context);

The signature of an implementation of the D-Bus method SetURISchemeAssociation on interface org.freedesktop.Telepathy.Account.Interface.Addressing.

#### Parameters

self | The object implementing this interface |
in_URI_Scheme | const gchar * (FIXME, generate documentation) |
in_Association | gboolean (FIXME, generate documentation) |
context | Used to return values or throw an error |

## Types and Values

### TpSvcAccount

    typedef struct _TpSvcAccount TpSvcAccount;

Dummy typedef representing any implementation of this interface.

### TpSvcAccountClass

    typedef struct _TpSvcAccountClass TpSvcAccountClass;

The class of TpSvcAccount.

In a full implementation of this interface (i.e. all methods implemented), the interface initialization function used in `G_IMPLEMENT_INTERFACE()` would typically look like this:

    static void
    implement_account (gpointer klass,
        gpointer unused G_GNUC_UNUSED)
    {
    #define IMPLEMENT(x) tp_svc_account_implement_##x (\
      klass, my_object_##x)
      IMPLEMENT (remove);
      IMPLEMENT (update_parameters);
      IMPLEMENT (reconnect);
    #undef IMPLEMENT
    }

### TpSvcAccountInterfaceAvatar

    typedef struct _TpSvcAccountInterfaceAvatar TpSvcAccountInterfaceAvatar;

Dummy typedef representing any implementation of this interface.

### TpSvcAccountInterfaceAvatarClass

    typedef struct _TpSvcAccountInterfaceAvatarClass TpSvcAccountInterfaceAvatarClass;

The class of TpSvcAccountInterfaceAvatar. This interface has no D-Bus methods, so an implementation can typically pass `NULL` to `G_IMPLEMENT_INTERFACE()` as the interface initialization function.

### TpSvcAccountInterfaceStorage

    typedef struct _TpSvcAccountInterfaceStorage TpSvcAccountInterfaceStorage;

Dummy typedef representing any implementation of this interface.

### TpSvcAccountInterfaceStorageClass

    typedef struct _TpSvcAccountInterfaceStorageClass TpSvcAccountInterfaceStorageClass;

The class of TpSvcAccountInterfaceStorage. This interface has no D-Bus methods, so an implementation can typically pass `NULL` to `G_IMPLEMENT_INTERFACE()` as the interface initialization function.

### TpSvcAccountInterfaceAddressing

    typedef struct _TpSvcAccountInterfaceAddressing TpSvcAccountInterfaceAddressing;

Dummy typedef representing any implementation of this interface.

### TpSvcAccountInterfaceAddressingClass

    typedef struct _TpSvcAccountInterfaceAddressingClass TpSvcAccountInterfaceAddressingClass;

The class of TpSvcAccountInterfaceAddressing.

In a full implementation of this interface (i.e. all methods implemented), the interface initialization function used in `G_IMPLEMENT_INTERFACE()` would typically look like this:

    static void
    implement_account_interface_addressing (gpointer klass,
        gpointer unused G_GNUC_UNUSED)
    {
    #define IMPLEMENT(x) tp_svc_account_interface_addressing_implement_##x (\
      klass, my_object_##x)
      IMPLEMENT (set_uri_scheme_association);
    #undef IMPLEMENT
    }

## Signal Details

### The `“account-property-changed”` signal

    void
    user_function (TpSvcAccount *self,
                   gpointer      user_data)

The AccountPropertyChanged D-Bus signal is emitted whenever this GObject signal is.

#### Parameters

self | an object |
arg_Properties | GHashTable * (FIXME, generate documentation) |
user_data | user data set when the signal handler was connected. |

Flags: Has Details

### The `“removed”` signal

    void
    user_function (TpSvcAccount *self,
                   gpointer      user_data)

The Removed D-Bus signal is emitted whenever this GObject signal is.

#### Parameters

self | an object |
user_data | user data set when the signal handler was connected. |

Flags: Has Details

### The `“avatar-changed”` signal

    void
    user_function (TpSvcAccountInterfaceAvatar *self,
                   gpointer                     user_data)

The AvatarChanged D-Bus signal is emitted whenever this GObject signal is.

#### Parameters

self | an object |
user_data | user data set when the signal handler was connected. |

Flags: Has Details