vlc_playlist.h File Reference

This file contain structures and function prototypes related to the playlist in vlc. More...

Include dependency graph for vlc_playlist.h:

Go to the source code of this file.

Data Structures

struct  playlist_item_array_t
struct  playlist_export_t
 Helper structure to export to file part of the playlist. More...
struct  playlist_item_t
 playlist item / node More...
struct  playlist_t
 Structure containing information about the playlist. More...
struct  playlist_t::playlist_services_discovery_support_t
struct  playlist_add_t
 Helper to add an item. More...

Defines

#define PLAYLIST_SAVE_FLAG   0x0001
 Must it be saved.
#define PLAYLIST_SKIP_FLAG   0x0002
 Must playlist skip after it ?
#define PLAYLIST_DBL_FLAG   0x0004
 Is it disabled ?
#define PLAYLIST_RO_FLAG   0x0008
 Write-enabled ?
#define PLAYLIST_REMOVE_FLAG   0x0010
 Remove this item at the end.
#define PLAYLIST_EXPANDED_FLAG   0x0020
 Expanded node.
#define SORT_ID   0
#define SORT_TITLE   1
#define SORT_TITLE_NODES_FIRST   2
#define SORT_ARTIST   3
#define SORT_GENRE   4
#define SORT_RANDOM   5
#define SORT_DURATION   6
#define SORT_TITLE_NUMERIC   7
#define SORT_ALBUM   8
#define SORT_TRACK_NUMBER   9
#define SORT_DESCRIPTION   10
#define SORT_RATING   11
#define ORDER_NORMAL   0
#define ORDER_REVERSE   1
#define PLAYLIST_INSERT   0x0001
#define PLAYLIST_APPEND   0x0002
#define PLAYLIST_GO   0x0004
#define PLAYLIST_PREPARSE   0x0008
#define PLAYLIST_SPREPARSE   0x0010
#define PLAYLIST_NO_REBUILD   0x0020
#define PLAYLIST_END   -666
#define PL_LOCK   vlc_object_lock( p_playlist )
#define PL_UNLOCK   vlc_object_unlock( p_playlist )
#define pl_Yield(a)   __pl_Yield( VLC_OBJECT(a) )
#define pl_Release(a)   __pl_Release( VLC_OBJECT(a) )
#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)
#define playlist_ItemNew(a, b, c)   playlist_ItemNewWithType( VLC_OBJECT(a) , b , c, 0, NULL, -1, 0 )
 Create a new item, without adding it to the playlist.
#define pl_CurrentInput(a)   __pl_CurrentInput( VLC_OBJECT(a) )
 Small helper tp get current playing input or NULL.
#define playlist_IsPlaying(pl)
 Tell if the playlist is currently running.
#define playlist_IsStopped(pl)
#define playlist_IsEmpty(pl)   ( pl->items.i_size == 0 )
 Tell if the playlist is empty.
#define playlist_CurrentSize(pl)   pl->current.i_size
 Tell the number of items in the current playing context.
#define playlist_CurrentId(pl)   pl->status.p_item->i_id
 Tell the current item id in current playing context.
#define playlist_Signal(p_playlist)   vlc_object_signal( p_playlist )
 Ask the playlist to do some work.

Enumerations

enum  playlist_status_t { PLAYLIST_STOPPED, PLAYLIST_RUNNING, PLAYLIST_PAUSED }
 Playlist status. More...
enum  pl_locked_state { pl_Locked = true, pl_Unlocked = false }

Functions

playlist_t__pl_Yield (vlc_object_t *)
void __pl_Release (vlc_object_t *)
int playlist_Control (playlist_t *p_playlist, int i_query, bool b_locked,...)
 Do a playlist action.
input_thread_tplaylist_CurrentInput (playlist_t *p_playlist)
 Get current playing input.
void playlist_Clear (playlist_t *, bool)
 Clear the playlist.
int playlist_PreparseEnqueue (playlist_t *, input_item_t *)
 Enqueue an input item for preparsing.
int playlist_PreparseEnqueueItem (playlist_t *, playlist_item_t *)
 Enqueue a playlist item and all of its children if any for preparsing.
int playlist_AskForArtEnqueue (playlist_t *, input_item_t *)
 Request the art for an input item to be fetched.
int playlist_ServicesDiscoveryAdd (playlist_t *, const char *)
 Add a list of comma-separated service discovery modules.
int playlist_ServicesDiscoveryRemove (playlist_t *, const char *)
 Remove a services discovery module by name.
bool playlist_IsServicesDiscoveryLoaded (playlist_t *, const char *)
 Check whether a given SD is loaded.
int playlist_TreeMove (playlist_t *, playlist_item_t *, playlist_item_t *, int)
 Moves an item.
int playlist_RecursiveNodeSort (playlist_t *, playlist_item_t *, int, int)
 Sort a node recursively.
int playlist_Export (playlist_t *p_playlist, const char *psz_name, playlist_item_t *p_export_root, const char *psz_type)
 Export a node of the playlist to a certain type of playlistfile.
playlist_item_tplaylist_ItemNewWithType (playlist_t *, const char *, const char *, int, const char *const *, int, int)
int playlist_DeleteFromInput (playlist_t *, int, bool)
 Delete from input.
int playlist_ItemSetName (playlist_item_t *, const char *)
 Set the name of a playlist item.
int playlist_Add (playlist_t *, const char *, const char *, int, int, bool, bool)
 Playlist add.
int playlist_AddExt (playlist_t *, const char *, const char *, int, int, mtime_t, const char *const *, int, bool, bool)
 Add a MRL into the playlist or the media library, duration and options given.
int playlist_AddInput (playlist_t *, input_item_t *, int, int, bool, bool)
 Add an input item to the playlist node.
int playlist_BothAddInput (playlist_t *, input_item_t *, playlist_item_t *, int, int, int *, int *, bool)
 Add input.
playlist_item_tplaylist_ItemToNode (playlist_t *, playlist_item_t *, bool)
 Item to node.
playlist_item_tplaylist_ItemGetById (playlist_t *, int, bool)
 Search a playlist item by its playlist_item id.
playlist_item_tplaylist_ItemGetByInput (playlist_t *, input_item_t *, bool)
 Search an item by its input_item_t.
playlist_item_tplaylist_ItemGetByInputId (playlist_t *, int, playlist_item_t *)
 Get input by item id.
int playlist_LiveSearchUpdate (playlist_t *, playlist_item_t *, const char *)
int playlist_NodeChildrenCount (playlist_t *, playlist_item_t *)
 Count the children of a node.
playlist_item_tplaylist_NodeCreate (playlist_t *, const char *, playlist_item_t *p_parent, int i_flags, input_item_t *)
 Create a playlist node.
int playlist_NodeAppend (playlist_t *, playlist_item_t *, playlist_item_t *)
 Adds an item to the children of a node.
int playlist_NodeInsert (playlist_t *, playlist_item_t *, playlist_item_t *, int)
int playlist_NodeRemoveItem (playlist_t *, playlist_item_t *, playlist_item_t *)
 Deletes an item from the children of a node.
playlist_item_tplaylist_ChildSearchName (playlist_item_t *, const char *)
 Search a child of a node by its name.
int playlist_NodeDelete (playlist_t *, playlist_item_t *, bool, bool)
 Remove all the children of a node and removes the node.
int playlist_NodeEmpty (playlist_t *, playlist_item_t *, bool)
 Remove all the children of a node.
void playlist_NodesPairCreate (playlist_t *, const char *, playlist_item_t **, playlist_item_t **, bool)
 Create a pair of nodes in the category and onelevel trees.
playlist_item_tplaylist_GetPreferredNode (playlist_t *p_playlist, playlist_item_t *p_node)
 Get the node in the preferred tree from a node in one of category or onelevel tree.
playlist_item_tplaylist_GetNextLeaf (playlist_t *p_playlist, playlist_item_t *p_root, playlist_item_t *p_item, bool b_ena, bool b_unplayed)
 Finds the next item to play.
playlist_item_tplaylist_GetPrevLeaf (playlist_t *p_playlist, playlist_item_t *p_root, playlist_item_t *p_item, bool b_ena, bool b_unplayed)
 Finds the previous item to play.
playlist_item_tplaylist_GetLastLeaf (playlist_t *p_playlist, playlist_item_t *p_root)
static int playlist_Import (playlist_t *p_playlist, const char *psz_file)
 Open a playlist file, add its content to the current playlist.
static input_thread_t__pl_CurrentInput (vlc_object_t *p_this)


Detailed Description

This file contain structures and function prototypes related to the playlist in vlc.


Generated on Wed Aug 13 08:02:47 2008 for VLC by  doxygen 1.5.1