+/* Services discovery */
+
+VLC_EXPORT( int, playlist_ServicesDiscoveryAdd, (playlist_t *, const char *));
+VLC_EXPORT( void, playlist_ServicesDiscoveryRemove, (playlist_t *, const char *));
+VLC_EXPORT( int, playlist_AddSDModules, (playlist_t *, char *));
+VLC_EXPORT( vlc_bool_t, playlist_IsServicesDiscoveryLoaded, ( playlist_t *,const char *));
+
+
+/* Item management functions (act on items) */
+#define playlist_AddItem(p,pi,i1,i2) playlist_ItemAdd(p,pi,i1,i2)
+#define playlist_ItemNew( a , b, c ) __playlist_ItemNew(VLC_OBJECT(a) , b , c )
+VLC_EXPORT( playlist_item_t* , __playlist_ItemNew, ( vlc_object_t *,const char *,const char * ) );
+VLC_EXPORT( void, playlist_ItemDelete, ( playlist_item_t * ) );
+VLC_EXPORT( void, playlist_ItemAddParent, ( playlist_item_t *, int,playlist_item_t *) );
+VLC_EXPORT( void, playlist_CopyParents, ( playlist_item_t *,playlist_item_t *) );
+/* Item informations accessors */
+VLC_EXPORT( int, playlist_ItemSetName, (playlist_item_t *, char * ) );
+VLC_EXPORT( int, playlist_ItemSetDuration, (playlist_item_t *, mtime_t ) );
+
+
+/* View management functions */
+VLC_EXPORT( int, playlist_ViewInsert, (playlist_t *, int, char * ) );
+VLC_EXPORT( void, playlist_ViewDelete, (playlist_t *,playlist_view_t* ) );
+VLC_EXPORT( playlist_view_t *, playlist_ViewFind, (playlist_t *, int ) );
+VLC_EXPORT( int, playlist_ViewUpdate, (playlist_t *, int ) );
+VLC_EXPORT( void, playlist_ViewDump, (playlist_t *, playlist_view_t * ) );
+VLC_EXPORT( int, playlist_ViewEmpty, (playlist_t *, int, vlc_bool_t ) );
+
+/* Node management */
+VLC_EXPORT( playlist_item_t *, playlist_NodeCreate, ( playlist_t *,int,char *, playlist_item_t * p_parent ) );
+VLC_EXPORT( int, playlist_NodeAppend, (playlist_t *,int,playlist_item_t*,playlist_item_t *) );
+VLC_EXPORT( int, playlist_NodeInsert, (playlist_t *,int,playlist_item_t*,playlist_item_t *, int) );
+VLC_EXPORT( int, playlist_NodeRemoveItem, (playlist_t *,playlist_item_t*,playlist_item_t *) );
+VLC_EXPORT( int, playlist_NodeChildrenCount, (playlist_t *,playlist_item_t* ) );
+VLC_EXPORT( playlist_item_t *, playlist_ChildSearchName, (playlist_item_t*, const char* ) );
+VLC_EXPORT( int, playlist_NodeDelete, ( playlist_t *, playlist_item_t *, vlc_bool_t ) );
+VLC_EXPORT( int, playlist_NodeEmpty, ( playlist_t *, playlist_item_t *, vlc_bool_t ) );
+
+
+/* Tree walking */
+playlist_item_t *playlist_FindNextFromParent( playlist_t *p_playlist,
+ int i_view,
+ playlist_item_t *p_root,
+ playlist_item_t *p_node,
+ playlist_item_t *p_item );
+playlist_item_t *playlist_FindPrevFromParent( playlist_t *p_playlist,
+ int i_view,
+ playlist_item_t *p_root,
+ playlist_item_t *p_node,
+ playlist_item_t *p_item );
+
+
+/* Simple add/remove functions */
+/* These functions add the item to the "simple" view (+all & category )*/