X-Git-Url: http://research.m1stereo.tv/gitweb?a=blobdiff_plain;f=src%2Fomnplay.h;h=f967b87b02537163a7bb1254271854b573a2bfec;hb=dd6ffa0e99fe56df3943ce188cad1fc239f4ff3c;hp=ebe0e68c5fa8ce0efc70b872e338cba2ebf71503;hpb=4eff63591040d11a6c4b3726ea357ef2c64d9fb5;p=melted_gui diff --git a/src/omnplay.h b/src/omnplay.h index ebe0e68..f967b87 100644 --- a/src/omnplay.h +++ b/src/omnplay.h @@ -85,6 +85,7 @@ typedef enum playlist_item_type } playlist_item_type_t; #define MAX_PLAYLIST_ITEMS 1024 +#define MAX_LIBRARY_ITEMS 10240 typedef struct playlist_item { @@ -112,6 +113,7 @@ typedef struct omnplay_player GtkWidget *label_status, *label_state, *label_tc_cur, *label_tc_rem, *label_clip; struct omnplay_instance *app; int playlist_start; + int playlist_length; } omnplay_player_t; typedef struct omnplay_instance @@ -138,6 +140,14 @@ typedef struct omnplay_instance char* path; GdkPixbuf *block_icons[8]; } playlist; + struct + { + playlist_item_t item[MAX_LIBRARY_ITEMS]; + int count; + char filename[PATH_MAX]; + char whois[PATH_MAX]; + pthread_mutex_t lock; + } library; } omnplay_instance_t; omnplay_instance_t* omnplay_create(int argc, char** argv); @@ -149,6 +159,15 @@ void omnplay_playlist_save(omnplay_instance_t* app); void omnplay_playlist_draw(omnplay_instance_t* app); void omnplay_playlist_draw_item(omnplay_instance_t* app, int idx); void omnplay_playlist_draw_item_rem(omnplay_instance_t* app, int idx, char* rem); +void omnplay_library_load(omnplay_instance_t* app); +void omnplay_library_save(omnplay_instance_t* app); +void omnplay_library_refresh(omnplay_instance_t* app); +void omnplay_library_draw(omnplay_instance_t* app); +typedef void (*omnplay_get_content_cb_proc)(omnplay_instance_t* app, playlist_item_t *items, void* data); +int omnplay_get_content(omnplay_instance_t* app, playlist_item_t *items, int limit, + omnplay_get_content_cb_proc proc, void* data); +int omnplay_whois_list(omnplay_instance_t* app, playlist_item_t *items, int* plimit); +int omnplay_library_load_file(playlist_item_t* items, int *pcount, char* filename); #ifdef __cplusplus };