### Class

# RB MediaPlayerEntryType

#### Description

    class RB.MediaPlayerEntryType : RB.RhythmDBEntryType
    {
      RhythmDBEntryTypePrivate* priv
    }

No description available.

#### Ancestors

- RhythmDBEntryType
- GObject

#### Instance methods

##### Methods inherited from RhythmDBEntryType (3)

###### rhythmdb_entry_type_fetch_metadata

Fetches metadata for a URI (not an entry yet, at this point) from a cache, if possible.

###### rhythmdb_entry_type_get_name

Returns the name of the entry type.

###### rhythmdb_entry_type_purge_metadata_cache

No description available.

##### Methods inherited from GObject (43)

Please see GObject for a full list of methods.

#### Properties

###### RB.MediaPlayerEntryType:key-prefix

No description available.

###### RB.MediaPlayerEntryType:uri-prefix

No description available.

##### Properties inherited from RhythmDBEntryType (6)

###### RB.RhythmDBEntryType:cache-name

Metadata cache name. For entry types created by a plugin, should match the plugin name. If this is set, the entry type must also implement the uri_to_cache_key method.

###### RB.RhythmDBEntryType:category

The `RhythmDBEntryCategory` that this entry type fits into.

###### RB.RhythmDBEntryType:db

The `RhythmDB` instance.

###### RB.RhythmDBEntryType:name

Entry type name. This must be unique.

###### RB.RhythmDBEntryType:save-to-disk

If `TRUE`, entries of this type should be written to the on-disk database.

###### RB.RhythmDBEntryType:type-data-size

The size of the type-specific data structure to allocate for each entry of this type.

#### Signals

##### Signals inherited from GObject (1)

###### GObject::notify

The notify signal is emitted on an object when one of its properties has its value set through g_object_set_property(), g_object_set(), et al.

#### Class structure

    struct RBMediaPlayerEntryTypeClass {
      GObjectClass parent_class;
      void (* entry_created) (
        RhythmDBEntryType* etype,
        RhythmDBEntry* entry
      );
      void (* destroy_entry) (
        RhythmDBEntryType* etype,
        RhythmDBEntry* entry
      );
      char* (* get_playback_uri) (
        RhythmDBEntryType* etype,
        RhythmDBEntry* entry
      );
      void (* update_availability) (
        RhythmDBEntryType* etype,
        RhythmDBEntry* entry,
        RhythmDBEntryAvailability avail
      );
      gboolean (* can_sync_metadata) (
        RhythmDBEntryType* etype,
        RhythmDBEntry* entry
      );
      void (* sync_metadata) (
        RhythmDBEntryType* etype,
        RhythmDBEntry* entry,
        GSList* changes,
        GError** error
      );
      char* (* uri_to_cache_key) (
        RhythmDBEntryType* etype,
        const char* uri
      );
      char* (* cache_key_to_uri) (
        RhythmDBEntryType* etype,
        const char* key
      );
      RBExtDBKey* (* create_ext_db_key) (
        RhythmDBEntryType* etype,
        RhythmDBEntry* entry,
        RhythmDBPropType prop
      );

    }

No description available.

###### Class members

`parent_class: GObjectClass`

  No description available.

`entry_created: void (* entry_created) ( RhythmDBEntryType* etype, RhythmDBEntry* entry )`

  No description available.

`destroy_entry: void (* destroy_entry) ( RhythmDBEntryType* etype, RhythmDBEntry* entry )`

  No description available.

`get_playback_uri: char* (* get_playback_uri) ( RhythmDBEntryType* etype, RhythmDBEntry* entry )`

  No description available.

`update_availability: void (* update_availability) ( RhythmDBEntryType* etype, RhythmDBEntry* entry, RhythmDBEntryAvailability avail )`

  No description available.

`can_sync_metadata: gboolean (* can_sync_metadata) ( RhythmDBEntryType* etype, RhythmDBEntry* entry )`

  No description available.

`sync_metadata: void (* sync_metadata) ( RhythmDBEntryType* etype, RhythmDBEntry* entry, GSList* changes, GError** error )`

  No description available.

`uri_to_cache_key: char* (* uri_to_cache_key) ( RhythmDBEntryType* etype, const char* uri )`

  No description available.

`cache_key_to_uri: char* (* cache_key_to_uri) ( RhythmDBEntryType* etype, const char* key )`

  No description available.

`create_ext_db_key: RBExtDBKey* (* create_ext_db_key) ( RhythmDBEntryType* etype, RhythmDBEntry* entry, RhythmDBPropType prop )`

  No description available.