summaryrefslogtreecommitdiff
path: root/src/playlist/plugins
diff options
context:
space:
mode:
authorMax Kellermann <max@musicpd.org>2018-06-22 19:37:18 +0200
committerMax Kellermann <max@musicpd.org>2018-06-22 19:37:18 +0200
commitd0fbf6db592eb445c9741fc7544b7bee739fcdfa (patch)
treed8cd22fa2f23dc150ef8b07f46d9561c276ee316 /src/playlist/plugins
parent01d8eb629072e4d5d02345868f4233177c99d70a (diff)
input/Stream: remove attribute "cond", replace with handler interface
This adds a bit of overhead, but also adds flexibility to the API, because arbitrary triggers may be invoked from that virtual method implementation, not just Cond::signal(). The motivation for this is to make the handlers more dynamic, for the upcoming buffering class utilizing ProxyInputStream.
Diffstat (limited to 'src/playlist/plugins')
-rw-r--r--src/playlist/plugins/EmbeddedCuePlaylistPlugin.cxx3
-rw-r--r--src/playlist/plugins/FlacPlaylistPlugin.cxx2
-rw-r--r--src/playlist/plugins/SoundCloudPlaylistPlugin.cxx8
3 files changed, 6 insertions, 7 deletions
diff --git a/src/playlist/plugins/EmbeddedCuePlaylistPlugin.cxx b/src/playlist/plugins/EmbeddedCuePlaylistPlugin.cxx
index ef99428bd..afbf6a55c 100644
--- a/src/playlist/plugins/EmbeddedCuePlaylistPlugin.cxx
+++ b/src/playlist/plugins/EmbeddedCuePlaylistPlugin.cxx
@@ -89,8 +89,7 @@ static constexpr TagHandler embcue_tag_handler = {
static std::unique_ptr<SongEnumerator>
embcue_playlist_open_uri(const char *uri,
- gcc_unused Mutex &mutex,
- gcc_unused Cond &cond)
+ gcc_unused Mutex &mutex)
{
if (!PathTraitsUTF8::IsAbsolute(uri))
/* only local files supported */
diff --git a/src/playlist/plugins/FlacPlaylistPlugin.cxx b/src/playlist/plugins/FlacPlaylistPlugin.cxx
index 58e5c9641..330c3b332 100644
--- a/src/playlist/plugins/FlacPlaylistPlugin.cxx
+++ b/src/playlist/plugins/FlacPlaylistPlugin.cxx
@@ -88,7 +88,7 @@ FlacPlaylist::NextSong()
static std::unique_ptr<SongEnumerator>
flac_playlist_open_uri(const char *uri,
- gcc_unused Mutex &mutex, gcc_unused Cond &cond)
+ gcc_unused Mutex &mutex)
{
if (!PathTraitsUTF8::IsAbsolute(uri))
/* only local files supported */
diff --git a/src/playlist/plugins/SoundCloudPlaylistPlugin.cxx b/src/playlist/plugins/SoundCloudPlaylistPlugin.cxx
index fdaffb6c9..3a5df3946 100644
--- a/src/playlist/plugins/SoundCloudPlaylistPlugin.cxx
+++ b/src/playlist/plugins/SoundCloudPlaylistPlugin.cxx
@@ -221,9 +221,9 @@ static constexpr yajl_callbacks parse_callbacks = {
*/
static void
soundcloud_parse_json(const char *url, Yajl::Handle &handle,
- Mutex &mutex, Cond &cond)
+ Mutex &mutex)
{
- auto input_stream = InputStream::OpenReady(url, mutex, cond);
+ auto input_stream = InputStream::OpenReady(url, mutex);
Yajl::ParseInputStream(handle, *input_stream);
}
@@ -235,7 +235,7 @@ soundcloud_parse_json(const char *url, Yajl::Handle &handle,
* soundcloud://url/<url or path of soundcloud page>
*/
static std::unique_ptr<SongEnumerator>
-soundcloud_open_uri(const char *uri, Mutex &mutex, Cond &cond)
+soundcloud_open_uri(const char *uri, Mutex &mutex)
{
assert(strncmp(uri, "soundcloud://", 13) == 0);
uri += 13;
@@ -277,7 +277,7 @@ soundcloud_open_uri(const char *uri, Mutex &mutex, Cond &cond)
SoundCloudJsonData data;
Yajl::Handle handle(&parse_callbacks, nullptr, &data);
- soundcloud_parse_json(u, handle, mutex, cond);
+ soundcloud_parse_json(u, handle, mutex);
data.songs.reverse();
return std::make_unique<MemorySongEnumerator>(std::move(data.songs));