RLCMAC_EncDec.cc: Fix egprs data block encode alignment

Selftests I'm using in the pcu testsuite to verify encoding are attached
too.

Change-Id: Id0e21248853eb5fac89e863822804cfbecf3c865
diff --git a/library/RLCMAC_Templates.ttcn b/library/RLCMAC_Templates.ttcn
index d2174d7..38147f3 100644
--- a/library/RLCMAC_Templates.ttcn
+++ b/library/RLCMAC_Templates.ttcn
@@ -326,6 +326,31 @@
 		}
 	}
 
+	/* Template for uplink Data block */
+	template RlcmacUlBlock t_RLCMAC_UL_EGPRS_DATA(CodingScheme mcs,
+						      template uint5_t tfi, template uint4_t cv,
+						      template uint11_t bsn1, template EgprsLlcBlocks blocks := {}) := {
+		data_egprs := {
+			mac_hdr := {
+				header_type := f_rlcmac_mcs2headertype(mcs),
+				tfi := tfi,
+				countdown := cv,
+				foi_si := '0'B,
+				r_ri := '0'B,
+				bsn1 := bsn1,
+				cps := f_rlcmac_mcs_to_cps(mcs, 1, false),
+				pfi_ind := false,
+				rsb := '0'B,
+				spb := '00'B
+			},
+			tlli_ind := false,
+			e := false,
+			tlli := omit,
+			pfi := omit,
+			blocks := blocks
+		}
+	}
+
 	template DlMacHeader t_RLCMAC_DlMacH(template MacPayloadType pt, template MacRrbp rrbp, template
 uint3_t usf) := {
 		payload_type := pt,
@@ -519,4 +544,11 @@
 		payload := data
 	}
 
+	/* Template for a LlcBlock (part of a LLC frame inside RlcMacEgprs?lDataBlock */
+	template EgprsLlcBlock t_RLCMAC_LLCBLOCK_EGPRS(octetstring data, boolean e := true) := {
+		/* let encoder figure out the header */
+		hdr := omit,
+		payload := data
+	}
+
 } with { encode "RAW"; variant "FIELDORDER(msb)" }