![]() |
![]() |
![]() |
GIO Reference Manual | ![]() |
---|---|---|---|---|
Top | Description |
#include <gio/gio.h> GDBusAnnotationInfo; GDBusArgInfo; GDBusMethodInfo; GDBusSignalInfo; enum GDBusPropertyInfoFlags; GDBusPropertyInfo; GDBusInterfaceInfo; GDBusNodeInfo; const gchar * g_dbus_annotation_info_lookup (const GDBusAnnotationInfo **annotations
,const gchar *name
); const GDBusMethodInfo * g_dbus_interface_info_lookup_method (const GDBusInterfaceInfo *info
,const gchar *name
); const GDBusSignalInfo * g_dbus_interface_info_lookup_signal (const GDBusInterfaceInfo *info
,const gchar *name
); const GDBusPropertyInfo * g_dbus_interface_info_lookup_property (const GDBusInterfaceInfo *info
,const gchar *name
); void g_dbus_interface_info_generate_xml (const GDBusInterfaceInfo *info
,guint indent
,GString *string_builder
); GDBusNodeInfo * g_dbus_node_info_new_for_xml (const gchar *xml_data
,GError **error
); const GDBusInterfaceInfo * g_dbus_node_info_lookup_interface (const GDBusNodeInfo *info
,const gchar *name
); void g_dbus_node_info_generate_xml (const GDBusNodeInfo *info
,guint indent
,GString *string_builder
); GDBusNodeInfo * g_dbus_node_info_ref (GDBusNodeInfo *info
); GDBusInterfaceInfo * g_dbus_interface_info_ref (GDBusInterfaceInfo *info
); GDBusMethodInfo * g_dbus_method_info_ref (GDBusMethodInfo *info
); GDBusSignalInfo * g_dbus_signal_info_ref (GDBusSignalInfo *info
); GDBusPropertyInfo * g_dbus_property_info_ref (GDBusPropertyInfo *info
); GDBusArgInfo * g_dbus_arg_info_ref (GDBusArgInfo *info
); GDBusAnnotationInfo * g_dbus_annotation_info_ref (GDBusAnnotationInfo *info
); void g_dbus_node_info_unref (GDBusNodeInfo *info
); void g_dbus_interface_info_unref (GDBusInterfaceInfo *info
); void g_dbus_method_info_unref (GDBusMethodInfo *info
); void g_dbus_signal_info_unref (GDBusSignalInfo *info
); void g_dbus_property_info_unref (GDBusPropertyInfo *info
); void g_dbus_arg_info_unref (GDBusArgInfo *info
); void g_dbus_annotation_info_unref (GDBusAnnotationInfo *info
);
Various data structures and convenience routines to parse and
generate D-Bus introspection XML. Introspection information is
used when registering objects with g_dbus_connection_register_object()
.
The format of D-BUs introspection XML is specified in the D-Bus specification.
typedef struct { volatile gint ref_count; gchar *key; gchar *value; GDBusAnnotationInfo **annotations; } GDBusAnnotationInfo;
Information about an annotation.
volatile gint |
The reference count or -1 if statically allocated. |
gchar * |
The name of the annotation, e.g. "org.freedesktop.DBus.Deprecated". |
gchar * |
The value of the annotation. |
GDBusAnnotationInfo ** |
A pointer to a NULL -terminated array of pointers to GDBusAnnotationInfo structures or NULL if there are no annotations.
|
Since 2.26
typedef struct { volatile gint ref_count; gchar *name; gchar *signature; GDBusAnnotationInfo **annotations; } GDBusArgInfo;
Information about an argument for a method or a signal.
volatile gint |
The reference count or -1 if statically allocated. |
gchar * |
Name of the argument, e.g. unix_user_id .
|
gchar * |
D-Bus signature of the argument (a single complete type). |
GDBusAnnotationInfo ** |
A pointer to a NULL -terminated array of pointers to GDBusAnnotationInfo structures or NULL if there are no annotations.
|
Since 2.26
typedef struct { volatile gint ref_count; gchar *name; GDBusArgInfo **in_args; GDBusArgInfo **out_args; GDBusAnnotationInfo **annotations; } GDBusMethodInfo;
Information about a method on an D-Bus interface.
volatile gint |
The reference count or -1 if statically allocated. |
gchar * |
The name of the D-Bus method, e.g. RequestName .
|
GDBusArgInfo ** |
A pointer to a NULL -terminated array of pointers to GDBusArgInfo structures or NULL if there are no in arguments.
|
GDBusArgInfo ** |
A pointer to a NULL -terminated array of pointers to GDBusArgInfo structures or NULL if there are no out arguments.
|
GDBusAnnotationInfo ** |
A pointer to a NULL -terminated array of pointers to GDBusAnnotationInfo structures or NULL if there are no annotations.
|
Since 2.26
typedef struct { volatile gint ref_count; gchar *name; GDBusArgInfo **args; GDBusAnnotationInfo **annotations; } GDBusSignalInfo;
Information about a signal on a D-Bus interface.
volatile gint |
The reference count or -1 if statically allocated. |
gchar * |
The name of the D-Bus signal, e.g. "NameOwnerChanged". |
GDBusArgInfo ** |
A pointer to a NULL -terminated array of pointers to GDBusArgInfo structures or NULL if there are no arguments.
|
GDBusAnnotationInfo ** |
A pointer to a NULL -terminated array of pointers to GDBusAnnotationInfo structures or NULL if there are no annotations.
|
Since 2.26
typedef enum { G_DBUS_PROPERTY_INFO_FLAGS_NONE = 0, G_DBUS_PROPERTY_INFO_FLAGS_READABLE = (1<<0), G_DBUS_PROPERTY_INFO_FLAGS_WRITABLE = (1<<1), } GDBusPropertyInfoFlags;
Flags describing the access control of a D-Bus property.
No flags set. | |
Property is readable. | |
Property is writable. |
Since 2.26
typedef struct { volatile gint ref_count; gchar *name; gchar *signature; GDBusPropertyInfoFlags flags; GDBusAnnotationInfo **annotations; } GDBusPropertyInfo;
Information about a D-Bus property on a D-Bus interface.
volatile gint |
The reference count or -1 if statically allocated. |
gchar * |
The name of the D-Bus property, e.g. "SupportedFilesystems". |
gchar * |
The D-Bus signature of the property (a single complete type). |
GDBusPropertyInfoFlags |
Access control flags for the property. |
GDBusAnnotationInfo ** |
A pointer to a NULL -terminated array of pointers to GDBusAnnotationInfo structures or NULL if there are no annotations.
|
Since 2.26
typedef struct { volatile gint ref_count; gchar *name; GDBusMethodInfo **methods; GDBusSignalInfo **signals; GDBusPropertyInfo **properties; GDBusAnnotationInfo **annotations; } GDBusInterfaceInfo;
Information about a D-Bus interface.
volatile gint |
The reference count or -1 if statically allocated. |
gchar * |
The name of the D-Bus interface, e.g. "org.freedesktop.DBus.Properties". |
GDBusMethodInfo ** |
A pointer to a NULL -terminated array of pointers to GDBusMethodInfo structures or NULL if there are no methods.
|
GDBusSignalInfo ** |
A pointer to a NULL -terminated array of pointers to GDBusSignalInfo structures or NULL if there are no signals.
|
GDBusPropertyInfo ** |
A pointer to a NULL -terminated array of pointers to GDBusPropertyInfo structures or NULL if there are no properties.
|
GDBusAnnotationInfo ** |
A pointer to a NULL -terminated array of pointers to GDBusAnnotationInfo structures or NULL if there are no annotations.
|
Since 2.26
typedef struct { volatile gint ref_count; gchar *path; GDBusInterfaceInfo **interfaces; GDBusNodeInfo **nodes; GDBusAnnotationInfo **annotations; } GDBusNodeInfo;
Information about nodes in a remote object hierarchy.
volatile gint |
The reference count or -1 if statically allocated. |
gchar * |
The path of the node or NULL if omitted. Note that this may be a relative path. See the D-Bus specification for more details.
|
GDBusInterfaceInfo ** |
A pointer to a NULL -terminated array of pointers to GDBusInterfaceInfo structures or NULL if there are no interfaces.
|
GDBusNodeInfo ** |
A pointer to a NULL -terminated array of pointers to GDBusNodeInfo structures or NULL if there are no nodes.
|
GDBusAnnotationInfo ** |
A pointer to a NULL -terminated array of pointers to GDBusAnnotationInfo structures or NULL if there are no annotations.
|
Since 2.26
const gchar * g_dbus_annotation_info_lookup (const GDBusAnnotationInfo **annotations
,const gchar *name
);
Looks up the value of an annotation.
This cost of this function is O(n) in number of annotations.
|
A NULL -terminated array of annotations or NULL .
|
|
The name of the annotation to look up. |
Returns : |
The value or NULL if not found. Do not free, it is owned by annotations .
|
Since 2.26
const GDBusMethodInfo * g_dbus_interface_info_lookup_method (const GDBusInterfaceInfo *info
,const gchar *name
);
Looks up information about a method.
This cost of this function is O(n) in number of methods.
|
A GDBusInterfaceInfo. |
|
A D-Bus method name (typically in CamelCase) |
Returns : |
A GDBusMethodInfo or NULL if not found. Do not free, it is owned by info .
|
Since 2.26
const GDBusSignalInfo * g_dbus_interface_info_lookup_signal (const GDBusInterfaceInfo *info
,const gchar *name
);
Looks up information about a signal.
This cost of this function is O(n) in number of signals.
|
A GDBusInterfaceInfo. |
|
A D-Bus signal name (typically in CamelCase) |
Returns : |
A GDBusSignalInfo or NULL if not found. Do not free, it is owned by info .
|
Since 2.26
const GDBusPropertyInfo * g_dbus_interface_info_lookup_property (const GDBusInterfaceInfo *info
,const gchar *name
);
Looks up information about a property.
This cost of this function is O(n) in number of properties.
|
A GDBusInterfaceInfo. |
|
A D-Bus property name (typically in CamelCase). |
Returns : |
A GDBusPropertyInfo or NULL if not found. Do not free, it is owned by info .
|
Since 2.26
void g_dbus_interface_info_generate_xml (const GDBusInterfaceInfo *info
,guint indent
,GString *string_builder
);
Appends an XML representation of info
(and its children) to string_builder
.
This function is typically used for generating introspection XML
documents at run-time for handling the
org.freedesktop.DBus.Introspectable.Introspect
method.
|
A GDBusNodeInfo |
|
Indentation level. |
|
A GString to to append XML data to. |
Since 2.26
GDBusNodeInfo * g_dbus_node_info_new_for_xml (const gchar *xml_data
,GError **error
);
Parses xml_data
and returns a GDBusNodeInfo representing the data.
|
Valid D-Bus introspection XML. |
|
Return location for error. |
Returns : |
A GDBusNodeInfo structure or NULL if error is set. Free
with g_dbus_node_info_unref() .
|
Since 2.26
const GDBusInterfaceInfo * g_dbus_node_info_lookup_interface (const GDBusNodeInfo *info
,const gchar *name
);
Looks up information about an interface.
This cost of this function is O(n) in number of interfaces.
|
A GDBusNodeInfo. |
|
A D-Bus interface name. |
Returns : |
A GDBusInterfaceInfo or NULL if not found. Do not free, it is owned by info .
|
Since 2.26
void g_dbus_node_info_generate_xml (const GDBusNodeInfo *info
,guint indent
,GString *string_builder
);
Appends an XML representation of info
(and its children) to string_builder
.
This function is typically used for generating introspection XML documents at run-time for
handling the org.freedesktop.DBus.Introspectable.Introspect
method.
|
A GDBusNodeInfo. |
|
Indentation level. |
|
A GString to to append XML data to. |
Since 2.26
GDBusNodeInfo * g_dbus_node_info_ref (GDBusNodeInfo *info
);
If info
is statically allocated does nothing. Otherwise increases
the reference count.
|
A GDBusNodeInfo |
Returns : |
The same info .
|
Since 2.26
GDBusInterfaceInfo * g_dbus_interface_info_ref (GDBusInterfaceInfo *info
);
If info
is statically allocated does nothing. Otherwise increases
the reference count.
|
A GDBusInterfaceInfo |
Returns : |
The same info .
|
Since 2.26
GDBusMethodInfo * g_dbus_method_info_ref (GDBusMethodInfo *info
);
If info
is statically allocated does nothing. Otherwise increases
the reference count.
|
A GDBusMethodInfo |
Returns : |
The same info .
|
Since 2.26
GDBusSignalInfo * g_dbus_signal_info_ref (GDBusSignalInfo *info
);
If info
is statically allocated does nothing. Otherwise increases
the reference count.
|
A GDBusSignalInfo |
Returns : |
The same info .
|
Since 2.26
GDBusPropertyInfo * g_dbus_property_info_ref (GDBusPropertyInfo *info
);
If info
is statically allocated does nothing. Otherwise increases
the reference count.
|
A GDBusPropertyInfo |
Returns : |
The same info .
|
Since 2.26
GDBusArgInfo * g_dbus_arg_info_ref (GDBusArgInfo *info
);
If info
is statically allocated does nothing. Otherwise increases
the reference count.
|
A GDBusArgInfo |
Returns : |
The same info .
|
Since 2.26
GDBusAnnotationInfo * g_dbus_annotation_info_ref (GDBusAnnotationInfo *info
);
If info
is statically allocated does nothing. Otherwise increases
the reference count.
|
A GDBusNodeInfo |
Returns : |
The same info .
|
Since 2.26
void g_dbus_node_info_unref (GDBusNodeInfo *info
);
If info
is statically allocated, does nothing. Otherwise decreases
the reference count of info
. When its reference count drops to 0,
the memory used is freed.
|
A GDBusNodeInfo. |
Since 2.26
void g_dbus_interface_info_unref (GDBusInterfaceInfo *info
);
If info
is statically allocated, does nothing. Otherwise decreases
the reference count of info
. When its reference count drops to 0,
the memory used is freed.
|
A GDBusInterfaceInfo. |
Since 2.26
void g_dbus_method_info_unref (GDBusMethodInfo *info
);
If info
is statically allocated, does nothing. Otherwise decreases
the reference count of info
. When its reference count drops to 0,
the memory used is freed.
|
A GDBusMethodInfo. |
Since 2.26
void g_dbus_signal_info_unref (GDBusSignalInfo *info
);
If info
is statically allocated, does nothing. Otherwise decreases
the reference count of info
. When its reference count drops to 0,
the memory used is freed.
|
A GDBusSignalInfo. |
Since 2.26
void g_dbus_property_info_unref (GDBusPropertyInfo *info
);
If info
is statically allocated, does nothing. Otherwise decreases
the reference count of info
. When its reference count drops to 0,
the memory used is freed.
|
A GDBusPropertyInfo. |
Since 2.26
void g_dbus_arg_info_unref (GDBusArgInfo *info
);
If info
is statically allocated, does nothing. Otherwise decreases
the reference count of info
. When its reference count drops to 0,
the memory used is freed.
|
A GDBusArgInfo. |
Since 2.26
void g_dbus_annotation_info_unref (GDBusAnnotationInfo *info
);
If info
is statically allocated, does nothing. Otherwise decreases
the reference count of info
. When its reference count drops to 0,
the memory used is freed.
|
A GDBusAnnotationInfo. |
Since 2.26