11#ifndef MYMPD_LIB_WEBRADIO_H
12#define MYMPD_LIB_WEBRADIO_H
14#include "dist/rax/rax.h"
15#include "dist/sds/sds.h"
41 WEBRADIO_TAG_UNKNOWN = -1,
44 WEBRADIO_TAG_HOMEPAGE,
47 WEBRADIO_TAG_DESCRIPTION,
52 WEBRADIO_TAG_LANGUAGES,
54 WEBRADIO_TAG_LASTMODIFIED,
Central myMPD configuration definitions.
struct t_webradio_data * webradio_data_new(enum webradio_type type)
Definition webradio.c:70
webradio_type
Definition webradio.h:22
bool webradios_get_write_lock(struct t_webradios *webradios)
Definition webradio.c:362
void webradios_free_void(void *webradios)
Definition webradio.c:337
const char * webradio_type_name(enum webradio_type type)
Definition webradio.c:183
struct t_webradios * webradios_new(void)
Definition webradio.c:265
sds webradio_get_cover_uri(struct t_webradio_data *webradio, sds buffer)
Definition webradio.c:114
bool webradios_get_read_lock(struct t_webradios *webradios)
Definition webradio.c:346
webradio_tag_type
Definition webradio.h:40
void webradios_clear(struct t_webradios *webradios, bool init_rax)
Definition webradio.c:284
const char * webradio_get_tag(const struct t_webradio_data *webradio, enum webradio_tag_type tag_type, unsigned int idx)
Definition webradio.c:196
enum webradio_tag_type webradio_tag_name_parse(const char *name)
Definition webradio.c:169
void webradio_tags_search(struct t_webradio_tags *tags)
Definition webradio.c:135
void webradio_data_free(struct t_webradio_data *data)
Definition webradio.c:91
sds webradio_to_extm3u(const struct t_webradio_data *webradio, sds buffer, const char *uri)
Definition webradio.c:251
struct t_webradio_data * webradio_by_uri(struct t_webradios *webradio_favorites, struct t_webradios *webradiodb, const char *uri)
Definition webradio.c:30
bool webradios_save_to_disk(struct t_config *config, struct t_webradios *webradios, const char *filename)
Definition webradio.c:396
void webradios_free(struct t_webradios *webradios)
Definition webradio.c:323
bool webradios_read_from_disk(struct t_config *config, struct t_webradios *webradios, const char *filename, enum webradio_type type)
Definition webradio.c:492
bool webradios_release_lock(struct t_webradios *webradios)
Definition webradio.c:378
sds webradio_get_extm3u(struct t_webradios *webradio_favorites, struct t_webradios *webradiodb, sds buffer, sds uri)
Definition webradio.c:57
Linked list implementation.
Definition config_def.h:22
struct t_list languages
List of languages.
Definition webradio.h:78
sds homepage
Homepage.
Definition webradio.h:72
time_t added
Added timestamp.
Definition webradio.h:80
enum webradio_type type
Type of the webradio.
Definition webradio.h:79
sds country
Country.
Definition webradio.h:73
sds name
Station name.
Definition webradio.h:70
sds description
Short description.
Definition webradio.h:75
struct t_list genres
List of genres.
Definition webradio.h:77
sds region
State or region.
Definition webradio.h:74
time_t last_modified
Last modified timestamp.
Definition webradio.h:81
struct t_list uris
List of Uris (uri, bitrate and codec)
Definition webradio.h:76
sds image
Station image.
Definition webradio.h:71
rax * db
Index by name.
Definition webradio.h:32
pthread_rwlock_t rwlock
pthreads read-write lock object
Definition webradio.h:34
rax * idx_uris
Index by uri.
Definition webradio.h:33