From bfeb2711da172b26931c58af7b15d434ef49e24e Mon Sep 17 00:00:00 2001 From: Ferran Balaguer Date: Wed, 7 Aug 2019 15:14:56 +0100 Subject: IVGCVSW-3606 Support memory import for Reference backend Signed-off-by: Ferran Balaguer Change-Id: I94bd191f88e0911ad4e4727610e81cd7afa95512 --- src/backends/reference/RefTensorHandleFactory.cpp | 62 +++++++++++++++++++++++ 1 file changed, 62 insertions(+) create mode 100644 src/backends/reference/RefTensorHandleFactory.cpp (limited to 'src/backends/reference/RefTensorHandleFactory.cpp') diff --git a/src/backends/reference/RefTensorHandleFactory.cpp b/src/backends/reference/RefTensorHandleFactory.cpp new file mode 100644 index 0000000000..c97a779cb3 --- /dev/null +++ b/src/backends/reference/RefTensorHandleFactory.cpp @@ -0,0 +1,62 @@ +// +// Copyright © 2017 Arm Ltd. All rights reserved. +// SPDX-License-Identifier: MIT +// + +#include "RefTensorHandleFactory.hpp" +#include "RefTensorHandle.hpp" + +#include + +namespace armnn +{ + +using FactoryId = ITensorHandleFactory::FactoryId; + +const FactoryId& RefTensorHandleFactory::GetIdStatic() +{ + static const FactoryId s_Id(RefTensorHandleFactoryId()); + return s_Id; +} + +std::unique_ptr RefTensorHandleFactory::CreateSubTensorHandle(ITensorHandle& parent, + TensorShape const& subTensorShape, + unsigned int const* subTensorOrigin) const +{ + boost::ignore_unused(parent, subTensorShape, subTensorOrigin); + return nullptr; +} + +std::unique_ptr RefTensorHandleFactory::CreateTensorHandle(const TensorInfo& tensorInfo) const +{ + return std::make_unique(tensorInfo, m_MemoryManager, m_ImportFlags); +} + +std::unique_ptr RefTensorHandleFactory::CreateTensorHandle(const TensorInfo& tensorInfo, + DataLayout dataLayout) const +{ + boost::ignore_unused(dataLayout); + return std::make_unique(tensorInfo, m_MemoryManager, m_ImportFlags); +} + +const FactoryId& RefTensorHandleFactory::GetId() const +{ + return GetIdStatic(); +} + +bool RefTensorHandleFactory::SupportsSubTensors() const +{ + return false; +} + +MemorySourceFlags RefTensorHandleFactory::GetExportFlags() const +{ + return m_ExportFlags; +} + +MemorySourceFlags RefTensorHandleFactory::GetImportFlags() const +{ + return m_ImportFlags; +} + +} // namespace armnn \ No newline at end of file -- cgit v1.2.1