diff options
author | Aron Virginas-Tar <Aron.Virginas-Tar@arm.com> | 2018-11-12 18:10:43 +0000 |
---|---|---|
committer | Aron Virginas-Tar <Aron.Virginas-Tar@arm.com> | 2018-11-13 14:41:52 +0000 |
commit | 56055193e82471a70b82e4eb11a8884c5904af75 (patch) | |
tree | bf66d0ba0088d963def8485c7e894b12d7a65b82 /src/backends/backendsCommon/IBackendInternal.hpp | |
parent | 95807cef855738ca481ace30f32ed9f245a098dd (diff) | |
download | armnn-56055193e82471a70b82e4eb11a8884c5904af75.tar.gz |
IVGCVSW-2066: Add IMemoryManager and integrate into the backends framework
Change-Id: I93223c8678165cbc3d39f461c36bb8610dc81c05
Diffstat (limited to 'src/backends/backendsCommon/IBackendInternal.hpp')
-rw-r--r-- | src/backends/backendsCommon/IBackendInternal.hpp | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/src/backends/backendsCommon/IBackendInternal.hpp b/src/backends/backendsCommon/IBackendInternal.hpp index 9d649fcfe2..b102d1a1f9 100644 --- a/src/backends/backendsCommon/IBackendInternal.hpp +++ b/src/backends/backendsCommon/IBackendInternal.hpp @@ -12,6 +12,7 @@ namespace armnn { class IWorkloadFactory; class IBackendContext; +class IMemoryManager; class Optimization; class ILayerSupport; @@ -33,8 +34,16 @@ public: using Optimizations = std::vector<OptimizationPtr>; using ILayerSupportSharedPtr = std::shared_ptr<ILayerSupport>; - virtual IWorkloadFactoryPtr CreateWorkloadFactory() const = 0; + using IMemoryManagerUniquePtr = std::unique_ptr<IMemoryManager>; + using IMemoryManagerSharedPtr = std::shared_ptr<IMemoryManager>; + + virtual IMemoryManagerUniquePtr CreateMemoryManager() const = 0; + + virtual IWorkloadFactoryPtr CreateWorkloadFactory( + const IMemoryManagerSharedPtr& memoryManager = nullptr) const = 0; + virtual IBackendContextPtr CreateBackendContext(const IRuntime::CreationOptions&) const = 0; + virtual Optimizations GetOptimizations() const = 0; virtual ILayerSupportSharedPtr GetLayerSupport() const = 0; }; |