library/GSM_RR_Types: add minimalistic HandoverCommand
Similar to [1], the existing implementation [2] is unfriendly
to use, so let's work this around by defining a minimalistic
implementation of (RR) Handover Command.
[1] If1a5244a688abed6e6de2bf3f6e19e0e28129ea5
[2] titan.ProtocolModules.MobileL3_v13.4.0
MobileL3_RRM_Types.PDU_RRM_HandoverCommand_NW_MS
Change-Id: I08e6d33a725f99e2c92f93153b2369c4c764c012
Related: SYS#4868, OS#4545
diff --git a/library/GSM_RR_Types.ttcn b/library/GSM_RR_Types.ttcn
index c2c9d1b..2cb50bc 100644
--- a/library/GSM_RR_Types.ttcn
+++ b/library/GSM_RR_Types.ttcn
@@ -694,6 +694,36 @@
)"
};
+ /* 3GPP TS 44.018, section 9.1.15 (minimalistic implementation) */
+ type record HandoverCommand {
+ CellDescriptionV cell_desc,
+ ChannelDescription chan_desc,
+ OCT1 ho_ref,
+ PowerCommandAndAccesstype_V power_cmd_acc_type,
+ FrequencyList_TLV freq_list_at optional,
+ CellChannelDescription_TV cell_chan_desc optional,
+ ChannelMode_TV chan1_mode optional,
+ ChannelMode_TV chan2_mode optional,
+ /* TODO: Mode of Channel Set 3..8 IE */
+ MobileAllocationTLV mobile_allocation optional
+ /* TODO: more optional IEs... */
+ } with {
+ variant "TAG(
+ freq_list_at, elementIdentifier = '05'O;
+ cell_chan_desc, elementIdentifier = '62'O;
+ chan1_mode, elementIdentifier = '63'O;
+ chan2_mode, elementIdentifier = '11'O;
+ mobile_allocation, iei = '72'O;
+ )"
+ };
+
+ /* 10.5.2.2 Cell Description IE */
+ type record CellDescriptionV {
+ uint3_t bcc, /* PLMN colour code */
+ uint3_t ncc, /* BS colour code */
+ uint10_t bcch_arfcn
+ } with { variant "FIELDORDER(lsb)" };
+
/* 9.1.18 */
type record ImmediateAssignment {
@@ -853,6 +883,7 @@
PagingResponse paging_response,
MeasurementReport meas_rep,
AssignmentCommand ass_cmd,
+ HandoverCommand ho_cmd,
octetstring other
};
@@ -863,6 +894,7 @@
paging_response, header.message_type = PAGING_RESPONSE;
meas_rep, header.message_type = MEASUREMENT_REPORT;
ass_cmd, header.message_type = ASSIGNMENT_COMMAND;
+ ho_cmd, header.message_type = HANDOVER_COMMAND;
other, OTHERWISE;
)" }