blob: d0a3de8682f72151138278244c125179606130b6 [file] [log] [blame]
Matteo Martincigh88054f82019-05-17 12:15:30 +01001//
2// Copyright © 2017 Arm Ltd. All rights reserved.
3// SPDX-License-Identifier: MIT
4//
5
6#pragma once
7
8#include <backendsCommon/IBackendInternal.hpp>
9#include <backendsCommon/OptimizationViews.hpp>
10
11namespace armnn
12{
13
14class MockBackend : public IBackendInternal
15{
16public:
17 MockBackend() = default;
18 ~MockBackend() = default;
19
20 static const BackendId& GetIdStatic();
21 const BackendId& GetId() const override { return GetIdStatic(); }
22
23 IBackendInternal::IMemoryManagerUniquePtr CreateMemoryManager() const override;
24
25 IBackendInternal::IWorkloadFactoryPtr CreateWorkloadFactory(
26 const IBackendInternal::IMemoryManagerSharedPtr& memoryManager = nullptr) const override;
27
28 IBackendInternal::IBackendContextPtr CreateBackendContext(const IRuntime::CreationOptions&) const override;
29
30 IBackendInternal::Optimizations GetOptimizations() const override;
31 IBackendInternal::ILayerSupportSharedPtr GetLayerSupport() const override;
32
33 OptimizationViews OptimizeSubgraphView(const SubgraphView& subgraph) const override;
34};
35
36} // namespace armnn