aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNabeel Ahmad <nabeel.ahmad@arm.com>2022-06-16 13:55:00 +0100
committerFrancis Murtagh <francis.murtagh@arm.com>2022-06-23 14:14:17 +0000
commit09fa24d2f4b0177d55800bd01ec52c337701ef0a (patch)
tree0065c0e8b6dba9e9101455c99a8d9d67eb4ee6d2
parent2112859d635b7e2b32fa536196143a2a22c189bf (diff)
downloadarmnn-09fa24d2f4b0177d55800bd01ec52c337701ef0a.tar.gz
NNXSW-3858: Get non-const IConnectableLayer from I/O slots
* Added non-const variants of existing const member functions in IInputSlot and IOutputSlot to retrieve non-const IConnectableLayer Signed-off-by: Nabeel Ahmad <nabeel.ahmad@arm.com> Change-Id: Ic3388b578324edb4d2cca36acce6560ad1ce83c5
-rw-r--r--include/armnn/INetwork.hpp2
-rw-r--r--src/armnn/Layer.cpp10
-rw-r--r--src/armnn/Layer.hpp2
3 files changed, 14 insertions, 0 deletions
diff --git a/include/armnn/INetwork.hpp b/include/armnn/INetwork.hpp
index 475367ece5..1ed560040f 100644
--- a/include/armnn/INetwork.hpp
+++ b/include/armnn/INetwork.hpp
@@ -29,6 +29,7 @@ public:
virtual const IOutputSlot* GetConnection() const = 0;
virtual IOutputSlot* GetConnection() = 0;
virtual const IConnectableLayer& GetOwningIConnectableLayer() const = 0;
+ virtual IConnectableLayer& GetOwningIConnectableLayer() = 0;
protected:
/// Not user deletable.
@@ -56,6 +57,7 @@ public:
virtual LayerGuid GetOwningLayerGuid() const = 0;
virtual const IConnectableLayer& GetOwningIConnectableLayer() const = 0;
+ virtual IConnectableLayer& GetOwningIConnectableLayer() = 0;
protected:
/// Not user deletable.
diff --git a/src/armnn/Layer.cpp b/src/armnn/Layer.cpp
index b1d495244d..19337dca5c 100644
--- a/src/armnn/Layer.cpp
+++ b/src/armnn/Layer.cpp
@@ -543,9 +543,19 @@ const IConnectableLayer& OutputSlot::GetOwningIConnectableLayer() const
return m_OwningLayer;
}
+IConnectableLayer& OutputSlot::GetOwningIConnectableLayer()
+{
+ return m_OwningLayer;
+}
+
const IConnectableLayer& InputSlot::GetOwningIConnectableLayer() const
{
return m_OwningLayer;
}
+IConnectableLayer& InputSlot::GetOwningIConnectableLayer()
+{
+ return m_OwningLayer;
+}
+
} // namespace armnn
diff --git a/src/armnn/Layer.hpp b/src/armnn/Layer.hpp
index 767cf97eb3..5edf66cabb 100644
--- a/src/armnn/Layer.hpp
+++ b/src/armnn/Layer.hpp
@@ -57,6 +57,7 @@ public:
OutputSlot* GetConnectedOutputSlot() { return m_Connection; }
const IConnectableLayer& GetOwningIConnectableLayer() const override;
+ IConnectableLayer& GetOwningIConnectableLayer() override;
/// Links the slot to an output slot or breaks an existing link if passing nullptr.
void SetConnection(OutputSlot* source)
@@ -118,6 +119,7 @@ public:
Layer& GetOwningLayer() const { return m_OwningLayer; }
const IConnectableLayer& GetOwningIConnectableLayer() const override;
+ IConnectableLayer& GetOwningIConnectableLayer() override;
LayerGuid GetOwningLayerGuid() const override;