From 60a20fb62c992c4c6369bb7f532957f3e151f3d8 Mon Sep 17 00:00:00 2001 From: Narumol Prangnawarat Date: Mon, 9 Dec 2019 17:24:41 +0000 Subject: IVGCVSW-4212 Example of standalone dynamic reference backend * Add example to build dynamic reference backend * Add functions to clear dynamic backends * Fix the error when dynamic backend is not deregistered * Add DYARMNN_DYNAMIC_BACKEND_ENABLED to check disable empty dynamic backend when dynamic backend is enabled Signed-off-by: Narumol Prangnawarat Change-Id: I1ef3a3f10ed6ca5ec18d0af04b007fc3bc71a3cb --- src/armnn/DeviceSpec.hpp | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) (limited to 'src/armnn/DeviceSpec.hpp') diff --git a/src/armnn/DeviceSpec.hpp b/src/armnn/DeviceSpec.hpp index 32264706fd..703a4b123f 100644 --- a/src/armnn/DeviceSpec.hpp +++ b/src/armnn/DeviceSpec.hpp @@ -24,14 +24,33 @@ public: return m_SupportedBackends; } - void AddSupportedBackends(const BackendIdSet& backendIds) + void AddSupportedBackends(const BackendIdSet& backendIds, bool isDynamic = false) { m_SupportedBackends.insert(backendIds.begin(), backendIds.end()); + if (isDynamic) + { + m_DynamicBackends.insert(backendIds.begin(), backendIds.end()); + } + } + + void ClearDynamicBackends() + { + for (const auto& id : m_DynamicBackends) + { + m_SupportedBackends.erase(id); + } + m_DynamicBackends.clear(); + } + + const BackendIdSet& GetDynamicBackends() const + { + return m_DynamicBackends; } private: DeviceSpec() = delete; BackendIdSet m_SupportedBackends; + BackendIdSet m_DynamicBackends; }; } // namespace armnn -- cgit v1.2.1