• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 //
2 // Copyright © 2021 Arm Ltd and Contributors. All rights reserved.
3 // SPDX-License-Identifier: MIT
4 //
5 
6 #include <common/include/ProfilingGuid.hpp>
7 
8 namespace armnn
9 {
10 
11 class OptimizedNetworkImpl
12 {
13 public:
14     OptimizedNetworkImpl(const OptimizedNetworkImpl& other, const ModelOptions& modelOptions);
15     OptimizedNetworkImpl(std::unique_ptr<Graph> graph);
16     OptimizedNetworkImpl(std::unique_ptr<Graph> graph, const ModelOptions& modelOptions);
17     virtual ~OptimizedNetworkImpl();
18 
19     virtual Status PrintGraph();
20     virtual Status SerializeToDot(std::ostream& stream) const;
21 
GetGuid() const22     virtual arm::pipe::ProfilingGuid GetGuid() const { return m_Guid; };
23 
24     virtual size_t GetNumInputs() const;
25     virtual size_t GetNumOutputs() const;
26 
GetGraph()27     Graph& GetGraph() { return *m_Graph; }
GetGraph() const28     Graph& GetGraph() const { return *m_Graph; }
GetModelOptions()29     ModelOptions& GetModelOptions() { return m_ModelOptions; }
30 
31     void ExecuteStrategy(IStrategy& strategy) const;
32 
33 private:
34     std::unique_ptr<Graph> m_Graph;
35     arm::pipe::ProfilingGuid m_Guid;
36     ModelOptions m_ModelOptions;
37 };
38 
39 }
40