### Struct

# RB RhythmDBEntry

#### Description

    struct RhythmDBEntry {
      /* No available fields */
    }

No description available.

#### Constructors

###### rhythmdb_entry_example_new

Creates a new sample entry of type `type` and location `uri`, it does not insert it into the database. This is indended for use as a example entry.

###### rhythmdb_entry_new

Creates a new entry of type `type` and location `uri`, and inserts it into the database. You must call `rhythmdb_commit()` at some point after invoking this function.

#### Instance methods

###### rhythmdb_entry_apply_cached_metadata

Applies a set of metadata properties to `entry`. The metadata should be in the form returned by `rhythmdb_entry_type_fetch_metadata`.

###### rhythmdb_entry_cache_metadata

Stores metadata for `entry` in the metadata cache (if any) for its entry type.

###### rhythmdb_entry_can_sync_metadata

Calls the entry type’s method to check if it can sync metadata for `entry`. Usually this is only true for entries backed by files, where tag-writing is enabled, and the appropriate tag-writing facilities are available.

###### rhythmdb_entry_create_ext_db_key

Creates a `RBExtDBKey` for finding external metadata for a given property. This is mostly useful for finding album or track related data.

###### rhythmdb_entry_created

Calls the entry type’s post-creation method for `entry`.

###### rhythmdb_entry_dup_string

No description available.

###### rhythmdb_entry_get_boolean

Returns the value of a boolean property of `entry`.

###### rhythmdb_entry_get_double

Returns the value of a double-precision floating point property of `value`.

###### rhythmdb_entry_get_entry_type

Returns the `RhythmDBEntryType` for `entry`. This is used to access entry type properties, to check that entries are of the same type, and to call entry type methods.

###### rhythmdb_entry_get_object

Returns the value of an object property of `entry`.

###### rhythmdb_entry_get_playback_uri

Returns an allocated string containing the playback URI for `entry`, or NULL if the entry cannot be played.

###### rhythmdb_entry_get_refstring

Returns an `RBRefString` containing a string property of `entry`.

###### rhythmdb_entry_get_string

Returns the value of a string property of #entry.

###### rhythmdb_entry_get_type_data

Retrieves a pointer to the entry’s type-specific data, checking that the size of the data structure matches what is expected. Callers should use the RHYTHMDB_ENTRY_GET_TYPE_DATA macro for a slightly more friendly interface to this functionality.

###### rhythmdb_entry_get_uint64

Returns the value of a 64bit unsigned integer property.

###### rhythmdb_entry_get_ulong

Returns the value of an unsigned long integer property of `entry`.

###### rhythmdb_entry_is_lossless

Checks if `entry` represents a file that is losslessly encoded. An entry is considered lossless if it has no bitrate value and its media type is “audio/x-flac”. Other lossless encoding types may be added in the future.

###### rhythmdb_entry_pre_destroy

Calls the entry type’s pre-deletion method for `entry`.

###### rhythmdb_entry_ref

Increase the reference count of the entry.

###### rhythmdb_entry_sync_metadata

Calls the entry type’s method to sync metadata changes for `entry`.

###### rhythmdb_entry_unref

Decrease the reference count of the entry, and destroys it if there are no references left.

###### rhythmdb_entry_update_availability

Updates `entry` to reflect its new availability.