IVGCVSW-2683 Add Serializer & Deserializer for Constant

Change-Id: Iad7d89dfa963d9015cbe044f67aecc8bf6634b10
Signed-off-by: Conor Kennedy <conor.kennedy@arm.com>
diff --git a/src/armnnSerializer/Serializer.cpp b/src/armnnSerializer/Serializer.cpp
index a0a640e..b8f5c3b 100644
--- a/src/armnnSerializer/Serializer.cpp
+++ b/src/armnnSerializer/Serializer.cpp
@@ -141,6 +141,25 @@
     CreateAnyLayer(flatBufferAdditionLayer.o, serializer::Layer::Layer_AdditionLayer);
 }
 
+// Build FlatBuffer for Constant Layer
+void SerializerVisitor::VisitConstantLayer(const armnn::IConnectableLayer* layer,
+                                           const armnn::ConstTensor& input,
+                                           const char* name)
+{
+    // Create FlatBuffer BaseLayer
+    auto flatBufferConstantBaseLayer = CreateLayerBase(layer, serializer::LayerType::LayerType_Constant);
+
+    auto flatBufferConstTensorInfo = CreateConstTensorInfo(input);
+
+    // Create the FlatBuffer ConstantLayer
+    auto flatBufferLayer = CreateConstantLayer(m_flatBufferBuilder,
+                                               flatBufferConstantBaseLayer,
+                                               flatBufferConstTensorInfo);
+
+    // Add the AnyLayer to the FlatBufferLayers
+    CreateAnyLayer(flatBufferLayer.o, serializer::Layer::Layer_ConstantLayer);
+}
+
 // Build FlatBuffer for Convolution2dLayer
 void SerializerVisitor::VisitConvolution2dLayer(const armnn::IConnectableLayer* layer,
                                                 const armnn::Convolution2dDescriptor& descriptor,