// // Copyright © 2022 Arm Ltd and Contributors. All rights reserved. // SPDX-License-Identifier: MIT // #pragma once #include #include #include #include #include "tosaReference/TosaRefTensorHandleFactory.hpp" namespace { template<> struct WorkloadFactoryHelper { static armnn::IBackendInternal::IMemoryManagerSharedPtr GetMemoryManager() { armnn::TosaRefBackend backend; return backend.CreateMemoryManager(); } static armnn::TosaRefWorkloadFactory GetFactory( const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager = nullptr) { IgnoreUnused(memoryManager); return armnn::TosaRefWorkloadFactory(); } static armnn::TosaRefTensorHandleFactory GetTensorHandleFactory( const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager = nullptr) { return armnn::TosaRefTensorHandleFactory( armnn::PolymorphicPointerDowncast(memoryManager)); } }; using TosaRefWorkloadFactoryHelper = WorkloadFactoryHelper; } // anonymous namespace