X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=include%2Fvlc_playlist.h;h=beebba4f8aaa0d68f5f9e9e5f8eb597a5e199e6a;hb=47e69cf6132dfd1daa1ef8fb17fa6b2af5c16e18;hp=daf234b4c690841c0c45dd33e82e909f013fc121;hpb=8b6e26a823cc53624ecfbadd76db7847bb6fda57;p=vlc diff --git a/include/vlc_playlist.h b/include/vlc_playlist.h index daf234b4c6..beebba4f8a 100644 --- a/include/vlc_playlist.h +++ b/include/vlc_playlist.h @@ -168,6 +168,8 @@ struct playlist_t playlist_item_array_t items; /**< Arrays of items */ playlist_item_array_t all_items; /**< Array of items and nodes */ + playlist_item_array_t items_to_delete; /**< Array of items and nodes to + delete... At the very end. This sucks. */ playlist_item_array_t current; /**< Items currently being played */ int i_current_index; /**< Index in current array */ @@ -201,8 +203,6 @@ struct playlist_t playlist_preparse_t *p_preparse; /**< Preparser object */ playlist_fetcher_t *p_fetcher;/**< Meta and art fetcher object */ - vlc_mutex_t gc_lock; /**< Lock to protect the garbage collection */ - struct { /* Current status. These fields are readonly, only the playlist * main loop can touch it*/ @@ -281,12 +281,12 @@ VLC_EXPORT( void, __pl_Release, ( vlc_object_t * ) ); #define pl_Release(a) __pl_Release( VLC_OBJECT(a) ) /* Playlist control */ -#define playlist_Play(p) playlist_Control(p,PLAYLIST_PLAY, false ) -#define playlist_Pause(p) playlist_Control(p,PLAYLIST_PAUSE, false ) -#define playlist_Stop(p) playlist_Control(p,PLAYLIST_STOP, false ) -#define playlist_Next(p) playlist_Control(p,PLAYLIST_SKIP, false, 1) -#define playlist_Prev(p) playlist_Control(p,PLAYLIST_SKIP, false, -1) -#define playlist_Skip(p,i) playlist_Control(p,PLAYLIST_SKIP, false, i) +#define playlist_Play(p) playlist_Control(p,PLAYLIST_PLAY, pl_Unlocked ) +#define playlist_Pause(p) playlist_Control(p,PLAYLIST_PAUSE, pl_Unlocked ) +#define playlist_Stop(p) playlist_Control(p,PLAYLIST_STOP, pl_Unlocked ) +#define playlist_Next(p) playlist_Control(p,PLAYLIST_SKIP, pl_Unlocked, 1) +#define playlist_Prev(p) playlist_Control(p,PLAYLIST_SKIP, pl_Unlocked, -1) +#define playlist_Skip(p,i) playlist_Control(p,PLAYLIST_SKIP, pl_Unlocked, i) /** * Do a playlist action. @@ -360,7 +360,6 @@ VLC_EXPORT( playlist_item_t* , playlist_ItemNewWithType, ( playlist_t *,const ch /*************************** Item deletion **************************/ VLC_EXPORT( int, playlist_DeleteFromInput, ( playlist_t *, int, bool ) ); -VLC_EXPORT( int, playlist_DeleteInputInParent, ( playlist_t *, int, playlist_item_t *, bool ) ); /*************************** Item fields accessors **************************/ VLC_EXPORT( int, playlist_ItemSetName, (playlist_item_t *, const char * ) ); @@ -369,7 +368,6 @@ VLC_EXPORT( int, playlist_ItemSetName, (playlist_item_t *, const char * ) ); VLC_EXPORT( int, playlist_Add, ( playlist_t *, const char *, const char *, int, int, bool, bool ) ); VLC_EXPORT( int, playlist_AddExt, ( playlist_t *, const char *, const char *, int, int, mtime_t, const char *const *,int, bool, bool ) ); VLC_EXPORT( int, playlist_AddInput, ( playlist_t *, input_item_t *, int, int, bool, bool ) ); -VLC_EXPORT( playlist_item_t *, playlist_NodeAddInput, ( playlist_t *, input_item_t *,playlist_item_t *,int , int, bool ) ); VLC_EXPORT( int, playlist_BothAddInput, ( playlist_t *, input_item_t *,playlist_item_t *,int , int, int*, int*, bool ) ); /********************** Misc item operations **********************/