Method
RBRhythmDBentry_request_extra_metadata
Declaration [src]
GValue*
rhythmdb_entry_request_extra_metadata (
RhythmDB* db,
RhythmDBEntry* entry,
const gchar* property_name
)
Description [src]
Emits a request for extra metadata for the entry
.
The property_name
argument is emitted as the ::detail part of the
“entry_extra_metadata_request” signal. It should be a namespaced RDF
predicate e.g. from Dublin Core, MusicBrainz, or internal to Rhythmbox
(namespace “rb:”). Suitable predicates would be those that are expensive to
acquire or only apply to a limited range of entries.
Handlers capable of providing a particular predicate may ensure they only
see appropriate requests by supplying an appropriate ::detail part when
connecting to the signal. Upon a handler returning a non-NULL
value,
emission will be stopped and the value returned to the caller; if no
handlers return a non-NULL
value, the caller will receive NULL
. Priority
is determined by signal connection order, with G_CONNECT_AFTER
providing a
second, lower rank of priority.
A handler returning a value should do so in a GValue
allocated on the heap;
the accumulator will take ownership. The caller should unset and free the
GValue
if non-NULL
when finished with it.
Parameters
entry
-
Type:
RhythmDBEntry
A
RhythmDBEntry
.The data is owned by the caller of the method. property_name
-
Type:
const gchar*
The metadata predicate.
The data is owned by the caller of the method. The value is a NUL terminated UTF-8 string.
Return value
Type: GValue
An allocated, initialised, set GValue
, or NULL.
The caller of the method takes ownership of the returned data, and is responsible for freeing it. |