// // Copyright © 2020 Arm Ltd and Contributors. All rights reserved. // SPDX-License-Identifier: MIT // #include "SampleDynamicTensorHandleFactory.hpp" #include "SampleTensorHandle.hpp" #include namespace armnn { using FactoryId = ITensorHandleFactory::FactoryId; const FactoryId& SampleDynamicTensorHandleFactory::GetIdStatic() { static const FactoryId s_Id(SampleDynamicTensorHandleFactoryId()); return s_Id; } std::unique_ptr SampleDynamicTensorHandleFactory::CreateSubTensorHandle(ITensorHandle& parent, TensorShape const& subTensorShape, unsigned int const* subTensorOrigin) const { IgnoreUnused(parent, subTensorShape, subTensorOrigin); return nullptr; } std::unique_ptr SampleDynamicTensorHandleFactory::CreateTensorHandle(const TensorInfo& tensorInfo) const { return std::make_unique(tensorInfo, m_MemoryManager); } std::unique_ptr SampleDynamicTensorHandleFactory::CreateTensorHandle(const TensorInfo& tensorInfo, DataLayout dataLayout) const { IgnoreUnused(dataLayout); return std::make_unique(tensorInfo, m_MemoryManager); } std::unique_ptr SampleDynamicTensorHandleFactory::CreateTensorHandle(const TensorInfo& tensorInfo, const bool IsMemoryManaged) const { if (IsMemoryManaged) { return std::make_unique(tensorInfo, m_MemoryManager); } else { return std::make_unique(tensorInfo, m_ImportFlags); } } std::unique_ptr SampleDynamicTensorHandleFactory::CreateTensorHandle(const TensorInfo& tensorInfo, DataLayout dataLayout, const bool IsMemoryManaged) const { IgnoreUnused(dataLayout); if (IsMemoryManaged) { return std::make_unique(tensorInfo, m_MemoryManager); } else { return std::make_unique(tensorInfo, m_ImportFlags); } } const FactoryId& SampleDynamicTensorHandleFactory::GetId() const { return GetIdStatic(); } bool SampleDynamicTensorHandleFactory::SupportsSubTensors() const { return false; } MemorySourceFlags SampleDynamicTensorHandleFactory::GetExportFlags() const { return m_ExportFlags; } MemorySourceFlags SampleDynamicTensorHandleFactory::GetImportFlags() const { return m_ImportFlags; } } // namespace armnn