summaryrefslogtreecommitdiff
path: root/src/input
diff options
context:
space:
mode:
Diffstat (limited to 'src/input')
-rw-r--r--src/input/Registry.cxx11
-rw-r--r--src/input/Registry.hxx5
2 files changed, 16 insertions, 0 deletions
diff --git a/src/input/Registry.cxx b/src/input/Registry.cxx
index fba83515d..4a4dcff4b 100644
--- a/src/input/Registry.cxx
+++ b/src/input/Registry.cxx
@@ -83,3 +83,14 @@ const InputPlugin *const input_plugins[] = {
};
bool input_plugins_enabled[ARRAY_SIZE(input_plugins) - 1];
+
+bool
+HasRemoteTagScanner(const char *uri) noexcept
+{
+ input_plugins_for_each_enabled(plugin)
+ if (plugin->scan_tags != nullptr &&
+ plugin->SupportsUri(uri))
+ return true;
+
+ return false;
+}
diff --git a/src/input/Registry.hxx b/src/input/Registry.hxx
index 231292be1..6b5e72fb3 100644
--- a/src/input/Registry.hxx
+++ b/src/input/Registry.hxx
@@ -21,6 +21,7 @@
#define MPD_INPUT_REGISTRY_HXX
#include "check.h"
+#include "util/Compiler.h"
/**
* NULL terminated list of all input plugins which were enabled at
@@ -40,4 +41,8 @@ extern bool input_plugins_enabled[];
input_plugins_for_each(plugin) \
if (input_plugins_enabled[input_plugin_iterator - input_plugins])
+gcc_pure
+bool
+HasRemoteTagScanner(const char *uri) noexcept;
+
#endif