library/GSM_RR_Types: add minimalistic AssignmentCommand
Unfortunately, the existing implementation [1] is somewhat incomplete and unfriendly to build templates on: - some fields holding integer numbers defined as BITx, so we would have to do bit2int() / int2bit(); - some bit-map fields defined as octetstrings; - some fields are not decoded at all (raw octetstrings). Let's work this around by defining a minimalistic implementation of (RR) Assignment Command with all mandatory and some optional fields. Reuse some IEs directly from MobileL3_RRM_Types. [1] titan.ProtocolModules.MobileL3_v13.4.0 MobileL3_RRM_Types.PDU_RRM_AssignmentCommand_NW_MS Change-Id: If1a5244a688abed6e6de2bf3f6e19e0e28129ea5 Related: SYS#4868, OS#4545
This commit is contained in:
parent
12941bd6b0
commit
27b3801bed
|
@ -17,6 +17,7 @@ module GSM_RR_Types {
|
|||
import from GSM_Types all;
|
||||
import from RLCMAC_CSN1_Types all;
|
||||
import from MobileL3_CommonIE_Types all;
|
||||
import from MobileL3_RRM_Types all;
|
||||
|
||||
/* Table 10.4.1 of Section 10.4 / 3GPP TS 44.018 */
|
||||
type enumerated RrMessageType {
|
||||
|
@ -671,6 +672,29 @@ module GSM_RR_Types {
|
|||
type record of NcellReport NcellReports;
|
||||
|
||||
|
||||
/* 3GPP TS 44.018, section 9.1.2 (minimalistic implementation) */
|
||||
type record AssignmentCommand {
|
||||
ChannelDescription chan_desc,
|
||||
PowerCommand_V power_cmd,
|
||||
FrequencyList_TLV freq_list_at optional,
|
||||
CellChannelDescription_TV cell_chan_desc optional,
|
||||
/* TODO: Multislot Allocation IE */
|
||||
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;
|
||||
)"
|
||||
};
|
||||
|
||||
|
||||
/* 9.1.18 */
|
||||
type record ImmediateAssignment {
|
||||
DedicatedModeOrTbf ded_or_tbf,
|
||||
|
@ -828,6 +852,7 @@ module GSM_RR_Types {
|
|||
type union RrL3Union {
|
||||
PagingResponse paging_response,
|
||||
MeasurementReport meas_rep,
|
||||
AssignmentCommand ass_cmd,
|
||||
octetstring other
|
||||
};
|
||||
|
||||
|
@ -837,6 +862,7 @@ module GSM_RR_Types {
|
|||
} with { variant (payload) "CROSSTAG(
|
||||
paging_response, header.message_type = PAGING_RESPONSE;
|
||||
meas_rep, header.message_type = MEASUREMENT_REPORT;
|
||||
ass_cmd, header.message_type = ASSIGNMENT_COMMAND;
|
||||
other, OTHERWISE;
|
||||
)" }
|
||||
|
||||
|
|
|
@ -9,7 +9,7 @@ FILES="TCCInterface_Functions.ttcn TCCConversion_Functions.ttcn TCCConversion.cc
|
|||
gen_links $DIR $FILES
|
||||
|
||||
DIR=$BASEDIR/titan.ProtocolModules.MobileL3_v13.4.0/src
|
||||
FILES="MobileL3_CommonIE_Types.ttcn MobileL3_GMM_SM_Types.ttcn MobileL3_MM_Types.ttcn"
|
||||
FILES="MobileL3_CommonIE_Types.ttcn MobileL3_GMM_SM_Types.ttcn MobileL3_MM_Types.ttcn MobileL3_RRM_Types.ttcn"
|
||||
gen_links $DIR $FILES
|
||||
|
||||
DIR=$BASEDIR/titan.TestPorts.Common_Components.Socket-API/src
|
||||
|
|
Loading…
Reference in New Issue