comparison src/streambrowser/streamdir.h @ 2570:28498c0bde64

Initial commit for the streambrowser plugin
author Calin Crisan ccrisan@gmail.com
date Sat, 17 May 2008 02:50:10 +0300
parents
children 6d6a3eb67510
comparison
equal deleted inserted replaced
2569:049f212e7e00 2570:28498c0bde64
1
2 #ifndef STREAMDIR_H
3 #define STREAMDIR_H
4
5
6 #include <glib.h>
7
8 #include "streambrowser.h"
9
10
11 typedef struct {
12
13 gchar name[DEF_STRING_LEN];
14 gchar url[DEF_STRING_LEN];
15
16 } streaminfo_t;
17
18 typedef struct {
19
20 gchar name[DEF_STRING_LEN];
21 GList* streaminfo_list;
22
23 } category_t;
24
25 typedef struct {
26
27 gchar name[DEF_STRING_LEN];
28 GList* category_list;
29
30 } streamdir_t;
31
32
33 streamdir_t* streamdir_new(gchar *name);
34 void streamdir_delete(streamdir_t *streamdir);
35
36 category_t* category_new(gchar *name);
37 void category_delete(category_t *category);
38 void category_add(streamdir_t *streamdir, category_t *category);
39 void category_remove(streamdir_t *streamdir, category_t *category);
40 category_t* category_get_by_index(streamdir_t *streamdir, gint index);
41 category_t* category_get_by_name(streamdir_t *streamdir, gchar *name);
42 gint category_get_count(streamdir_t *streamdir);
43
44 streaminfo_t* streaminfo_new(gchar *name, gchar *url);
45 void streaminfo_delete(streaminfo_t *streaminfo);
46 void streaminfo_free(streaminfo_t *streaminfo);
47 void streaminfo_add(category_t *category, streaminfo_t *streaminfo);
48 void streaminfo_remove(category_t *category, streaminfo_t *streaminfo);
49 streaminfo_t* streaminfo_get_by_index(category_t *category, gint index);
50 streaminfo_t* streaminfo_get_by_name(category_t *category, gchar *name);
51 gint streaminfo_get_count(category_t *category);
52
53
54 #endif // STREAMDIR_H
55