26 template <
typename Func>
29 for (
auto it = m_Layers.begin(); it != m_Layers.end(); )
31 auto next = std::next(it);
37 template <
typename Func>
40 for (
auto it = m_IConnectableLayers.begin(); it != m_IConnectableLayers.end(); )
42 auto next = std::next(it);
65 "IConnectableLayers, IInputSlots and IOutputSlots",
"22.11")
95 const
Layers& GetLayers() const;
100 const
InputSlot* GetInputSlot(
unsigned int index) const;
103 "IInputSlot", "22.11")
104 InputSlot* GetInputSlot(
unsigned int index);
109 const
OutputSlot* GetOutputSlot(
unsigned int index) const;
112 " public IOutputSlot", "22.11")
113 OutputSlot* GetOutputSlot(
unsigned int index);
125 "IConnectableLayerIterator, until that occurs in 23.02; please use "
126 "
endIConnectable() returning public IConnectableLayerIterator", "23.02")
132 "beginIConnectable() returning public ConstIConnectableIterator", "23.02")
134 ConstIConnectableIterator beginIConnectable() const;
136 "ConstIConnectableIterator, until that occurs in 23.02; please use "
137 "endIConnectable() returning public ConstIConnectableIterator", "23.02")
139 ConstIConnectableIterator endIConnectable() const;
142 "ConstIConnectableIterator, until that occurs in 23.02; please use "
147 "ConstIConnectableIterator, until that occurs in 23.02; please use "
167 struct SubgraphViewWorkingCopy;
170 SubgraphView(IConnectableLayers&& layers,
171 IInputSlots&& inputs,
172 IOutputSlots&& outputs,
173 std::shared_ptr<SubgraphViewWorkingCopy> ptr);
175 void CheckSubgraph();
178 void ArrangeBySortOrder();
182 IInputSlots m_IInputSlots;
186 IOutputSlots m_IOutputSlots;
190 IConnectableLayers m_IConnectableLayers;
196 std::shared_ptr<SubgraphViewWorkingCopy> p_WorkingCopyImpl;
IConnectableLayers::iterator IConnectableLayerIterator
IConnectableLayerIterator endIConnectable()
Interface for a layer that is connectable to other layers via InputSlots and OutputSlots.
Layers::iterator Iterator
const IOutputSlots & GetIOutputSlots() const
const IConnectableLayers & GetIConnectableLayers() const
const IInputSlots & GetIInputSlots() const
std::vector< OutputSlot * > OutputSlots
unsigned int GetNumInputSlots() const
IConnectableLayerIterator beginIConnectable()
Copyright (c) 2021 ARM Limited and Contributors.
ConstIConnectableIterator cendIConnectable() const
void SubstituteSubgraph(SubgraphView &, IConnectableLayer *)
These methods should be called on a working copy subgraph created from GetWorkingCopy.
const IOutputSlot * GetIOutputSlot(unsigned int index) const
The SubgraphView class represents a subgraph of a Graph.
OutputSlots Layers && layers
std::unique_ptr< SubgraphView > SubgraphViewPtr
std::list< IConnectableLayer * > IConnectableLayers
An output connection slot for a layer.
std::vector< IOutputSlot * > IOutputSlots
void ForEachIConnectableLayer(Func func) const
std::vector< IInputSlot * > IInputSlots
std::vector< InputSlot * > InputSlots
SubgraphView(Graph &graph)
Constructs a sub-graph from the entire given graph.
IConnectableLayers::const_iterator ConstIConnectableIterator
ARMNN_DEPRECATED_MSG_REMOVAL_DATE("This function has been deprecated, please use constructor with arguments: " "IConnectableLayers, IInputSlots and IOutputSlots", "22.11") SubgraphView(InputSlots &&inputs
Constructs a sub-graph with the given arguments.
void ForEachLayer(Func func) const
std::list< Layer * > Layers
SubgraphView GetWorkingCopy()
This method returns a copy of the original SubgraphView provided by OptimizeSubgraphView with a separ...
Layers::const_iterator ConstIterator
const IInputSlot * GetIInputSlot(unsigned int index) const
unsigned int GetNumOutputSlots() const
ARMNN_DEPRECATED_MSG_CHANGE_DATE("This function is deprecated and will be changed to return an " "IConnectableLayerIterator, until that occurs in 23.02; please use " "beginIConnectable() returning public IConnectableLayerIterator", "23.02") Iterator begin()
ConstIConnectableIterator cbeginIConnectable() const