MPD
Data Structures | Macros | Enumerations | Functions | Variables
playlist.h File Reference
#include "queue.h"
#include <stdbool.h>

Go to the source code of this file.

Data Structures

struct  playlist
 

Macros

#define PLAYLIST_COMMENT   '#'
 

Enumerations

enum  playlist_result {
  PLAYLIST_RESULT_SUCCESS, PLAYLIST_RESULT_ERRNO, PLAYLIST_RESULT_DENIED, PLAYLIST_RESULT_NO_SUCH_SONG,
  PLAYLIST_RESULT_NO_SUCH_LIST, PLAYLIST_RESULT_LIST_EXISTS, PLAYLIST_RESULT_BAD_NAME, PLAYLIST_RESULT_BAD_RANGE,
  PLAYLIST_RESULT_NOT_PLAYING, PLAYLIST_RESULT_TOO_LARGE, PLAYLIST_RESULT_DISABLED
}
 

Functions

void playlist_global_init (void)
 
void playlist_global_finish (void)
 
void playlist_init (struct playlist *playlist)
 
void playlist_finish (struct playlist *playlist)
 
void playlist_tag_changed (struct playlist *playlist)
 
static struct queueplaylist_get_queue (const struct playlist *playlist)
 Returns the "queue" object of the global playlist instance.
 
void playlist_clear (struct playlist *playlist)
 
enum playlist_result playlist_append_file (struct playlist *playlist, const char *path, int uid, unsigned *added_id)
 Appends a local file (outside the music database) to the playlist, but only if the file's owner is equal to the specified uid.
 
enum playlist_result playlist_append_uri (struct playlist *playlist, const char *file, unsigned *added_id)
 
enum playlist_result playlist_append_song (struct playlist *playlist, struct song *song, unsigned *added_id)
 
enum playlist_result playlist_delete (struct playlist *playlist, unsigned song)
 
enum playlist_result playlist_delete_range (struct playlist *playlist, unsigned start, unsigned end)
 Deletes a range of songs from the playlist.
 
enum playlist_result playlist_delete_id (struct playlist *playlist, unsigned song)
 
void playlist_stop (struct playlist *playlist)
 
enum playlist_result playlist_play (struct playlist *playlist, int song)
 
enum playlist_result playlist_play_id (struct playlist *playlist, int song)
 
void playlist_next (struct playlist *playlist)
 
void playlist_sync (struct playlist *playlist)
 
void playlist_previous (struct playlist *playlist)
 
void playlist_shuffle (struct playlist *playlist, unsigned start, unsigned end)
 
void playlist_delete_song (struct playlist *playlist, const struct song *song)
 
enum playlist_result playlist_move_range (struct playlist *playlist, unsigned start, unsigned end, int to)
 
enum playlist_result playlist_move_id (struct playlist *playlist, unsigned id, int to)
 
enum playlist_result playlist_swap_songs (struct playlist *playlist, unsigned song1, unsigned song2)
 
enum playlist_result playlist_swap_songs_id (struct playlist *playlist, unsigned id1, unsigned id2)
 
bool playlist_get_repeat (const struct playlist *playlist)
 
void playlist_set_repeat (struct playlist *playlist, bool status)
 
bool playlist_get_random (const struct playlist *playlist)
 
void playlist_set_random (struct playlist *playlist, bool status)
 
bool playlist_get_single (const struct playlist *playlist)
 
void playlist_set_single (struct playlist *playlist, bool status)
 
bool playlist_get_consume (const struct playlist *playlist)
 
void playlist_set_consume (struct playlist *playlist, bool status)
 
int playlist_get_current_song (const struct playlist *playlist)
 
int playlist_get_next_song (const struct playlist *playlist)
 
unsigned playlist_get_song_id (const struct playlist *playlist, unsigned song)
 
int playlist_get_length (const struct playlist *playlist)
 
unsigned long playlist_get_version (const struct playlist *playlist)
 
enum playlist_result playlist_seek_song (struct playlist *playlist, unsigned song, float seek_time)
 
enum playlist_result playlist_seek_song_id (struct playlist *playlist, unsigned id, float seek_time)
 
void playlist_increment_version_all (struct playlist *playlist)
 

Variables

struct playlist g_playlist
 the global playlist object
 

Macro Definition Documentation

#define PLAYLIST_COMMENT   '#'

Definition at line 27 of file playlist.h.

Enumeration Type Documentation

Enumerator:
PLAYLIST_RESULT_SUCCESS 
PLAYLIST_RESULT_ERRNO 
PLAYLIST_RESULT_DENIED 
PLAYLIST_RESULT_NO_SUCH_SONG 
PLAYLIST_RESULT_NO_SUCH_LIST 
PLAYLIST_RESULT_LIST_EXISTS 
PLAYLIST_RESULT_BAD_NAME 
PLAYLIST_RESULT_BAD_RANGE 
PLAYLIST_RESULT_NOT_PLAYING 
PLAYLIST_RESULT_TOO_LARGE 
PLAYLIST_RESULT_DISABLED 

Definition at line 29 of file playlist.h.

Function Documentation

enum playlist_result playlist_append_file ( struct playlist playlist,
const char *  path,
int  uid,
unsigned *  added_id 
)

Appends a local file (outside the music database) to the playlist, but only if the file's owner is equal to the specified uid.

enum playlist_result playlist_append_song ( struct playlist playlist,
struct song song,
unsigned *  added_id 
)
enum playlist_result playlist_append_uri ( struct playlist playlist,
const char *  file,
unsigned *  added_id 
)
void playlist_clear ( struct playlist playlist)
enum playlist_result playlist_delete ( struct playlist playlist,
unsigned  song 
)
enum playlist_result playlist_delete_id ( struct playlist playlist,
unsigned  song 
)
enum playlist_result playlist_delete_range ( struct playlist playlist,
unsigned  start,
unsigned  end 
)

Deletes a range of songs from the playlist.

Parameters
startthe position of the first song to delete
endthe position after the last song to delete
void playlist_delete_song ( struct playlist playlist,
const struct song song 
)
void playlist_finish ( struct playlist playlist)
bool playlist_get_consume ( const struct playlist playlist)
int playlist_get_current_song ( const struct playlist playlist)
int playlist_get_length ( const struct playlist playlist)
int playlist_get_next_song ( const struct playlist playlist)
static struct queue* playlist_get_queue ( const struct playlist playlist)
staticread

Returns the "queue" object of the global playlist instance.

Definition at line 108 of file playlist.h.

bool playlist_get_random ( const struct playlist playlist)
bool playlist_get_repeat ( const struct playlist playlist)
bool playlist_get_single ( const struct playlist playlist)
unsigned playlist_get_song_id ( const struct playlist playlist,
unsigned  song 
)
unsigned long playlist_get_version ( const struct playlist playlist)
void playlist_global_finish ( void  )
void playlist_global_init ( void  )
void playlist_increment_version_all ( struct playlist playlist)
void playlist_init ( struct playlist playlist)
enum playlist_result playlist_move_id ( struct playlist playlist,
unsigned  id,
int  to 
)
enum playlist_result playlist_move_range ( struct playlist playlist,
unsigned  start,
unsigned  end,
int  to 
)
void playlist_next ( struct playlist playlist)
enum playlist_result playlist_play ( struct playlist playlist,
int  song 
)
enum playlist_result playlist_play_id ( struct playlist playlist,
int  song 
)
void playlist_previous ( struct playlist playlist)
enum playlist_result playlist_seek_song ( struct playlist playlist,
unsigned  song,
float  seek_time 
)
enum playlist_result playlist_seek_song_id ( struct playlist playlist,
unsigned  id,
float  seek_time 
)
void playlist_set_consume ( struct playlist playlist,
bool  status 
)
void playlist_set_random ( struct playlist playlist,
bool  status 
)
void playlist_set_repeat ( struct playlist playlist,
bool  status 
)
void playlist_set_single ( struct playlist playlist,
bool  status 
)
void playlist_shuffle ( struct playlist playlist,
unsigned  start,
unsigned  end 
)
void playlist_stop ( struct playlist playlist)
enum playlist_result playlist_swap_songs ( struct playlist playlist,
unsigned  song1,
unsigned  song2 
)
enum playlist_result playlist_swap_songs_id ( struct playlist playlist,
unsigned  id1,
unsigned  id2 
)
void playlist_sync ( struct playlist playlist)
void playlist_tag_changed ( struct playlist playlist)

Variable Documentation

struct playlist g_playlist

the global playlist object