Data Structures | Defines | Typedefs | Enumerations | Functions

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_add_t
 Helper to add an item. More...

Defines

#define VLC_DEFINE_SORT_FUNCTIONS
#define DEF(s)   s,
#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   playlist_Lock( p_playlist )
#define PL_UNLOCK   playlist_Unlock( p_playlist )
#define PL_ASSERT_LOCKED   playlist_AssertLocked( p_playlist )
#define pl_Get(a)   pl_Get( 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 pl_CurrentInput(a)   __pl_CurrentInput( VLC_OBJECT(a) )
 Small helper tp get current playing input or NULL.

Typedefs

typedef struct playlist_export_t playlist_export_t
 Helper structure to export to file part of the playlist.

Enumerations

enum  playlist_item_flags_e {
  PLAYLIST_SAVE_FLAG = 0x0001, PLAYLIST_SKIP_FLAG = 0x0002, PLAYLIST_DBL_FLAG = 0x0004, PLAYLIST_RO_FLAG = 0x0008,
  PLAYLIST_REMOVE_FLAG = 0x0010, PLAYLIST_EXPANDED_FLAG = 0x0020, PLAYLIST_SUBITEM_STOP_FLAG = 0x0040
}
enum  playlist_status_t { PLAYLIST_STOPPED, PLAYLIST_RUNNING, PLAYLIST_PAUSED }
 

Playlist status.

More...
enum  { DEF, NUM_SORT_FNS = SORT_RANDOM }
enum  { ORDER_NORMAL = 0, ORDER_REVERSE = 1 }
enum  pl_locked_state { pl_Locked = true, pl_Unlocked = false }

Functions

playlist_tpl_Get (vlc_object_t *)
void playlist_Lock (playlist_t *)
void playlist_Unlock (playlist_t *)
void playlist_AssertLocked (playlist_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_AskForArtEnqueue (playlist_t *, input_item_t *)
 Request the art for an input item to be fetched.
int playlist_TreeMove (playlist_t *, playlist_item_t *, playlist_item_t *, int)
 Moves an item.
int playlist_TreeMoveMany (playlist_t *, int, playlist_item_t **, playlist_item_t *, int)
 Moves an array of items.
int playlist_RecursiveNodeSort (playlist_t *, playlist_item_t *, int, int)
 Sort a node recursively.
playlist_item_tplaylist_CurrentPlayingItem (playlist_t *)
int playlist_Status (playlist_t *)
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.
int playlist_Import (playlist_t *p_playlist, const char *psz_file)
 Open a playlist file, add its content to the current playlist.
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_ServicesDiscoveryControl (playlist_t *, const char *, int,...)
 Query a services discovery.
int playlist_DeleteFromInput (playlist_t *, input_item_t *, bool)
 Delete from input.
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, int, const char *const *, unsigned, 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.
playlist_item_tplaylist_NodeAddInput (playlist_t *, input_item_t *, playlist_item_t *, int, int, bool)
 Add an input item to a given node.
int playlist_NodeAddCopy (playlist_t *, playlist_item_t *, playlist_item_t *, int)
 Copy an item (and all its children, if any) into another node.
playlist_item_tplaylist_ItemGetById (playlist_t *, int)
 Search a playlist item by its playlist_item id.
playlist_item_tplaylist_ItemGetByInput (playlist_t *, input_item_t *)
 Search an item by its input_item_t The playlist have to be locked.
int playlist_LiveSearchUpdate (playlist_t *, playlist_item_t *, const char *, bool)
 Launch the recursive search in the playlist.
playlist_item_tplaylist_NodeCreate (playlist_t *, const char *, playlist_item_t *p_parent, int i_pos, 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.
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.
static input_thread_t__pl_CurrentInput (vlc_object_t *p_this)
static bool playlist_IsEmpty (playlist_t *p_playlist)
 Tell if the playlist is empty.
static int playlist_CurrentSize (playlist_t *p_playlist)
 Tell the number of items in the current playing context.

Detailed Description

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

 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Defines