src/playlist.h File Reference

#include "queue.h"
#include "playlist_error.h"
#include <stdbool.h>

Go to the source code of this file.

Data Structures

struct  playlist

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, struct player_control *pc)
enum playlist_result playlist_append_file (struct playlist *playlist, struct player_control *pc, const char *path_fs, unsigned *added_id)
 Appends a local file (outside the music database) to the playlist.
enum playlist_result playlist_append_uri (struct playlist *playlist, struct player_control *pc, const char *file, unsigned *added_id)
enum playlist_result playlist_append_song (struct playlist *playlist, struct player_control *pc, struct song *song, unsigned *added_id)
enum playlist_result playlist_delete (struct playlist *playlist, struct player_control *pc, unsigned song)
enum playlist_result playlist_delete_range (struct playlist *playlist, struct player_control *pc, unsigned start, unsigned end)
 Deletes a range of songs from the playlist.
enum playlist_result playlist_delete_id (struct playlist *playlist, struct player_control *pc, unsigned song)
void playlist_stop (struct playlist *playlist, struct player_control *pc)
enum playlist_result playlist_play (struct playlist *playlist, struct player_control *pc, int song)
enum playlist_result playlist_play_id (struct playlist *playlist, struct player_control *pc, int song)
void playlist_next (struct playlist *playlist, struct player_control *pc)
void playlist_sync (struct playlist *playlist, struct player_control *pc)
void playlist_previous (struct playlist *playlist, struct player_control *pc)
void playlist_shuffle (struct playlist *playlist, struct player_control *pc, unsigned start, unsigned end)
void playlist_delete_song (struct playlist *playlist, struct player_control *pc, const struct song *song)
enum playlist_result playlist_move_range (struct playlist *playlist, struct player_control *pc, unsigned start, unsigned end, int to)
enum playlist_result playlist_move_id (struct playlist *playlist, struct player_control *pc, unsigned id, int to)
enum playlist_result playlist_swap_songs (struct playlist *playlist, struct player_control *pc, unsigned song1, unsigned song2)
enum playlist_result playlist_swap_songs_id (struct playlist *playlist, struct player_control *pc, unsigned id1, unsigned id2)
enum playlist_result playlist_set_priority (struct playlist *playlist, struct player_control *pc, unsigned start_position, unsigned end_position, uint8_t priority)
enum playlist_result playlist_set_priority_id (struct playlist *playlist, struct player_control *pc, unsigned song_id, uint8_t priority)
bool playlist_get_repeat (const struct playlist *playlist)
void playlist_set_repeat (struct playlist *playlist, struct player_control *pc, bool status)
bool playlist_get_random (const struct playlist *playlist)
void playlist_set_random (struct playlist *playlist, struct player_control *pc, bool status)
bool playlist_get_single (const struct playlist *playlist)
void playlist_set_single (struct playlist *playlist, struct player_control *pc, 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, struct player_control *pc, unsigned song, float seek_time)
enum playlist_result playlist_seek_song_id (struct playlist *playlist, struct player_control *pc, unsigned id, float seek_time)
enum playlist_result playlist_seek_current (struct playlist *playlist, struct player_control *pc, float seek_time, bool relative)
 Seek within the current song.
void playlist_increment_version_all (struct playlist *playlist)

Variables

struct playlist g_playlist
 the global playlist object

Function Documentation

enum playlist_result playlist_append_file ( struct playlist playlist,
struct player_control pc,
const char *  path_fs,
unsigned *  added_id 
)

Appends a local file (outside the music database) to the playlist.

Note: the caller is responsible for checking permissions.

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

Deletes a range of songs from the playlist.

Parameters:
start the position of the first song to delete
end the position after the last song to delete
void playlist_delete_song ( struct playlist playlist,
struct player_control pc,
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  )  [static, read]

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

Definition at line 95 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,
struct player_control pc,
unsigned  id,
int  to 
)
enum playlist_result playlist_move_range ( struct playlist playlist,
struct player_control pc,
unsigned  start,
unsigned  end,
int  to 
)
void playlist_next ( struct playlist playlist,
struct player_control pc 
)
enum playlist_result playlist_play ( struct playlist playlist,
struct player_control pc,
int  song 
)
enum playlist_result playlist_play_id ( struct playlist playlist,
struct player_control pc,
int  song 
)
void playlist_previous ( struct playlist playlist,
struct player_control pc 
)
enum playlist_result playlist_seek_current ( struct playlist playlist,
struct player_control pc,
float  seek_time,
bool  relative 
)

Seek within the current song.

Fails if MPD is not currently playing.

Parameters:
time the time in seconds
relative if true, then the specified time is relative to the current position
enum playlist_result playlist_seek_song ( struct playlist playlist,
struct player_control pc,
unsigned  song,
float  seek_time 
)
enum playlist_result playlist_seek_song_id ( struct playlist playlist,
struct player_control pc,
unsigned  id,
float  seek_time 
)
void playlist_set_consume ( struct playlist playlist,
bool  status 
)
enum playlist_result playlist_set_priority ( struct playlist playlist,
struct player_control pc,
unsigned  start_position,
unsigned  end_position,
uint8_t  priority 
)
enum playlist_result playlist_set_priority_id ( struct playlist playlist,
struct player_control pc,
unsigned  song_id,
uint8_t  priority 
)
void playlist_set_random ( struct playlist playlist,
struct player_control pc,
bool  status 
)
void playlist_set_repeat ( struct playlist playlist,
struct player_control pc,
bool  status 
)
void playlist_set_single ( struct playlist playlist,
struct player_control pc,
bool  status 
)
void playlist_shuffle ( struct playlist playlist,
struct player_control pc,
unsigned  start,
unsigned  end 
)
void playlist_stop ( struct playlist playlist,
struct player_control pc 
)
enum playlist_result playlist_swap_songs ( struct playlist playlist,
struct player_control pc,
unsigned  song1,
unsigned  song2 
)
enum playlist_result playlist_swap_songs_id ( struct playlist playlist,
struct player_control pc,
unsigned  id1,
unsigned  id2 
)
void playlist_sync ( struct playlist playlist,
struct player_control pc 
)
void playlist_tag_changed ( struct playlist playlist  ) 

Variable Documentation

the global playlist object


Generated on 17 Jul 2013 for MPD by  doxygen 1.6.1