aboutsummaryrefslogtreecommitdiff
path: root/include/armnn/BackendOptions.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'include/armnn/BackendOptions.hpp')
-rw-r--r--include/armnn/BackendOptions.hpp19
1 files changed, 19 insertions, 0 deletions
diff --git a/include/armnn/BackendOptions.hpp b/include/armnn/BackendOptions.hpp
index 44438b2f7c..4aee070866 100644
--- a/include/armnn/BackendOptions.hpp
+++ b/include/armnn/BackendOptions.hpp
@@ -14,6 +14,8 @@ namespace armnn
struct BackendOptions;
using NetworkOptions = std::vector<BackendOptions>;
+using ModelOptions = std::vector<BackendOptions>;
+
/// Struct for the users to pass backend specific options
struct BackendOptions
{
@@ -262,4 +264,21 @@ private:
std::vector<BackendOption> m_Options;
};
+
+template <typename F>
+void ParseOptions(const std::vector<BackendOptions>& options, BackendId backend, F f)
+{
+ for (auto optionsGroup : options)
+ {
+ if (optionsGroup.GetBackendId() == backend)
+ {
+ for (size_t i=0; i < optionsGroup.GetOptionCount(); i++)
+ {
+ const BackendOptions::BackendOption option = optionsGroup.GetOption(i);
+ f(option.GetName(), option.GetValue());
+ }
+ }
+ }
+}
+
} //namespace armnn