ArmNN
 20.05
ClWorkloadFactoryHelper.hpp
Go to the documentation of this file.
1 //
2 // Copyright © 2017 Arm Ltd. All rights reserved.
3 // SPDX-License-Identifier: MIT
4 //
5 
6 #pragma once
7 
12 
13 #include <cl/ClBackend.hpp>
14 #include <cl/ClWorkloadFactory.hpp>
15 
16 namespace
17 {
18 
19 template<>
20 struct WorkloadFactoryHelper<armnn::ClWorkloadFactory>
21 {
22  static armnn::IBackendInternal::IMemoryManagerSharedPtr GetMemoryManager()
23  {
24  armnn::ClBackend backend;
25  return backend.CreateMemoryManager();
26  }
27 
28  static armnn::ClWorkloadFactory GetFactory(
30  {
31  return armnn::ClWorkloadFactory(armnn::PolymorphicPointerDowncast<armnn::ClMemoryManager>(memoryManager));
32  }
33 };
34 
35 using ClWorkloadFactoryHelper = WorkloadFactoryHelper<armnn::ClWorkloadFactory>;
36 
37 } // anonymous namespace
Copyright (c) 2020 ARM Limited.
IBackendInternal::IMemoryManagerUniquePtr CreateMemoryManager() const override
Definition: ClBackend.cpp:35
std::shared_ptr< IMemoryManager > IMemoryManagerSharedPtr