GDBusInterface

GDBusInterface — Base type for D-Bus interfaces

Synopsis

#include <gio/gio.h>

                    GDBusInterface;
struct              GDBusInterfaceIface;
GDBusInterfaceInfo * g_dbus_interface_get_info          (GDBusInterface *interface_);
GDBusObject *       g_dbus_interface_get_object         (GDBusInterface *interface_);
GDBusObject *       g_dbus_interface_dup_object         (GDBusInterface *interface_);
void                g_dbus_interface_set_object         (GDBusInterface *interface_,
                                                         GDBusObject *object);

Object Hierarchy

  GInterface
   +----GDBusInterface

Prerequisites

GDBusInterface requires GObject.

Known Implementations

GDBusInterface is implemented by GDBusInterfaceSkeleton and GDBusProxy.

Description

The GDBusInterface type is the base type for D-Bus interfaces both on the service side (see GDBusInterfaceSkeleton) and client side (see GDBusProxy).

Details

GDBusInterface

typedef struct _GDBusInterface GDBusInterface;

Base type for D-Bus interfaces.

Since 2.30


struct GDBusInterfaceIface

struct GDBusInterfaceIface {
  GTypeInterface parent_iface;

  /* Virtual Functions */
  GDBusInterfaceInfo   *(*get_info)   (GDBusInterface      *interface_);
  GDBusObject          *(*get_object) (GDBusInterface      *interface_);
  void                  (*set_object) (GDBusInterface      *interface_,
                                       GDBusObject         *object);
  GDBusObject          *(*dup_object) (GDBusInterface      *interface_);
};

Base type for D-Bus interfaces.

GTypeInterface parent_iface;

The parent interface.

get_info ()

Returns a GDBusInterfaceInfo. See g_dbus_interface_get_info().

get_object ()

Gets the enclosing GDBusObject. See g_dbus_interface_get_object().

set_object ()

Sets the enclosing GDBusObject. See g_dbus_interface_set_object().

dup_object ()

Gets a reference to the enclosing GDBusObject. See g_dbus_interface_dup_object(). Added in 2.32.

Since 2.30


g_dbus_interface_get_info ()

GDBusInterfaceInfo * g_dbus_interface_get_info          (GDBusInterface *interface_);

Gets D-Bus introspection information for the D-Bus interface implemented by interface_.

interface_ :

An exported D-Bus interface.

Returns :

A GDBusInterfaceInfo. Do not free. [transfer none]

Since 2.30


g_dbus_interface_get_object ()

GDBusObject *       g_dbus_interface_get_object         (GDBusInterface *interface_);

Gets the GDBusObject that interface_ belongs to, if any.

Warning

It is not safe to use the returned object if interface_ or the returned object is being used from other threads. See g_dbus_interface_dup_object() for a thread-safe alternative.

interface_ :

An exported D-Bus interface.

Returns :

A GDBusObject or NULL. The returned reference belongs to interface_ and should not be freed. [transfer none]

Since 2.30


g_dbus_interface_dup_object ()

GDBusObject *       g_dbus_interface_dup_object         (GDBusInterface *interface_);

Gets the GDBusObject that interface_ belongs to, if any.

interface_ :

An exported D-Bus interface.

Returns :

A GDBusObject or NULL. The returned reference should be freed with g_object_unref(). [transfer full]

Since 2.32


g_dbus_interface_set_object ()

void                g_dbus_interface_set_object         (GDBusInterface *interface_,
                                                         GDBusObject *object);

Sets the GDBusObject for interface_ to object.

Note that interface_ will hold a weak reference to object.

interface_ :

An exported D-Bus interface.

object :

A GDBusObject or NULL. [allow-none]

Since 2.30