ArmNN
 22.02
StrategyValidator.hpp
Go to the documentation of this file.
1 //
2 // Copyright © 2021 Arm Ltd and Contributors. All rights reserved.
3 // SPDX-License-Identifier: MIT
4 //
5 #pragma once
6 
7 #include <armnn/Types.hpp>
8 #include <armnn/Exceptions.hpp>
10 
11 namespace armnn
12 {
13 
15 {
16 public:
17 
18  void SetStrategy(std::shared_ptr<IMemoryOptimizerStrategy> strategy)
19  {
20  m_Strategy = strategy;
21  m_MemBlockStrategyType = strategy->GetMemBlockStrategyType();
22  }
23 
24  std::string GetName() const override
25  {
26  return "StrategyValidator";
27  }
28 
30  {
31  return m_MemBlockStrategyType;
32  }
33 
34  std::vector<MemBin> Optimize(std::vector<MemBlock>& memBlocks) override;
35 
36 private:
37  std::shared_ptr<IMemoryOptimizerStrategy> m_Strategy;
38  MemBlockStrategyType m_MemBlockStrategyType;
39 };
40 
41 } // namespace armnn
Copyright (c) 2021 ARM Limited and Contributors.
void SetStrategy(std::shared_ptr< IMemoryOptimizerStrategy > strategy)
std::vector< MemBin > Optimize(std::vector< MemBlock > &memBlocks) override
MemBlockStrategyType GetMemBlockStrategyType() const override
std::string GetName() const override
MemBlockStrategyType
Definition: Types.hpp:226