diff options
Diffstat (limited to 'src/SongFilter.hxx')
-rw-r--r-- | src/SongFilter.hxx | 18 |
1 files changed, 13 insertions, 5 deletions
diff --git a/src/SongFilter.hxx b/src/SongFilter.hxx index 8c46ed5f3..ca7d7bd90 100644 --- a/src/SongFilter.hxx +++ b/src/SongFilter.hxx @@ -1,5 +1,5 @@ /* - * Copyright (C) 2003-2013 The Music Player Daemon Project + * Copyright (C) 2003-2014 The Music Player Daemon Project * http://www.musicpd.org * * This program is free software; you can redistribute it and/or modify @@ -35,9 +35,12 @@ #define LOCATE_TAG_FILE_TYPE TAG_NUM_OF_ITEM_TYPES+10 #define LOCATE_TAG_ANY_TYPE TAG_NUM_OF_ITEM_TYPES+20 +template<typename T> struct ConstBuffer; struct Tag; struct TagItem; struct Song; +struct LightSong; +class DetachedSong; class SongFilter { public: @@ -79,7 +82,10 @@ public: bool Match(const Tag &tag) const; gcc_pure - bool Match(const Song &song) const; + bool Match(const DetachedSong &song) const; + + gcc_pure + bool Match(const LightSong &song) const; }; private: @@ -96,14 +102,16 @@ public: gcc_nonnull(2,3) bool Parse(const char *tag, const char *value, bool fold_case=false); - gcc_nonnull(3) - bool Parse(unsigned argc, char *argv[], bool fold_case=false); + bool Parse(ConstBuffer<const char *> args, bool fold_case=false); gcc_pure bool Match(const Tag &tag) const; gcc_pure - bool Match(const Song &song) const; + bool Match(const DetachedSong &song) const; + + gcc_pure + bool Match(const LightSong &song) const; const std::list<Item> &GetItems() const { return items; |