aboutsummaryrefslogtreecommitdiff
path: root/src/armnnSerializer/Serializer.cpp
diff options
context:
space:
mode:
authorSadik Armagan <sadik.armagan@arm.com>2019-03-04 17:44:21 +0000
committerSadik Armagan <sadik.armagan@arm.com>2019-03-07 09:24:37 +0000
commitac97c8cda28f81ce76834b8b769967d42b02e2ac (patch)
tree7bf1b1104a4bfb041ee5d74cabe1e1be2664af70 /src/armnnSerializer/Serializer.cpp
parentc192f35edefd0977396db8d381adc7598e3660cc (diff)
downloadarmnn-ac97c8cda28f81ce76834b8b769967d42b02e2ac.tar.gz
IVGCVSW-2696 Serialize / de-serialize the Mean layer
Change-Id: Iee4bab5a6d6b992cf4bba8697a2918f854c906a3 Signed-off-by: Sadik Armagan <sadik.armagan@arm.com>
Diffstat (limited to 'src/armnnSerializer/Serializer.cpp')
-rw-r--r--src/armnnSerializer/Serializer.cpp53
1 files changed, 32 insertions, 21 deletions
diff --git a/src/armnnSerializer/Serializer.cpp b/src/armnnSerializer/Serializer.cpp
index 4e408ae807..56c4281a87 100644
--- a/src/armnnSerializer/Serializer.cpp
+++ b/src/armnnSerializer/Serializer.cpp
@@ -313,12 +313,20 @@ void SerializerVisitor::VisitFloorLayer(const armnn::IConnectableLayer *layer, c
CreateAnyLayer(flatBufferFloorLayer.o, serializer::Layer::Layer_FloorLayer);
}
-void SerializerVisitor::VisitMinimumLayer(const armnn::IConnectableLayer* layer, const char* name)
+void SerializerVisitor::VisitGatherLayer(const armnn::IConnectableLayer* layer, const char* name)
{
- auto fbMinimumBaseLayer = CreateLayerBase(layer, serializer::LayerType::LayerType_Minimum);
- auto fbMinimumLayer = serializer::CreateMinimumLayer(m_flatBufferBuilder, fbMinimumBaseLayer);
+ auto fbGatherBaseLayer = CreateLayerBase(layer, serializer::LayerType::LayerType_Gather);
+ auto flatBufferLayer = serializer::CreateGatherLayer(m_flatBufferBuilder, fbGatherBaseLayer);
- CreateAnyLayer(fbMinimumLayer.o, serializer::Layer::Layer_MinimumLayer);
+ CreateAnyLayer(flatBufferLayer.o, serializer::Layer::Layer_GatherLayer);
+}
+
+void SerializerVisitor::VisitGreaterLayer(const armnn::IConnectableLayer* layer, const char* name)
+{
+ auto fbGreaterBaseLayer = CreateLayerBase(layer, serializer::LayerType::LayerType_Greater);
+ auto fbGreaterLayer = serializer::CreateGreaterLayer(m_flatBufferBuilder, fbGreaterBaseLayer);
+
+ CreateAnyLayer(fbGreaterLayer.o, serializer::Layer::Layer_GreaterLayer);
}
void SerializerVisitor::VisitMaximumLayer(const armnn::IConnectableLayer* layer, const char* name)
@@ -329,34 +337,37 @@ void SerializerVisitor::VisitMaximumLayer(const armnn::IConnectableLayer* layer,
CreateAnyLayer(fbMaximumLayer.o, serializer::Layer::Layer_MaximumLayer);
}
-void SerializerVisitor::VisitGatherLayer(const armnn::IConnectableLayer* layer, const char* name)
+void SerializerVisitor::VisitMeanLayer(const armnn::IConnectableLayer* layer,
+ const armnn::MeanDescriptor& descriptor,
+ const char* name)
{
- auto fbGatherBaseLayer = CreateLayerBase(layer, serializer::LayerType::LayerType_Gather);
- auto flatBufferLayer = serializer::CreateGatherLayer(m_flatBufferBuilder, fbGatherBaseLayer);
+ auto fbMeanBaseLayer = CreateLayerBase(layer, serializer::LayerType::LayerType_Mean);
+ auto fbMeanDescriptor = serializer::CreateMeanDescriptor(m_flatBufferBuilder,
+ m_flatBufferBuilder.CreateVector(descriptor.m_Axis),
+ descriptor.m_KeepDims);
- CreateAnyLayer(flatBufferLayer.o, serializer::Layer::Layer_GatherLayer);
+ auto fbMeanLayer = serializer::CreateMeanLayer(m_flatBufferBuilder,
+ fbMeanBaseLayer,
+ fbMeanDescriptor);
+
+ CreateAnyLayer(fbMeanLayer.o, serializer::Layer::Layer_MeanLayer);
}
-void SerializerVisitor::VisitGreaterLayer(const armnn::IConnectableLayer* layer, const char* name)
+void SerializerVisitor::VisitMinimumLayer(const armnn::IConnectableLayer* layer, const char* name)
{
- auto fbGreaterBaseLayer = CreateLayerBase(layer, serializer::LayerType::LayerType_Greater);
- auto fbGreaterLayer = serializer::CreateGreaterLayer(m_flatBufferBuilder, fbGreaterBaseLayer);
+ auto fbMinimumBaseLayer = CreateLayerBase(layer, serializer::LayerType::LayerType_Minimum);
+ auto fbMinimumLayer = serializer::CreateMinimumLayer(m_flatBufferBuilder, fbMinimumBaseLayer);
- CreateAnyLayer(fbGreaterLayer.o, serializer::Layer::Layer_GreaterLayer);
+ CreateAnyLayer(fbMinimumLayer.o, serializer::Layer::Layer_MinimumLayer);
}
-// Build FlatBuffer for Multiplication Layer
void SerializerVisitor::VisitMultiplicationLayer(const armnn::IConnectableLayer* layer, const char* name)
{
- // Create FlatBuffer BaseLayer
- auto flatBufferMultiplicationBaseLayer = CreateLayerBase(layer, serializer::LayerType::LayerType_Multiplication);
-
- // Create the FlatBuffer MultiplicationLayer
- auto flatBufferMultiplicationLayer =
- serializer::CreateMultiplicationLayer(m_flatBufferBuilder, flatBufferMultiplicationBaseLayer);
+ auto fbMultiplicationBaseLayer = CreateLayerBase(layer, serializer::LayerType::LayerType_Multiplication);
+ auto fbMultiplicationLayer = serializer::CreateMultiplicationLayer(m_flatBufferBuilder,
+ fbMultiplicationBaseLayer);
- // Add the AnyLayer to the FlatBufferLayers
- CreateAnyLayer(flatBufferMultiplicationLayer.o, serializer::Layer::Layer_MultiplicationLayer);
+ CreateAnyLayer(fbMultiplicationLayer.o, serializer::Layer::Layer_MultiplicationLayer);
}
void SerializerVisitor::VisitPadLayer(const armnn::IConnectableLayer* layer,