aboutsummaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorFrancis Murtagh <francis.murtagh@arm.com>2023-08-08 10:38:25 +0100
committerNikhil Raj Arm <nikhil.raj@arm.com>2023-08-08 15:47:11 +0000
commita5048344b5dc95cf305d7ffdc7390ef6df109f4c (patch)
treeda218b344fa7fba047dbae5f41359fe417833765 /include
parent9a189071c3439e6e8de7845b96a509ca58d9363f (diff)
downloadarmnn-a5048344b5dc95cf305d7ffdc7390ef6df109f4c.tar.gz
IVGCVSW-7635 Remove deprecated code due to be removed in 23.08 (ILayerSupport)
* Fix failure in SampleDynamicLayerSupport and SampleDynamicWorkloadFactory. * Provide implementation of CreateWorkload() accepting LayerType * Made WorkloadFactory::CreateWorkload() pure virtual again to force backend API users to implement. Signed-off-by: Francis Murtagh <francis.murtagh@arm.com> Change-Id: Iecd180214a92c9fd7174fd36ae8aa2bdbc9d3deb
Diffstat (limited to 'include')
-rw-r--r--include/armnn/backends/WorkloadFactory.hpp14
1 files changed, 9 insertions, 5 deletions
diff --git a/include/armnn/backends/WorkloadFactory.hpp b/include/armnn/backends/WorkloadFactory.hpp
index d5ebf28ed3..cdbe372219 100644
--- a/include/armnn/backends/WorkloadFactory.hpp
+++ b/include/armnn/backends/WorkloadFactory.hpp
@@ -64,16 +64,20 @@ public:
virtual std::unique_ptr<ITensorHandle> CreateTensorHandle(const TensorInfo& tensorInfo,
DataLayout dataLayout,
const bool IsMemoryManaged = true) const = 0;
+
+ /// Backends should implement their own CreateWorkload function with a switch statement.
+ /// The case for the switch should be the LayerType and based on that they will call their
+ /// specific workload creation functionality.
virtual std::unique_ptr<IWorkload> CreateWorkload(LayerType type,
const QueueDescriptor& descriptor,
- const WorkloadInfo& info) const;
+ const WorkloadInfo& info) const = 0;
private:
static bool IsLayerConfigurationSupported(const BackendId& backendId,
- const IConnectableLayer& connectableLayer,
- Optional<DataType> dataType,
- std::string& outReasonIfUnsupported,
- const ModelOptions& modelOptions = {});
+ const IConnectableLayer& connectableLayer,
+ Optional<DataType> dataType,
+ std::string& outReasonIfUnsupported,
+ const ModelOptions& modelOptions = {});
};
} // namespace armnn