23 #include "util/Compiler.h" 25 #include <mpd/client.h> 42 using Vector = std::vector<std::unique_ptr<struct mpd_song, SongDeleter>>;
73 const struct mpd_song *
GetChecked(
int i)
const;
76 items.emplace_back(mpd_song_dup(&song));
80 items[i].reset(mpd_song_dup(&song));
87 void Move(
unsigned dest,
unsigned src);
124 i = mpd_song_get_id(
items[i].get());
gcc_pure size_type FindByReference(const struct mpd_song &song) const
std::vector< std::unique_ptr< struct mpd_song, SongDeleter > > Vector
Definition: Queue.hxx:42
size_type size() const
Definition: Queue.hxx:49
gcc_pure int FindByUri(const char *uri) const
Vector items
Definition: Queue.hxx:45
unsigned version
Definition: Queue.hxx:40
void Replace(size_type i, const struct mpd_song &song)
Definition: Queue.hxx:79
gcc_pure int FindById(unsigned id) const
struct mpd_song & operator[](size_type i)
Definition: Queue.hxx:66
gcc_pure int FindIdByUri(const char *uri) const
Definition: Queue.hxx:121
void operator()(struct mpd_song *song) const
Definition: Queue.hxx:33
gcc_pure const struct mpd_song * GetChecked(int i) const
const struct mpd_song & operator[](size_type i) const
Definition: Queue.hxx:60
void Move(unsigned dest, unsigned src)
Vector::size_type size_type
Definition: Queue.hxx:47
gcc_pure bool ContainsUri(const char *uri) const
Definition: Queue.hxx:129
void RemoveIndex(size_type i)
Definition: Queue.hxx:83
bool empty() const
Definition: Queue.hxx:53
void push_back(const struct mpd_song &song)
Definition: Queue.hxx:75