MME2 changes - Propped commits from openmme/paging branch. Added scripts
for code gen

Change-Id: Ie55032217232214ac8544ca76ea34335205329e4
diff --git a/src/gtpV2Codec/msgClasses/manual/gtpV2Message.cpp b/src/gtpV2Codec/msgClasses/manual/gtpV2Message.cpp
new file mode 100644
index 0000000..8fc7c73
--- /dev/null
+++ b/src/gtpV2Codec/msgClasses/manual/gtpV2Message.cpp
@@ -0,0 +1,63 @@
+ /*
+Copyright 2019-present Infosys Limited  
+   
+SPDX-License-Identifier: Apache-2.0  
+  
+*/ 
+ 
+
+
+#include "gtpV2Message.h"
+
+GtpV2Message::GtpV2Message() {
+	// TODO Auto-generated constructor stub
+
+}
+
+GtpV2Message::~GtpV2Message() {
+	// TODO Auto-generated destructor stub
+}
+
+void GtpV2Message::encodeHeader(MsgBuffer& buffer, GtpV2MessageHeader& msgHeader)
+{
+  buffer.writeBits(2, 3); // Gtpversion 2
+  buffer.writeBits(0, 1); //Pigiback - TODO later
+  buffer.writeBits(msgHeader.teidPresent, 1);
+  buffer.skipBits(3);
+
+  buffer.writeUint8(msgHeader.msgType);
+  buffer.writeUint16(msgHeader.msgLength);
+  
+  if (msgHeader.teidPresent)
+  {
+    buffer.writeUint32(msgHeader.teid);
+  }
+  
+  Uint32 seqNumber = msgHeader.sequenceNumber << 8;
+  std::cout << "current seq num indx is " << buffer.getCurrentIndex() << std::endl;
+  buffer.writeUint32(seqNumber);
+  
+}
+
+bool GtpV2Message::decodeHeader(MsgBuffer& buffer, GtpV2MessageHeader& msgHeader)
+{
+  buffer.skipBits(4);
+  msgHeader.teidPresent = buffer.readBit();
+  buffer.skipBits(3);
+
+  buffer.readUint8(msgHeader.msgType);
+  buffer.readUint16(msgHeader.msgLength);
+
+  if (msgHeader.teidPresent)
+  {
+    buffer.readUint32(msgHeader.teid);
+  }
+  Uint32 seqNumber;
+
+  buffer.readUint32(seqNumber);
+  msgHeader.sequenceNumber = (seqNumber >> 8);
+    
+  return true; //TODO
+
+}
+