21 #ifndef VLC_PLAYLIST_NEW_H 22 #define VLC_PLAYLIST_NEW_H 203 size_t target,
void *userdata);
265 (*on_current_index_changed)(
vlc_playlist_t *playlist, ssize_t index,
292 bool has_next,
void *userdata);
389 void *userdata,
bool notify_current_state);
595 size_t target, ssize_t index_hint);
bool vlc_playlist_HasPrev(vlc_playlist_t *playlist)
Indicate whether a previous item is available.
Definition: control.c:335
ssize_t vlc_playlist_IndexOf(vlc_playlist_t *playlist, const vlc_playlist_item_t *item)
Return the index of a given item.
Definition: content.c:196
int vlc_playlist_RequestMove(vlc_playlist_t *playlist, vlc_playlist_item_t *const items[], size_t count, size_t target, ssize_t index_hint)
Move a slice of items by value.
Definition: request.c:205
vlc_playlist_playback_repeat
Definition: vlc_playlist.h:116
Definition: playlist.h:48
void vlc_playlist_Delete(vlc_playlist_t *)
Delete a playlist.
Definition: playlist.c:69
Definition: vlc_playlist.h:150
int vlc_playlist_Insert(vlc_playlist_t *playlist, size_t index, input_item_t *const media[], size_t count)
Insert a list of media at a given index.
Definition: content.c:265
void vlc_playlist_Remove(vlc_playlist_t *playlist, size_t index, size_t count)
Remove a slice of items at a given index.
Definition: content.c:306
Definition: vlc_playlist.h:139
Definition: vlc_playlist.h:147
Definition: vlc_playlist.h:138
ssize_t vlc_playlist_IndexOfId(vlc_playlist_t *playlist, uint64_t id)
Return the index of a given item id.
Definition: content.c:218
enum vlc_playlist_playback_order vlc_playlist_GetPlaybackOrder(vlc_playlist_t *)
Return the playback order.
Definition: control.c:119
This file is a collection of common definitions and types.
void vlc_playlist_item_Release(vlc_playlist_item_t *)
Release a playlist item.
Definition: item.c:51
vlc_playlist_sort_key
Definition: vlc_playlist.h:129
input_item_t * vlc_playlist_item_GetMedia(vlc_playlist_item_t *)
Return the media associated to the playlist item.
Definition: item.c:61
Definition: vlc_playlist.h:146
bool vlc_playlist_HasNext(vlc_playlist_t *playlist)
Indicate whether a next item is available.
Definition: control.c:342
vlc_player_t * vlc_playlist_GetPlayer(vlc_playlist_t *playlist)
Return the player owned by the playlist.
Definition: player.c:168
void vlc_playlist_Clear(vlc_playlist_t *playlist)
Clear the playlist.
Definition: content.c:230
static void vlc_playlist_RemoveOne(vlc_playlist_t *playlist, size_t index)
Remove an item at a given index.
Definition: vlc_playlist.h:544
int vlc_playlist_Sort(vlc_playlist_t *playlist, const struct vlc_playlist_sort_criterion criteria[], size_t count)
Sort the playlist by a list of criteria.
Definition: sort.c:363
void vlc_playlist_Shuffle(vlc_playlist_t *playlist)
Shuffle the playlist.
Definition: shuffle.c:33
ssize_t vlc_playlist_IndexOfMedia(vlc_playlist_t *playlist, const input_item_t *media)
Return the index of a given media.
Definition: content.c:206
Definition: vlc_playlist.h:126
int vlc_playlist_Prev(vlc_playlist_t *playlist)
Go to the previous item.
Definition: control.c:349
void vlc_playlist_Resume(vlc_playlist_t *playlist)
Resume the player.
Definition: player.c:192
Definition: vlc_playlist.h:140
vlc_playlist_t * vlc_playlist_New(vlc_object_t *parent)
Create a new playlist.
Definition: playlist.c:34
void vlc_playlist_Lock(vlc_playlist_t *)
Lock the playlist/player.
Definition: playlist.c:80
size_t vlc_playlist_Count(vlc_playlist_t *playlist)
Return the number of items.
Definition: content.c:182
#define VLC_SUCCESS
No error.
Definition: vlc_common.h:470
Definition: vlc_playlist.h:120
size_t count
Definition: core.c:402
static void vlc_playlist_MoveOne(vlc_playlist_t *playlist, size_t index, size_t target)
Move an item to a given target index.
Definition: vlc_playlist.h:517
enum vlc_playlist_sort_key key
Definition: vlc_playlist.h:152
void vlc_playlist_Move(vlc_playlist_t *playlist, size_t index, size_t count, size_t target)
Move a slice of items to a given target index.
Definition: content.c:292
Definition: vlc_playlist.h:137
void vlc_playlist_RemoveListener(vlc_playlist_t *, vlc_playlist_listener_id *)
Remove a player listener.
Definition: notify.c:70
int vlc_playlist_RequestGoTo(vlc_playlist_t *playlist, vlc_playlist_item_t *item, ssize_t index_hint)
Go to a given item.
Definition: request.c:260
Definition: vlc_playlist.h:136
int vlc_playlist_GoTo(vlc_playlist_t *playlist, ssize_t index)
Go to a given index.
Definition: control.c:405
vlc_playlist_item_t * vlc_playlist_Get(vlc_playlist_t *playlist, size_t index)
Return the item at a given index.
Definition: content.c:189
static int vlc_playlist_AppendOne(vlc_playlist_t *playlist, input_item_t *media)
Add a media at the end of the playlist.
Definition: vlc_playlist.h:486
Definition: vlc_playlist.h:133
#define VLC_API
Definition: fourcc_gen.c:31
int vlc_playlist_Next(vlc_playlist_t *playlist)
Go to the next item.
Definition: control.c:377
void vlc_playlist_Pause(vlc_playlist_t *playlist)
Pause the player.
Definition: player.c:186
int vlc_playlist_Start(vlc_playlist_t *playlist)
Start the player.
Definition: player.c:174
Definition: vlc_playlist.h:119
void vlc_playlist_SetPlaybackOrder(vlc_playlist_t *playlist, enum vlc_playlist_playback_order order)
Change the playback order.
Definition: control.c:139
void vlc_playlist_Stop(vlc_playlist_t *playlist)
Stop the player.
Definition: player.c:180
vlc_playlist_playback_order
Definition: vlc_playlist.h:123
static int vlc_playlist_PlayAt(vlc_playlist_t *playlist, size_t index)
Go to the given index and plays the corresponding item.
Definition: vlc_playlist.h:853
Definition: vlc_playlist.h:125
uint64_t vlc_playlist_item_GetId(vlc_playlist_item_t *)
Return a unique id for the playlist item instance.
Definition: item.c:67
void vlc_playlist_Preparse(vlc_playlist_t *playlist, input_item_t *media)
Preparse a media, and expand it in the playlist on subitems added.
Definition: preparse.c:115
Definition: vlc_playlist.h:134
int vlc_playlist_RequestInsert(vlc_playlist_t *playlist, size_t index, input_item_t *const media[], size_t count)
Insert a list of media at a given index (if in range), or append.
Definition: request.c:31
vlc_playlist_sort_order
Definition: vlc_playlist.h:144
int vlc_playlist_Export(vlc_playlist_t *playlist, const char *filename, const char *type)
Export the playlist to a file.
Definition: export.c:55
Definition: vlc_playlist.h:132
vlc_playlist_listener_id * vlc_playlist_AddListener(vlc_playlist_t *playlist, const struct vlc_playlist_callbacks *cbs, void *userdata, bool notify_current_state)
Add a playlist listener.
Definition: notify.c:49
int vlc_playlist_RequestRemove(vlc_playlist_t *playlist, vlc_playlist_item_t *const items[], size_t count, ssize_t index_hint)
Remove a slice of items by value.
Definition: request.c:235
ssize_t vlc_playlist_GetCurrentIndex(vlc_playlist_t *playlist)
Return the index of the current item.
Definition: control.c:315
void vlc_playlist_item_Hold(vlc_playlist_item_t *)
Hold a playlist item.
Definition: item.c:45
VLC object common members.
Definition: vlc_objects.h:43
static int vlc_playlist_Append(vlc_playlist_t *playlist, input_item_t *const media[], size_t count)
Add a list of media at the end of the playlist.
Definition: vlc_playlist.h:471
enum vlc_playlist_sort_order order
Definition: vlc_playlist.h:153
Definition: vlc_playlist.h:141
Playlist callbacks.
Definition: vlc_playlist.h:164
Definition: vlc_playlist.h:118
enum vlc_playlist_playback_repeat vlc_playlist_GetPlaybackRepeat(vlc_playlist_t *playlist)
Return the playback "repeat" mode.
Definition: control.c:112
#define VLC_USED
Definition: fourcc_gen.c:32
Definition: vlc_playlist.h:135
void vlc_playlist_Unlock(vlc_playlist_t *)
Unlock the playlist/player.
Definition: playlist.c:86
void vlc_playlist_SetPlaybackRepeat(vlc_playlist_t *playlist, enum vlc_playlist_playback_repeat repeat)
Change the playback "repeat" mode.
Definition: control.c:126
static int vlc_playlist_InsertOne(vlc_playlist_t *playlist, size_t index, input_item_t *media)
Insert a media at a given index.
Definition: vlc_playlist.h:456
Definition: vlc_playlist.h:131