XMMS2
xmms_playlist.h
Go to the documentation of this file.
1 /* XMMS2 - X Music Multiplexer System
2  * Copyright (C) 2003-2011 XMMS2 Team
3  *
4  * PLUGINS ARE NOT CONSIDERED TO BE DERIVED WORK !!!
5  *
6  * This library is free software; you can redistribute it and/or
7  * modify it under the terms of the GNU Lesser General Public
8  * License as published by the Free Software Foundation; either
9  * version 2.1 of the License, or (at your option) any later version.
10  *
11  * This library is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14  * Lesser General Public License for more details.
15  */
16 
17 
18 
19 
20 #ifndef __XMMS_PLAYLIST_H__
21 #define __XMMS_PLAYLIST_H__
22 
23 #include <glib.h>
24 
25 
26 /*
27  * Public definitions
28  */
29 
30 /*
31  * Private defintions
32  */
33 
34 #define XMMS_MAX_URI_LEN 1024
35 #define XMMS_MEDIA_DATA_LEN 1024
36 #define XMMS_MAX_INT_ATTRIBUTE_LEN 64
37 #define XMMS_DEFAULT_PARTYSHUFFLE_UPCOMING 10
38 
39 
40 struct xmms_playlist_St;
41 typedef struct xmms_playlist_St xmms_playlist_t;
42 
43 #include "xmms/xmms_error.h"
44 #include "xmms/xmms_medialib.h"
46 
47 /*
48  * Public functions
49  */
50 
52 
53 gboolean xmms_playlist_advance (xmms_playlist_t *playlist);
55 void xmms_playlist_add_entry_unlocked (xmms_playlist_t *playlist, const const gchar *plname, xmmsv_coll_t *plcoll, xmms_medialib_entry_t file, xmms_error_t *err);
56 GList * xmms_playlist_list (xmms_playlist_t *playlist, const gchar *plname, xmms_error_t *err);
58 
59 void xmms_playlist_add_entry (xmms_playlist_t *playlist, const gchar *plname, xmms_medialib_entry_t file, xmms_error_t *err);
60 void xmms_playlist_insert_entry (xmms_playlist_t *playlist, const gchar *plname, guint32 pos, xmms_medialib_entry_t file, xmms_error_t *err);
61 
63 
64 
66 void xmms_playlist_changed_msg_send (xmms_playlist_t *playlist, GTree *dict);
67 
68 #define XMMS_PLAYLIST_COLLECTION_CHANGED_MSG(playlist, name) xmms_playlist_changed_msg_send (playlist, xmms_playlist_changed_msg_new (playlist, XMMS_PLAYLIST_CHANGED_UPDATE, 0, name))
69 
70 /*
71  * Entry modifications
72  */
73 
74 
75 #endif
void xmms_playlist_changed_msg_send(xmms_playlist_t *playlist, GTree *dict)
Definition: playlist.c:1686
G_BEGIN_DECLS typedef gint32 xmms_medialib_entry_t
Definition: xmms_medialib.h:86
struct xmms_mediainfo_reader_St xmms_mediainfo_reader_t
void xmms_playlist_add_entry(xmms_playlist_t *playlist, const gchar *plname, xmms_medialib_entry_t file, xmms_error_t *err)
Add an entry to the playlist without validating it.
Definition: playlist.c:1062
xmms_playlist_changed_actions_t
gboolean xmms_playlist_advance(xmms_playlist_t *playlist)
Go to next song in playlist according to current playlist mode.
Definition: playlist.c:376
GTree * xmms_playlist_changed_msg_new(xmms_playlist_t *playlist, xmms_playlist_changed_actions_t type, xmms_medialib_entry_t id, const gchar *plname)
Definition: playlist.c:1645
struct xmmsv_coll_St xmmsv_coll_t
Definition: xmmsv_coll.h:28
struct xmms_playlist_St xmms_playlist_t
Definition: xmms_playlist.h:41
void xmms_playlist_insert_entry(xmms_playlist_t *playlist, const gchar *plname, guint32 pos, xmms_medialib_entry_t file, xmms_error_t *err)
Insert an entry at a given position in the playlist without validating it.
Definition: playlist.c:886
gboolean xmms_playlist_remove_by_entry(xmms_playlist_t *playlist, xmms_medialib_entry_t entry)
Remove all additions of entry in the playlist.
Definition: playlist.c:670
xmms_mediainfo_reader_t * xmms_playlist_mediainfo_reader_get(xmms_playlist_t *playlist)
returns pointer to mediainfo reader.
Definition: playlist.c:1547
xmms_playlist_t * xmms_playlist_init(void)
Initializes a new xmms_playlist_t.
Definition: playlist.c:277
GList * xmms_playlist_list(xmms_playlist_t *playlist, const gchar *plname, xmms_error_t *err)
G_BEGIN_DECLS struct xmms_error_St xmms_error_t
void xmms_playlist_add_entry_unlocked(xmms_playlist_t *playlist, const const gchar *plname, xmmsv_coll_t *plcoll, xmms_medialib_entry_t file, xmms_error_t *err)
xmms_medialib_entry_t xmms_playlist_current_entry(xmms_playlist_t *playlist)
Retrieve the currently active xmms_medialib_entry_t.
Definition: playlist.c:394