Medialib caches metadata. More...
Defines | |
#define | XMMS_MEDIALIB_SOURCE_SERVER "server" |
#define | XMMS_MEDIALIB_SOURCE_SERVER_ID 1 |
#define | XMMS_MEDIALIB_RETRV_PROPERTY_SQL "select value from Media where key=%Q and id=%d order by xmms_source_pref(source, %Q) limit 1" |
Retrieve a property from an entry. | |
Functions | |
int | add_to_source (void *hash, int columns, char **vals, char **cols) |
guint32 | xmms_medialib_source_to_id (xmms_medialib_session_t *session, const gchar *source) |
xmms_medialib_t * | xmms_medialib_init (xmms_playlist_t *playlist) |
Initialize the medialib and open the database file. | |
xmms_medialib_session_t * | _xmms_medialib_begin (gboolean write, const char *file, int line) |
Session handling. | |
void | xmms_medialib_end (xmms_medialib_session_t *session) |
xmmsv_t * | xmms_medialib_entry_property_get_value (xmms_medialib_session_t *session, xmms_medialib_entry_t entry, const gchar *property) |
gchar * | xmms_medialib_entry_property_get_str (xmms_medialib_session_t *session, xmms_medialib_entry_t entry, const gchar *property) |
Retrieve a property from an entry. | |
gint | xmms_medialib_entry_property_get_int (xmms_medialib_session_t *session, xmms_medialib_entry_t entry, const gchar *property) |
Retrieve a property as a int from a entry. | |
gboolean | xmms_medialib_entry_property_set_int (xmms_medialib_session_t *session, xmms_medialib_entry_t entry, const gchar *property, gint value) |
Set a entry property to a new value, overwriting the old value. | |
gboolean | xmms_medialib_entry_property_set_int_source (xmms_medialib_session_t *session, xmms_medialib_entry_t entry, const gchar *property, gint value, guint32 source) |
gboolean | xmms_medialib_entry_property_set_str (xmms_medialib_session_t *session, xmms_medialib_entry_t entry, const gchar *property, const gchar *value) |
Set a entry property to a new value, overwriting the old value. | |
gboolean | xmms_medialib_entry_property_set_str_source (xmms_medialib_session_t *session, xmms_medialib_entry_t entry, const gchar *property, const gchar *value, guint32 source) |
void | xmms_medialib_entry_send_update (xmms_medialib_entry_t entry) |
Trigger a update signal to the client. | |
void | xmms_medialib_entry_send_added (xmms_medialib_entry_t entry) |
Trigger an added siginal to the client. | |
void | xmms_medialib_entry_remove (xmms_medialib_entry_t entry) |
Remove a medialib entry from the database. | |
void | xmms_medialib_entry_cleanup (xmms_medialib_session_t *session, xmms_medialib_entry_t entry) |
void | xmms_medialib_add_recursive (xmms_medialib_t *medialib, const gchar *playlist, const gchar *path, xmms_error_t *error) |
void | xmms_medialib_insert_recursive (xmms_medialib_t *medialib, const gchar *playlist, gint32 pos, const gchar *path, xmms_error_t *error) |
xmms_medialib_entry_t | xmms_medialib_entry_new_encoded (xmms_medialib_session_t *session, const char *url, xmms_error_t *error) |
xmms_medialib_entry_t | xmms_medialib_entry_new (xmms_medialib_session_t *session, const char *url, xmms_error_t *error) |
Welcome to a function that should be called something else. | |
GList * | xmms_medialib_entry_to_list (xmms_medialib_session_t *session, xmms_medialib_entry_t entry) |
Convert a entry and all properties to a hashtable that could be feed to the client or somewhere else in the daemon. | |
GList * | xmms_medialib_info_list (xmms_medialib_t *medialib, guint32 id, xmms_error_t *err) |
GTree * | xmms_medialib_info (xmms_medialib_t *medialib, guint32 id, xmms_error_t *err) |
void | xmms_medialib_property_remove (xmms_medialib_t *medialib, guint32 entry, const gchar *source, const gchar *key, xmms_error_t *error) |
GList * | xmms_medialib_select (xmms_medialib_session_t *session, const gchar *query, xmms_error_t *error) |
Get a list of GHashTables 's that matches the query. |
Medialib caches metadata.
Controls metadata storage.
#define XMMS_MEDIALIB_RETRV_PROPERTY_SQL "select value from Media where key=%Q and id=%d order by xmms_source_pref(source, %Q) limit 1" |
Retrieve a property from an entry.
Definition at line 489 of file medialib.c.
Referenced by xmms_medialib_entry_property_get_int(), xmms_medialib_entry_property_get_str(), and xmms_medialib_entry_property_get_value().
#define XMMS_MEDIALIB_SOURCE_SERVER "server" |
Definition at line 151 of file medialib.c.
#define XMMS_MEDIALIB_SOURCE_SERVER_ID 1 |
Definition at line 152 of file medialib.c.
Referenced by xmms_medialib_entry_cleanup(), xmms_medialib_entry_new_encoded(), xmms_medialib_entry_not_resolved_get(), xmms_medialib_entry_property_set_int(), xmms_medialib_entry_property_set_str(), and xmms_medialib_num_not_resolved().
xmms_medialib_session_t* _xmms_medialib_begin | ( | gboolean | write, | |
const char * | file, | |||
int | line | |||
) |
Session handling.
This will only happen when OLD_SQLITE_VERSION is set.
Definition at line 393 of file medialib.c.
int add_to_source | ( | void * | hash, | |
int | columns, | |||
char ** | vals, | |||
char ** | cols | |||
) |
Definition at line 231 of file medialib.c.
Referenced by xmms_medialib_init().
void xmms_medialib_add_recursive | ( | xmms_medialib_t * | medialib, | |
const gchar * | playlist, | |||
const gchar * | path, | |||
xmms_error_t * | error | |||
) |
Definition at line 857 of file medialib.c.
void xmms_medialib_end | ( | xmms_medialib_session_t * | session | ) |
Definition at line 433 of file medialib.c.
Referenced by get_url_for_entry(), xmms_collection_dag_restore(), xmms_collection_dag_save(), xmms_collection_query_infos(), xmms_medialib_check_id(), xmms_medialib_entry_remove(), xmms_medialib_info(), xmms_medialib_info_list(), xmms_medialib_init(), xmms_medialib_insert_recursive(), xmms_medialib_property_remove(), xmms_playlist_add_url(), and xmms_sample_converter_to_medialib().
void xmms_medialib_entry_cleanup | ( | xmms_medialib_session_t * | session, | |
xmms_medialib_entry_t | entry | |||
) |
Definition at line 804 of file medialib.c.
xmms_medialib_entry_t xmms_medialib_entry_new | ( | xmms_medialib_session_t * | session, | |
const char * | url, | |||
xmms_error_t * | error | |||
) |
Welcome to a function that should be called something else.
Returns a entry for a URL, if the URL is already in the medialib the current entry will be returned otherwise a new one will be created and returned.
session | The medialib session to be used for the transaction. | |
url | URL to add/retrieve from the medialib | |
error | If an error occurs, it will be stored in there. |
Definition at line 999 of file medialib.c.
Referenced by xmms_medialib_init().
xmms_medialib_entry_t xmms_medialib_entry_new_encoded | ( | xmms_medialib_session_t * | session, | |
const char * | url, | |||
xmms_error_t * | error | |||
) |
Definition at line 945 of file medialib.c.
Referenced by xmms_medialib_entry_new(), and xmms_playlist_add_url().
gint xmms_medialib_entry_property_get_int | ( | xmms_medialib_session_t * | session, | |
xmms_medialib_entry_t | entry, | |||
const gchar * | property | |||
) |
Retrieve a property as a int from a entry.
session | The medialib session to be used for the transaction. | |
entry | Entry to query. | |
property | The property to extract. Strings passed should be defined in medialib.h |
Definition at line 551 of file medialib.c.
gchar* xmms_medialib_entry_property_get_str | ( | xmms_medialib_session_t * | session, | |
xmms_medialib_entry_t | entry, | |||
const gchar * | property | |||
) |
Retrieve a property from an entry.
session | The medialib session to be used for the transaction. | |
entry | Entry to query. | |
property | The property to extract. Strings passed should be defined in medialib.h |
Definition at line 524 of file medialib.c.
Referenced by get_url_for_entry().
xmmsv_t* xmms_medialib_entry_property_get_value | ( | xmms_medialib_session_t * | session, | |
xmms_medialib_entry_t | entry, | |||
const gchar * | property | |||
) |
Definition at line 492 of file medialib.c.
gboolean xmms_medialib_entry_property_set_int | ( | xmms_medialib_session_t * | session, | |
xmms_medialib_entry_t | entry, | |||
const gchar * | property, | |||
gint | value | |||
) |
Set a entry property to a new value, overwriting the old value.
session | The medialib session to be used for the transaction. | |
entry | Entry to alter. | |
property | The property to extract. Strings passed should be defined in medialib.h | |
value | gint with the new value, will be copied in to the medialib |
Definition at line 579 of file medialib.c.
Referenced by xmms_sample_converter_to_medialib().
gboolean xmms_medialib_entry_property_set_int_source | ( | xmms_medialib_session_t * | session, | |
xmms_medialib_entry_t | entry, | |||
const gchar * | property, | |||
gint | value, | |||
guint32 | source | |||
) |
Definition at line 590 of file medialib.c.
Referenced by xmms_medialib_entry_property_set_int().
gboolean xmms_medialib_entry_property_set_str | ( | xmms_medialib_session_t * | session, | |
xmms_medialib_entry_t | entry, | |||
const gchar * | property, | |||
const gchar * | value | |||
) |
Set a entry property to a new value, overwriting the old value.
session | The medialib session to be used for the transaction. | |
entry | Entry to alter. | |
property | The property to extract. Strings passed should be defined in medialib.h | |
value | gchar with the new value, will be copied in to the medialib |
Definition at line 627 of file medialib.c.
Referenced by xmms_sample_converter_to_medialib().
gboolean xmms_medialib_entry_property_set_str_source | ( | xmms_medialib_session_t * | session, | |
xmms_medialib_entry_t | entry, | |||
const gchar * | property, | |||
const gchar * | value, | |||
guint32 | source | |||
) |
Definition at line 638 of file medialib.c.
Referenced by xmms_medialib_entry_property_set_str().
void xmms_medialib_entry_remove | ( | xmms_medialib_entry_t | entry | ) |
Remove a medialib entry from the database.
session | The medialib session to be used for the transaction. | |
entry | Entry to remove |
Definition at line 713 of file medialib.c.
void xmms_medialib_entry_send_added | ( | xmms_medialib_entry_t | entry | ) |
Trigger an added siginal to the client.
This should be called when a new entry has been added to the medialib
entry | Entry to signal an add for. |
Definition at line 692 of file medialib.c.
Referenced by xmms_medialib_entry_new_encoded().
void xmms_medialib_entry_send_update | ( | xmms_medialib_entry_t | entry | ) |
Trigger a update signal to the client.
This should be called when important information in the entry has been changed and should be visible to the user.
entry | Entry to signal a update for. |
Definition at line 678 of file medialib.c.
Referenced by xmms_medialib_property_remove().
GList* xmms_medialib_entry_to_list | ( | xmms_medialib_session_t * | session, | |
xmms_medialib_entry_t | entry | |||
) |
Convert a entry and all properties to a hashtable that could be feed to the client or somewhere else in the daemon.
session | The medialib session to be used for the transaction. | |
entry | Entry to convert. |
Definition at line 1093 of file medialib.c.
Referenced by xmms_medialib_info_list().
GTree* xmms_medialib_info | ( | xmms_medialib_t * | medialib, | |
guint32 | id, | |||
xmms_error_t * | err | |||
) |
Definition at line 1194 of file medialib.c.
GList* xmms_medialib_info_list | ( | xmms_medialib_t * | medialib, | |
guint32 | id, | |||
xmms_error_t * | err | |||
) |
Definition at line 1172 of file medialib.c.
xmms_medialib_t* xmms_medialib_init | ( | xmms_playlist_t * | playlist | ) |
Initialize the medialib and open the database file.
playlist | the current playlist pointer |
Create a global session, this is only used when the sqlite version doesn't support concurrent sessions
this dummy just wants to put the default song in the playlist
Definition at line 290 of file medialib.c.
Referenced by xmms_playlist_init().
void xmms_medialib_insert_recursive | ( | xmms_medialib_t * | medialib, | |
const gchar * | playlist, | |||
gint32 | pos, | |||
const gchar * | path, | |||
xmms_error_t * | error | |||
) |
Definition at line 870 of file medialib.c.
Referenced by xmms_medialib_add_recursive().
void xmms_medialib_property_remove | ( | xmms_medialib_t * | medialib, | |
guint32 | entry, | |||
const gchar * | source, | |||
const gchar * | key, | |||
xmms_error_t * | error | |||
) |
Definition at line 1327 of file medialib.c.
GList* xmms_medialib_select | ( | xmms_medialib_session_t * | session, | |
const gchar * | query, | |||
xmms_error_t * | error | |||
) |
Get a list of GHashTables 's that matches the query.
session | The medialib session to be used for the transaction. | |
query | SQL query that should be executed. | |
error | In case of error this will be filled. |
Definition at line 1367 of file medialib.c.
Referenced by xmms_collection_dag_restore(), xmms_collection_dag_save(), and xmms_collection_query_infos().
guint32 xmms_medialib_source_to_id | ( | xmms_medialib_session_t * | session, | |
const gchar * | source | |||
) |
Definition at line 239 of file medialib.c.
Referenced by xmms_medialib_property_remove().