RLCMAC: Add Rlcmac{Ul,Dl}Block unions to cover both Control + Data blocks
diff --git a/library/RLCMAC_Types.ttcn b/library/RLCMAC_Types.ttcn
index 6cd6e49..6231a54 100644
--- a/library/RLCMAC_Types.ttcn
+++ b/library/RLCMAC_Types.ttcn
@@ -87,7 +87,7 @@
 		with { extension "prototype(convert) decode(RAW)" };
 
 	type record UlMacCtrlHeader {
-		MacPayloadType		pt,
+		MacPayloadType		payload_type,
 		BIT5			spare,
 		boolean			retry
 	} with { variant (retry) "FIELDLENGTH(1)" };
@@ -152,7 +152,7 @@
 	/* TS 44.060 10.2.2 */
 	type record UlMacDataHeader {
 		/* Octet 0 */
-		MacPayloadType		pt,
+		MacPayloadType		payload_type,
 		uint4_t			countdown,
 		boolean			stall_ind,
 		boolean			retry,
@@ -195,4 +195,32 @@
 	external function enc_RlcmacUlDataBlock(in RlcmacUlDataBlock si) return octetstring;
 	external function dec_RlcmacUlDataBlock(in octetstring stream) return RlcmacUlDataBlock;
 
+	type union RlcmacUlBlock {
+		RlcmacUlDataBlock	data,
+		RlcmacUlCtrlBlock	ctrl
+	} with {
+		variant "TAG(data, mac_hdr.payload_type = MAC_PT_RLC_DATA;
+			     ctrl, mac_hdr.payload_type = MAC_PT_RLCMAC_NO_OPT;
+			     ctrl, mac_hdr.payload_type = MAC_PT_RLCMAC_OPT)"
+	};
+
+	external function enc_RlcmacUlBlock(in RlcmacUlBlock si) return octetstring
+		with { extension "prototype(convert) encode(RAW)" };
+	external function dec_RlcmacUlBlock(in octetstring stream) return RlcmacUlBlock
+		with { extension "prototype(convert) decode(RAW)" };
+
+	type union RlcmacDlBlock {
+		RlcmacDlDataBlock	data,
+		RlcmacDlCtrlBlock	ctrl
+	} with {
+		variant "TAG(data, mac_hdr.mac_hdr.payload_type = MAC_PT_RLC_DATA;
+			     ctrl, mac_hdr.payload_type = MAC_PT_RLCMAC_NO_OPT;
+			     ctrl, mac_hdr.payload_type = MAC_PT_RLCMAC_OPT)"
+	};
+
+	external function enc_RlcmacDlBlock(in RlcmacDlBlock si) return octetstring
+		with { extension "prototype(convert) encode(RAW)" };
+	external function dec_RlcmacDlBlock(in octetstring stream) return RlcmacDlBlock
+		with { extension "prototype(convert) decode(RAW)" };
+
 } with { encode "RAW"; variant "FIELDORDER(msb)" }