IVGCVSW-2701 Add Serializer and Deserializer for Pad
Change-Id: I71184236f0394518f29944a77d4b934cbde9e53d
Signed-off-by: Nattapat Chaimanowong <nattapat.chaimanowong@arm.com>
diff --git a/src/armnnSerializer/Serializer.cpp b/src/armnnSerializer/Serializer.cpp
index 2000726..868a36d 100644
--- a/src/armnnSerializer/Serializer.cpp
+++ b/src/armnnSerializer/Serializer.cpp
@@ -306,6 +306,29 @@
CreateAnyLayer(flatBufferMultiplicationLayer.o, serializer::Layer::Layer_MultiplicationLayer);
}
+void SerializerVisitor::VisitPadLayer(const armnn::IConnectableLayer* layer,
+ const armnn::PadDescriptor& padDescriptor,
+ const char* name)
+{
+ auto flatBufferBaseLayer = CreateLayerBase(layer, serializer::LayerType::LayerType_Pad);
+
+ std::vector<unsigned int> padList;
+ for (auto& p: padDescriptor.m_PadList)
+ {
+ padList.push_back(p.first);
+ padList.push_back(p.second);
+ }
+
+ auto flatBufferPadDesc = serializer::CreatePadDescriptor(m_flatBufferBuilder,
+ m_flatBufferBuilder.CreateVector(padList));
+
+ auto flatBufferPadLayer = serializer::CreatePadLayer(m_flatBufferBuilder,
+ flatBufferBaseLayer,
+ flatBufferPadDesc);
+
+ CreateAnyLayer(flatBufferPadLayer.o, serializer::Layer::Layer_PadLayer);
+}
+
void SerializerVisitor::VisitPermuteLayer(const armnn::IConnectableLayer* layer,
const armnn::PermuteDescriptor& permuteDescriptor,
const char* name)