aboutsummaryrefslogtreecommitdiff
path: root/src/backends/neon/NeonTensorHandleFactory.cpp
diff options
context:
space:
mode:
authorJan Eilers <jan.eilers@arm.com>2019-08-16 10:28:37 +0100
committerDavid Monahan <david.monahan@arm.com>2019-08-20 10:41:18 +0100
commite9f0f0fdda42ba17085ba4d86e0c84ab68ed2f5a (patch)
tree5b3f1a2471d9ba0bd9d3698a8135649414ca328e /src/backends/neon/NeonTensorHandleFactory.cpp
parent895339092fa9edc0aa59de0309f79bebacc3fa63 (diff)
downloadarmnn-e9f0f0fdda42ba17085ba4d86e0c84ab68ed2f5a.tar.gz
IVGCVSW-3617 Add CL TensorHandleFactory
* Adds ClTensorHandleFactory * Includes some refactoring of NeonTensorHandleFactory Signed-off-by: Jan Eilers <jan.eilers@arm.com> Change-Id: I9f0874b1945050267c5ece970e6d9b200ed8a865
Diffstat (limited to 'src/backends/neon/NeonTensorHandleFactory.cpp')
-rw-r--r--src/backends/neon/NeonTensorHandleFactory.cpp16
1 files changed, 11 insertions, 5 deletions
diff --git a/src/backends/neon/NeonTensorHandleFactory.cpp b/src/backends/neon/NeonTensorHandleFactory.cpp
index ef342347d3..aff594c9d9 100644
--- a/src/backends/neon/NeonTensorHandleFactory.cpp
+++ b/src/backends/neon/NeonTensorHandleFactory.cpp
@@ -11,18 +11,18 @@
namespace armnn
{
-using FactoryId = std::string;
+using FactoryId = ITensorHandleFactory::FactoryId;
std::unique_ptr<ITensorHandle> NeonTensorHandleFactory::CreateSubTensorHandle(ITensorHandle& parent,
- TensorShape const& subTensorShape,
- unsigned int const* subTensorOrigin)
+ const TensorShape& subTensorShape,
+ const unsigned int* subTensorOrigin)
const
{
const arm_compute::TensorShape shape = armcomputetensorutils::BuildArmComputeTensorShape(subTensorShape);
arm_compute::Coordinates coords;
coords.set_num_dimensions(subTensorShape.GetNumDimensions());
- for (unsigned int i = 0; i < subTensorShape.GetNumDimensions(); i++)
+ for (unsigned int i = 0; i < subTensorShape.GetNumDimensions(); ++i)
{
// Arm compute indexes tensor coords in reverse order.
unsigned int revertedIndex = subTensorShape.GetNumDimensions() - i - 1;
@@ -56,9 +56,15 @@ std::unique_ptr<ITensorHandle> NeonTensorHandleFactory::CreateTensorHandle(const
return tensorHandle;
}
+const FactoryId& NeonTensorHandleFactory::GetIdStatic()
+{
+ static const FactoryId s_Id(NeonTensorHandleFactoryId());
+ return s_Id;
+}
+
const FactoryId NeonTensorHandleFactory::GetId() const
{
- return m_Id;
+ return GetIdStatic();
}
bool NeonTensorHandleFactory::SupportsSubTensors() const