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);
90 int Find(
const struct mpd_song &song)
const;
93 int FindId(
unsigned id)
const;
96 int FindUri(
const char *uri)
const;
99 int FindUri(
const struct mpd_song &song)
const {
100 return FindUri(mpd_song_get_uri(&song));
std::vector< std::unique_ptr< struct mpd_song, SongDeleter > > Vector
Definition: Queue.hxx:42
size_type size() const
Definition: Queue.hxx:49
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
struct mpd_song & operator[](size_type i)
Definition: Queue.hxx:66
void operator()(struct mpd_song *song) const
Definition: Queue.hxx:33
gcc_pure int FindUri(const struct mpd_song &song) const
Definition: Queue.hxx:99
gcc_pure const struct mpd_song * GetChecked(int i) const
gcc_pure int Find(const struct mpd_song &song) 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 int FindId(unsigned id) const
gcc_pure int FindUri(const char *uri) const
#define gcc_pure
Definition: Compiler.h:101
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