// This C++ source file was generated by the TTCN-3 compiler
// of the TTCN-3 Test Executor version 11.1.0
// The generation of user and time information were disabled by the -D flag.

// Copyright (c) 2000-2025 Ericsson Telecom AB

// Do not edit this file unless you know what you are doing.

/* Including header files */

#include "RLCMAC_Templates.hh"

namespace RLCMAC__Templates {

/* Literal string constants */

const unsigned char bs_1_bits[] = { 0 },
bs_3_bits[] = { 0 },
bs_0_bits[] = { 0 },
bs_2_bits[] = { 1 };
extern const BITSTRING bs_1(1, bs_1_bits),
bs_3(2, bs_3_bits),
bs_0(5, bs_0_bits),
bs_2(1, bs_2_bits);
const unsigned char os_0_octets[] = { 43, 43, 43, 43, 43, 43, 43 };
extern const OCTETSTRING os_0(7, os_0_octets);
extern const CHARSTRING cs_0(4, "omit");
const unsigned char module_checksum[] = { 0x5e, 0x78, 0x96, 0x9c, 0x1f, 0x54, 0x1f, 0x86, 0x2e, 0xff, 0x22, 0x0b, 0x4a, 0xd4, 0xbc, 0x5b };

/* Global variable definitions */

RLCMAC__Types::CodingScheme_template template_cs__gprs__any;
const RLCMAC__Types::CodingScheme_template& cs__gprs__any = template_cs__gprs__any;
RLCMAC__Types::CodingScheme_template template_mcs__egprs__any;
const RLCMAC__Types::CodingScheme_template& mcs__egprs__any = template_mcs__egprs__any;
BOOLEAN const_f__rlcmac__mcs__to__cps_with__padding_defval;
const BOOLEAN& f__rlcmac__mcs__to__cps_with__padding_defval = const_f__rlcmac__mcs__to__cps_with__padding_defval;
RLCMAC__Types::MacPayloadType const_ts__RLC__UL__CTRL__ACK_pt_defval;
const RLCMAC__Types::MacPayloadType& ts__RLC__UL__CTRL__ACK_pt_defval = const_ts__RLC__UL__CTRL__ACK_pt_defval;
BOOLEAN const_ts__RLC__UL__CTRL__ACK_retry_defval;
const BOOLEAN& ts__RLC__UL__CTRL__ACK_retry_defval = const_ts__RLC__UL__CTRL__ACK_retry_defval;
BOOLEAN const_ts__RLCMAC__DL__ACK__NACK_retry_defval;
const BOOLEAN& ts__RLCMAC__DL__ACK__NACK_retry_defval = const_ts__RLCMAC__DL__ACK__NACK_retry_defval;
RLCMAC__CSN1__Types::ChannelReqDescription_template template_ts__RLCMAC__DL__ACK__NACK_chreq__desc_defval;
const RLCMAC__CSN1__Types::ChannelReqDescription_template& ts__RLCMAC__DL__ACK__NACK_chreq__desc_defval = template_ts__RLCMAC__DL__ACK__NACK_chreq__desc_defval;
BOOLEAN const_ts__RLCMAC__DL__ACK__NACK__EGPRS_retry_defval;
const BOOLEAN& ts__RLCMAC__DL__ACK__NACK__EGPRS_retry_defval = const_ts__RLCMAC__DL__ACK__NACK__EGPRS_retry_defval;
RLCMAC__CSN1__Types::ChannelReqDescription_template template_ts__RLCMAC__DL__ACK__NACK__EGPRS_chreq__desc_defval;
const RLCMAC__CSN1__Types::ChannelReqDescription_template& ts__RLCMAC__DL__ACK__NACK__EGPRS_chreq__desc_defval = template_ts__RLCMAC__DL__ACK__NACK__EGPRS_chreq__desc_defval;
RLCMAC__Types::LlcBlocks_template template_t__RLCMAC__UL__DATA_blocks_defval;
const RLCMAC__Types::LlcBlocks_template& t__RLCMAC__UL__DATA_blocks_defval = template_t__RLCMAC__UL__DATA_blocks_defval;
BOOLEAN_template template_t__RLCMAC__UL__DATA_stall_defval;
const BOOLEAN_template& t__RLCMAC__UL__DATA_stall_defval = template_t__RLCMAC__UL__DATA_stall_defval;
RLCMAC__Types::LlcBlocks_template template_t__RLCMAC__UL__DATA__TLLI_blocks_defval;
const RLCMAC__Types::LlcBlocks_template& t__RLCMAC__UL__DATA__TLLI_blocks_defval = template_t__RLCMAC__UL__DATA__TLLI_blocks_defval;
BOOLEAN_template template_t__RLCMAC__UL__DATA__TLLI_stall_defval;
const BOOLEAN_template& t__RLCMAC__UL__DATA__TLLI_stall_defval = template_t__RLCMAC__UL__DATA__TLLI_stall_defval;
INTEGER_template template_t__RLCMAC__UL__EGPRS__DATA_bsn2__offset_defval;
const INTEGER_template& t__RLCMAC__UL__EGPRS__DATA_bsn2__offset_defval = template_t__RLCMAC__UL__EGPRS__DATA_bsn2__offset_defval;
RLCMAC__Types::EgprsLlcBlocks_template template_t__RLCMAC__UL__EGPRS__DATA_blocks_defval;
const RLCMAC__Types::EgprsLlcBlocks_template& t__RLCMAC__UL__EGPRS__DATA_blocks_defval = template_t__RLCMAC__UL__EGPRS__DATA_blocks_defval;
RLCMAC__Types::MacPayloadType_template template_ts__RLCMAC__DlMacH_pt_defval;
const RLCMAC__Types::MacPayloadType_template& ts__RLCMAC__DlMacH_pt_defval = template_ts__RLCMAC__DlMacH_pt_defval;
BOOLEAN_template template_ts__RLCMAC__DlMacH_rrbp__valid_defval;
const BOOLEAN_template& ts__RLCMAC__DlMacH_rrbp__valid_defval = template_ts__RLCMAC__DlMacH_rrbp__valid_defval;
RLCMAC__Types::MacRrbp_template template_ts__RLCMAC__DlMacH_rrbp_defval;
const RLCMAC__Types::MacRrbp_template& ts__RLCMAC__DlMacH_rrbp_defval = template_ts__RLCMAC__DlMacH_rrbp_defval;
INTEGER_template template_ts__RLCMAC__DlMacH_usf_defval;
const INTEGER_template& ts__RLCMAC__DlMacH_usf_defval = template_ts__RLCMAC__DlMacH_usf_defval;
INTEGER_template template_tr__RLCMAC__DL__CTRL_usf_defval;
const INTEGER_template& tr__RLCMAC__DL__CTRL_usf_defval = template_tr__RLCMAC__DL__CTRL_usf_defval;
RLCMAC__CSN1__Types::RlcmacDlCtrlMsg_template template_tr__RLCMAC__DL__CTRL_dl__ctrl_defval;
const RLCMAC__CSN1__Types::RlcmacDlCtrlMsg_template& tr__RLCMAC__DL__CTRL_dl__ctrl_defval = template_tr__RLCMAC__DL__CTRL_dl__ctrl_defval;
RLCMAC__Types::DlMacHeader_template template_ts__RLCMAC__DL__DUMMY__CTRL_mac__hdr_defval;
const RLCMAC__Types::DlMacHeader_template& ts__RLCMAC__DL__DUMMY__CTRL_mac__hdr_defval = template_ts__RLCMAC__DL__DUMMY__CTRL_mac__hdr_defval;
RLCMAC__CSN1__Types::PageMode_template template_ts__RLCMAC__DL__DUMMY__CTRL_page__mode_defval;
const RLCMAC__CSN1__Types::PageMode_template& ts__RLCMAC__DL__DUMMY__CTRL_page__mode_defval = template_ts__RLCMAC__DL__DUMMY__CTRL_page__mode_defval;
INTEGER_template template_tr__RLCMAC__DL__DUMMY__CTRL_usf_defval;
const INTEGER_template& tr__RLCMAC__DL__DUMMY__CTRL_usf_defval = template_tr__RLCMAC__DL__DUMMY__CTRL_usf_defval;
RLCMAC__CSN1__Types::PageMode_template template_tr__RLCMAC__DL__DUMMY__CTRL_page__mode_defval;
const RLCMAC__CSN1__Types::PageMode_template& tr__RLCMAC__DL__DUMMY__CTRL_page__mode_defval = template_tr__RLCMAC__DL__DUMMY__CTRL_page__mode_defval;
INTEGER_template template_tr__RLCMAC__DL__PACKET__ASS_usf_defval;
const INTEGER_template& tr__RLCMAC__DL__PACKET__ASS_usf_defval = template_tr__RLCMAC__DL__PACKET__ASS_usf_defval;
INTEGER_template template_tr__RLCMAC__UL__PACKET__ASS_usf_defval;
const INTEGER_template& tr__RLCMAC__UL__PACKET__ASS_usf_defval = template_tr__RLCMAC__UL__PACKET__ASS_usf_defval;
INTEGER_template template_tr__RLCMAC__UL__PACKET__ASS__GPRS_usf_defval;
const INTEGER_template& tr__RLCMAC__UL__PACKET__ASS__GPRS_usf_defval = template_tr__RLCMAC__UL__PACKET__ASS__GPRS_usf_defval;
RLCMAC__CSN1__Types::PktUlAssGprs_template template_tr__RLCMAC__UL__PACKET__ASS__GPRS_gprs_defval;
const RLCMAC__CSN1__Types::PktUlAssGprs_template& tr__RLCMAC__UL__PACKET__ASS__GPRS_gprs_defval = template_tr__RLCMAC__UL__PACKET__ASS__GPRS_gprs_defval;
INTEGER_template template_tr__RLCMAC__UL__PACKET__ASS__EGPRS_usf_defval;
const INTEGER_template& tr__RLCMAC__UL__PACKET__ASS__EGPRS_usf_defval = template_tr__RLCMAC__UL__PACKET__ASS__EGPRS_usf_defval;
RLCMAC__CSN1__Types::PktUlAssEgprs_template template_tr__RLCMAC__UL__PACKET__ASS__EGPRS_egprs_defval;
const RLCMAC__CSN1__Types::PktUlAssEgprs_template& tr__RLCMAC__UL__PACKET__ASS__EGPRS_egprs_defval = template_tr__RLCMAC__UL__PACKET__ASS__EGPRS_egprs_defval;
INTEGER_template template_tr__RLCMAC__UL__ACK__NACK__GPRS_ul__tfi_defval;
const INTEGER_template& tr__RLCMAC__UL__ACK__NACK__GPRS_ul__tfi_defval = template_tr__RLCMAC__UL__ACK__NACK__GPRS_ul__tfi_defval;
RLCMAC__CSN1__Types::UlAckNackGprs_template template_tr__RLCMAC__UL__ACK__NACK__GPRS_gprs_defval;
const RLCMAC__CSN1__Types::UlAckNackGprs_template& tr__RLCMAC__UL__ACK__NACK__GPRS_gprs_defval = template_tr__RLCMAC__UL__ACK__NACK__GPRS_gprs_defval;
INTEGER_template template_tr__RLCMAC__UL__ACK__NACK__EGPRS_ul__tfi_defval;
const INTEGER_template& tr__RLCMAC__UL__ACK__NACK__EGPRS_ul__tfi_defval = template_tr__RLCMAC__UL__ACK__NACK__EGPRS_ul__tfi_defval;
RLCMAC__CSN1__Types::UlAckNackEgprs_template template_tr__RLCMAC__UL__ACK__NACK__EGPRS_egprs_defval;
const RLCMAC__CSN1__Types::UlAckNackEgprs_template& tr__RLCMAC__UL__ACK__NACK__EGPRS_egprs_defval = template_tr__RLCMAC__UL__ACK__NACK__EGPRS_egprs_defval;
INTEGER_template template_tr__RLCMAC__PACKET__PAG__REQ_usf_defval;
const INTEGER_template& tr__RLCMAC__PACKET__PAG__REQ_usf_defval = template_tr__RLCMAC__PACKET__PAG__REQ_usf_defval;
RLCMAC__Types::RlcmacDlBlock_template template_tr__RLCMAC__DATA;
const RLCMAC__Types::RlcmacDlBlock_template& tr__RLCMAC__DATA = template_tr__RLCMAC__DATA;
BOOLEAN_template template_tr__RLCMAC__DATA__GPRS_rrbp__valid_defval;
const BOOLEAN_template& tr__RLCMAC__DATA__GPRS_rrbp__valid_defval = template_tr__RLCMAC__DATA__GPRS_rrbp__valid_defval;
RLCMAC__Types::MacRrbp_template template_tr__RLCMAC__DATA__GPRS_rrbp_defval;
const RLCMAC__Types::MacRrbp_template& tr__RLCMAC__DATA__GPRS_rrbp_defval = template_tr__RLCMAC__DATA__GPRS_rrbp_defval;
INTEGER_template template_tr__RLCMAC__DATA__GPRS_usf_defval;
const INTEGER_template& tr__RLCMAC__DATA__GPRS_usf_defval = template_tr__RLCMAC__DATA__GPRS_usf_defval;
RLCMAC__Types::RlcmacDlBlock_template template_tr__RLCMAC__DATA__EGPRS;
const RLCMAC__Types::RlcmacDlBlock_template& tr__RLCMAC__DATA__EGPRS = template_tr__RLCMAC__DATA__EGPRS;
BOOLEAN_template template_t__RLCMAC__UlMacCtrlH_retry_defval;
const BOOLEAN_template& t__RLCMAC__UlMacCtrlH_retry_defval = template_t__RLCMAC__UlMacCtrlH_retry_defval;
RLCMAC__CSN1__Types::CtrlAck const_ts__RLCMAC__CTRL__ACK_ack_defval;
const RLCMAC__CSN1__Types::CtrlAck& ts__RLCMAC__CTRL__ACK_ack_defval = const_ts__RLCMAC__CTRL__ACK_ack_defval;
RLCMAC__Types::LlcBlockHdr_template template_t__RLCMAC__LLCBLOCK_llc__hdr_defval;
const RLCMAC__Types::LlcBlockHdr_template& t__RLCMAC__LLCBLOCK_llc__hdr_defval = template_t__RLCMAC__LLCBLOCK_llc__hdr_defval;
RLCMAC__Types::EgprsLlcBlockHdr_template template_t__RLCMAC__LLCBLOCK__EGPRS_llc__hdr_defval;
const RLCMAC__Types::EgprsLlcBlockHdr_template& t__RLCMAC__LLCBLOCK__EGPRS_llc__hdr_defval = template_t__RLCMAC__LLCBLOCK__EGPRS_llc__hdr_defval;
INTEGER_template template_ts__PTCCHDownlinkMsg_tai0__ta_defval;
const INTEGER_template& ts__PTCCHDownlinkMsg_tai0__ta_defval = template_ts__PTCCHDownlinkMsg_tai0__ta_defval;
INTEGER_template template_ts__PTCCHDownlinkMsg_tai1__ta_defval;
const INTEGER_template& ts__PTCCHDownlinkMsg_tai1__ta_defval = template_ts__PTCCHDownlinkMsg_tai1__ta_defval;
INTEGER_template template_ts__PTCCHDownlinkMsg_tai2__ta_defval;
const INTEGER_template& ts__PTCCHDownlinkMsg_tai2__ta_defval = template_ts__PTCCHDownlinkMsg_tai2__ta_defval;
INTEGER_template template_ts__PTCCHDownlinkMsg_tai3__ta_defval;
const INTEGER_template& ts__PTCCHDownlinkMsg_tai3__ta_defval = template_ts__PTCCHDownlinkMsg_tai3__ta_defval;
INTEGER_template template_ts__PTCCHDownlinkMsg_tai4__ta_defval;
const INTEGER_template& ts__PTCCHDownlinkMsg_tai4__ta_defval = template_ts__PTCCHDownlinkMsg_tai4__ta_defval;
INTEGER_template template_ts__PTCCHDownlinkMsg_tai5__ta_defval;
const INTEGER_template& ts__PTCCHDownlinkMsg_tai5__ta_defval = template_ts__PTCCHDownlinkMsg_tai5__ta_defval;
INTEGER_template template_ts__PTCCHDownlinkMsg_tai6__ta_defval;
const INTEGER_template& ts__PTCCHDownlinkMsg_tai6__ta_defval = template_ts__PTCCHDownlinkMsg_tai6__ta_defval;
INTEGER_template template_ts__PTCCHDownlinkMsg_tai7__ta_defval;
const INTEGER_template& ts__PTCCHDownlinkMsg_tai7__ta_defval = template_ts__PTCCHDownlinkMsg_tai7__ta_defval;
INTEGER_template template_ts__PTCCHDownlinkMsg_tai8__ta_defval;
const INTEGER_template& ts__PTCCHDownlinkMsg_tai8__ta_defval = template_ts__PTCCHDownlinkMsg_tai8__ta_defval;
INTEGER_template template_ts__PTCCHDownlinkMsg_tai9__ta_defval;
const INTEGER_template& ts__PTCCHDownlinkMsg_tai9__ta_defval = template_ts__PTCCHDownlinkMsg_tai9__ta_defval;
INTEGER_template template_ts__PTCCHDownlinkMsg_tai10__ta_defval;
const INTEGER_template& ts__PTCCHDownlinkMsg_tai10__ta_defval = template_ts__PTCCHDownlinkMsg_tai10__ta_defval;
INTEGER_template template_ts__PTCCHDownlinkMsg_tai11__ta_defval;
const INTEGER_template& ts__PTCCHDownlinkMsg_tai11__ta_defval = template_ts__PTCCHDownlinkMsg_tai11__ta_defval;
INTEGER_template template_ts__PTCCHDownlinkMsg_tai12__ta_defval;
const INTEGER_template& ts__PTCCHDownlinkMsg_tai12__ta_defval = template_ts__PTCCHDownlinkMsg_tai12__ta_defval;
INTEGER_template template_ts__PTCCHDownlinkMsg_tai13__ta_defval;
const INTEGER_template& ts__PTCCHDownlinkMsg_tai13__ta_defval = template_ts__PTCCHDownlinkMsg_tai13__ta_defval;
INTEGER_template template_ts__PTCCHDownlinkMsg_tai14__ta_defval;
const INTEGER_template& ts__PTCCHDownlinkMsg_tai14__ta_defval = template_ts__PTCCHDownlinkMsg_tai14__ta_defval;
INTEGER_template template_ts__PTCCHDownlinkMsg_tai15__ta_defval;
const INTEGER_template& ts__PTCCHDownlinkMsg_tai15__ta_defval = template_ts__PTCCHDownlinkMsg_tai15__ta_defval;
INTEGER_template template_tr__PTCCHDownlinkMsg_tai0__ta_defval;
const INTEGER_template& tr__PTCCHDownlinkMsg_tai0__ta_defval = template_tr__PTCCHDownlinkMsg_tai0__ta_defval;
INTEGER_template template_tr__PTCCHDownlinkMsg_tai1__ta_defval;
const INTEGER_template& tr__PTCCHDownlinkMsg_tai1__ta_defval = template_tr__PTCCHDownlinkMsg_tai1__ta_defval;
INTEGER_template template_tr__PTCCHDownlinkMsg_tai2__ta_defval;
const INTEGER_template& tr__PTCCHDownlinkMsg_tai2__ta_defval = template_tr__PTCCHDownlinkMsg_tai2__ta_defval;
INTEGER_template template_tr__PTCCHDownlinkMsg_tai3__ta_defval;
const INTEGER_template& tr__PTCCHDownlinkMsg_tai3__ta_defval = template_tr__PTCCHDownlinkMsg_tai3__ta_defval;
INTEGER_template template_tr__PTCCHDownlinkMsg_tai4__ta_defval;
const INTEGER_template& tr__PTCCHDownlinkMsg_tai4__ta_defval = template_tr__PTCCHDownlinkMsg_tai4__ta_defval;
INTEGER_template template_tr__PTCCHDownlinkMsg_tai5__ta_defval;
const INTEGER_template& tr__PTCCHDownlinkMsg_tai5__ta_defval = template_tr__PTCCHDownlinkMsg_tai5__ta_defval;
INTEGER_template template_tr__PTCCHDownlinkMsg_tai6__ta_defval;
const INTEGER_template& tr__PTCCHDownlinkMsg_tai6__ta_defval = template_tr__PTCCHDownlinkMsg_tai6__ta_defval;
INTEGER_template template_tr__PTCCHDownlinkMsg_tai7__ta_defval;
const INTEGER_template& tr__PTCCHDownlinkMsg_tai7__ta_defval = template_tr__PTCCHDownlinkMsg_tai7__ta_defval;
INTEGER_template template_tr__PTCCHDownlinkMsg_tai8__ta_defval;
const INTEGER_template& tr__PTCCHDownlinkMsg_tai8__ta_defval = template_tr__PTCCHDownlinkMsg_tai8__ta_defval;
INTEGER_template template_tr__PTCCHDownlinkMsg_tai9__ta_defval;
const INTEGER_template& tr__PTCCHDownlinkMsg_tai9__ta_defval = template_tr__PTCCHDownlinkMsg_tai9__ta_defval;
INTEGER_template template_tr__PTCCHDownlinkMsg_tai10__ta_defval;
const INTEGER_template& tr__PTCCHDownlinkMsg_tai10__ta_defval = template_tr__PTCCHDownlinkMsg_tai10__ta_defval;
INTEGER_template template_tr__PTCCHDownlinkMsg_tai11__ta_defval;
const INTEGER_template& tr__PTCCHDownlinkMsg_tai11__ta_defval = template_tr__PTCCHDownlinkMsg_tai11__ta_defval;
INTEGER_template template_tr__PTCCHDownlinkMsg_tai12__ta_defval;
const INTEGER_template& tr__PTCCHDownlinkMsg_tai12__ta_defval = template_tr__PTCCHDownlinkMsg_tai12__ta_defval;
INTEGER_template template_tr__PTCCHDownlinkMsg_tai13__ta_defval;
const INTEGER_template& tr__PTCCHDownlinkMsg_tai13__ta_defval = template_tr__PTCCHDownlinkMsg_tai13__ta_defval;
INTEGER_template template_tr__PTCCHDownlinkMsg_tai14__ta_defval;
const INTEGER_template& tr__PTCCHDownlinkMsg_tai14__ta_defval = template_tr__PTCCHDownlinkMsg_tai14__ta_defval;
INTEGER_template template_tr__PTCCHDownlinkMsg_tai15__ta_defval;
const INTEGER_template& tr__PTCCHDownlinkMsg_tai15__ta_defval = template_tr__PTCCHDownlinkMsg_tai15__ta_defval;
TTCN_Module module_object("RLCMAC_Templates", __DATE__, __TIME__, module_checksum, pre_init_module, NULL, 0U, 4294967295U, 4294967295U, 4294967295U, NULL, 0LU, 0, post_init_module, NULL, NULL, NULL, NULL, NULL, NULL, NULL);

const RuntimeVersionChecker ver_checker(  current_runtime_version.requires_major_version_11,
  current_runtime_version.requires_minor_version_1,
  current_runtime_version.requires_patch_level_0,  current_runtime_version.requires_runtime_1);

/* Bodies of functions, altsteps and testcases */

INTEGER f__rrbp__fn__delay(const RLCMAC__Types::MacRrbp& rrbp)
{
TTCN_Location current_location("RLCMAC_Templates.ttcn", 26, TTCN_Location::LOCATION_FUNCTION, "f_rrbp_fn_delay");
{
const RLCMAC__Types::MacRrbp &tmp_1 = rrbp;
current_location.update_lineno(28);
/* RLCMAC_Templates.ttcn, line 28 */
if(tmp_1 == RLCMAC__Types::MacRrbp::RRBP__Nplus13__mod__2715648) goto tmp_0_0;
current_location.update_lineno(29);
/* RLCMAC_Templates.ttcn, line 29 */
if(tmp_1 == RLCMAC__Types::MacRrbp::RRBP__Nplus17__or__18__mod__2715648) goto tmp_0_1;
current_location.update_lineno(30);
/* RLCMAC_Templates.ttcn, line 30 */
if(tmp_1 == RLCMAC__Types::MacRrbp::RRBP__Nplus21__or__22__mod__2715648) goto tmp_0_2;
current_location.update_lineno(31);
/* RLCMAC_Templates.ttcn, line 31 */
if(tmp_1 == RLCMAC__Types::MacRrbp::RRBP__Nplus26__mod__2715648) goto tmp_0_3;
goto tmp_0_end;
tmp_0_0:
{
current_location.update_lineno(28);
/* RLCMAC_Templates.ttcn, line 28 */
return 13;
}
tmp_0_1:
{
current_location.update_lineno(29);
/* RLCMAC_Templates.ttcn, line 29 */
return 17;
}
tmp_0_2:
{
current_location.update_lineno(30);
/* RLCMAC_Templates.ttcn, line 30 */
return 21;
}
tmp_0_3:
{
current_location.update_lineno(31);
/* RLCMAC_Templates.ttcn, line 31 */
return 26;
}
tmp_0_end: /* empty */;
}
current_location.update_lineno(33);
/* RLCMAC_Templates.ttcn, line 33 */
return 0;
}

INTEGER f__rrbp__ack__fn(const INTEGER& current__fn, const RLCMAC__Types::MacRrbp& rrbp)
{
TTCN_Location current_location("RLCMAC_Templates.ttcn", 36, TTCN_Location::LOCATION_FUNCTION, "f_rrbp_ack_fn");
current_location.update_lineno(38);
/* RLCMAC_Templates.ttcn, line 38 */
return mod((current__fn + f__rrbp__fn__delay(rrbp)), 2715648);
}

BOOLEAN f__rlcmac__cs__mcs__is__mcs(const RLCMAC__Types::CodingScheme& cs__mcs)
{
TTCN_Location current_location("RLCMAC_Templates.ttcn", 41, TTCN_Location::LOCATION_FUNCTION, "f_rlcmac_cs_mcs_is_mcs");
current_location.update_lineno(42);
/* RLCMAC_Templates.ttcn, line 42 */
if ((cs__mcs >= RLCMAC__Types::CodingScheme::MCS__0)) {
current_location.update_lineno(43);
/* RLCMAC_Templates.ttcn, line 43 */
return TRUE;
}
current_location.update_lineno(45);
/* RLCMAC_Templates.ttcn, line 45 */
return FALSE;
}

RLCMAC__Types::EgprsHeaderType f__rlcmac__mcs2headertype(const RLCMAC__Types::CodingScheme& mcs)
{
TTCN_Location current_location("RLCMAC_Templates.ttcn", 48, TTCN_Location::LOCATION_FUNCTION, "f_rlcmac_mcs2headertype");
{
const RLCMAC__Types::CodingScheme &tmp_3 = mcs;
current_location.update_lineno(50);
/* RLCMAC_Templates.ttcn, line 50 */
if(tmp_3 == RLCMAC__Types::CodingScheme::MCS__0) goto tmp_2_0;
current_location.update_lineno(51);
/* RLCMAC_Templates.ttcn, line 51 */
if(tmp_3 == RLCMAC__Types::CodingScheme::MCS__1) goto tmp_2_1;
current_location.update_lineno(52);
/* RLCMAC_Templates.ttcn, line 52 */
if(tmp_3 == RLCMAC__Types::CodingScheme::MCS__2) goto tmp_2_2;
current_location.update_lineno(53);
/* RLCMAC_Templates.ttcn, line 53 */
if(tmp_3 == RLCMAC__Types::CodingScheme::MCS__3) goto tmp_2_3;
current_location.update_lineno(54);
/* RLCMAC_Templates.ttcn, line 54 */
if(tmp_3 == RLCMAC__Types::CodingScheme::MCS__4) goto tmp_2_4;
current_location.update_lineno(55);
/* RLCMAC_Templates.ttcn, line 55 */
if(tmp_3 == RLCMAC__Types::CodingScheme::MCS__5) goto tmp_2_5;
current_location.update_lineno(56);
/* RLCMAC_Templates.ttcn, line 56 */
if(tmp_3 == RLCMAC__Types::CodingScheme::MCS__6) goto tmp_2_6;
current_location.update_lineno(57);
/* RLCMAC_Templates.ttcn, line 57 */
if(tmp_3 == RLCMAC__Types::CodingScheme::MCS__7) goto tmp_2_7;
current_location.update_lineno(58);
/* RLCMAC_Templates.ttcn, line 58 */
if(tmp_3 == RLCMAC__Types::CodingScheme::MCS__8) goto tmp_2_8;
current_location.update_lineno(59);
/* RLCMAC_Templates.ttcn, line 59 */
if(tmp_3 == RLCMAC__Types::CodingScheme::MCS__9) goto tmp_2_9;
goto tmp_2_end;
tmp_2_0:
{
current_location.update_lineno(50);
/* RLCMAC_Templates.ttcn, line 50 */
return RLCMAC__Types::EgprsHeaderType::RLCMAC__HDR__TYPE__3;
}
tmp_2_1:
{
current_location.update_lineno(51);
/* RLCMAC_Templates.ttcn, line 51 */
return RLCMAC__Types::EgprsHeaderType::RLCMAC__HDR__TYPE__3;
}
tmp_2_2:
{
current_location.update_lineno(52);
/* RLCMAC_Templates.ttcn, line 52 */
return RLCMAC__Types::EgprsHeaderType::RLCMAC__HDR__TYPE__3;
}
tmp_2_3:
{
current_location.update_lineno(53);
/* RLCMAC_Templates.ttcn, line 53 */
return RLCMAC__Types::EgprsHeaderType::RLCMAC__HDR__TYPE__3;
}
tmp_2_4:
{
current_location.update_lineno(54);
/* RLCMAC_Templates.ttcn, line 54 */
return RLCMAC__Types::EgprsHeaderType::RLCMAC__HDR__TYPE__3;
}
tmp_2_5:
{
current_location.update_lineno(55);
/* RLCMAC_Templates.ttcn, line 55 */
return RLCMAC__Types::EgprsHeaderType::RLCMAC__HDR__TYPE__2;
}
tmp_2_6:
{
current_location.update_lineno(56);
/* RLCMAC_Templates.ttcn, line 56 */
return RLCMAC__Types::EgprsHeaderType::RLCMAC__HDR__TYPE__2;
}
tmp_2_7:
{
current_location.update_lineno(57);
/* RLCMAC_Templates.ttcn, line 57 */
return RLCMAC__Types::EgprsHeaderType::RLCMAC__HDR__TYPE__1;
}
tmp_2_8:
{
current_location.update_lineno(58);
/* RLCMAC_Templates.ttcn, line 58 */
return RLCMAC__Types::EgprsHeaderType::RLCMAC__HDR__TYPE__1;
}
tmp_2_9:
{
current_location.update_lineno(59);
/* RLCMAC_Templates.ttcn, line 59 */
return RLCMAC__Types::EgprsHeaderType::RLCMAC__HDR__TYPE__1;
}
tmp_2_end: /* empty */;
}
current_location.update_lineno(61);
/* RLCMAC_Templates.ttcn, line 61 */
return RLCMAC__Types::EgprsHeaderType::RLCMAC__HDR__TYPE__3;
}

INTEGER f__rlcmac__cs__mcs2block__len(const RLCMAC__Types::CodingScheme& cs__mcs)
{
TTCN_Location current_location("RLCMAC_Templates.ttcn", 64, TTCN_Location::LOCATION_FUNCTION, "f_rlcmac_cs_mcs2block_len");
{
const RLCMAC__Types::CodingScheme &tmp_5 = cs__mcs;
current_location.update_lineno(66);
/* RLCMAC_Templates.ttcn, line 66 */
if(tmp_5 == RLCMAC__Types::CodingScheme::CS__1) goto tmp_4_0;
current_location.update_lineno(67);
/* RLCMAC_Templates.ttcn, line 67 */
if(tmp_5 == RLCMAC__Types::CodingScheme::CS__2) goto tmp_4_1;
current_location.update_lineno(68);
/* RLCMAC_Templates.ttcn, line 68 */
if(tmp_5 == RLCMAC__Types::CodingScheme::CS__3) goto tmp_4_2;
current_location.update_lineno(69);
/* RLCMAC_Templates.ttcn, line 69 */
if(tmp_5 == RLCMAC__Types::CodingScheme::CS__4) goto tmp_4_3;
current_location.update_lineno(70);
/* RLCMAC_Templates.ttcn, line 70 */
if(tmp_5 == RLCMAC__Types::CodingScheme::MCS__1) goto tmp_4_4;
current_location.update_lineno(71);
/* RLCMAC_Templates.ttcn, line 71 */
if(tmp_5 == RLCMAC__Types::CodingScheme::MCS__2) goto tmp_4_5;
current_location.update_lineno(72);
/* RLCMAC_Templates.ttcn, line 72 */
if(tmp_5 == RLCMAC__Types::CodingScheme::MCS__3) goto tmp_4_6;
current_location.update_lineno(73);
/* RLCMAC_Templates.ttcn, line 73 */
if(tmp_5 == RLCMAC__Types::CodingScheme::MCS__4) goto tmp_4_7;
current_location.update_lineno(74);
/* RLCMAC_Templates.ttcn, line 74 */
if(tmp_5 == RLCMAC__Types::CodingScheme::MCS__5) goto tmp_4_8;
current_location.update_lineno(75);
/* RLCMAC_Templates.ttcn, line 75 */
if(tmp_5 == RLCMAC__Types::CodingScheme::MCS__6) goto tmp_4_9;
current_location.update_lineno(76);
/* RLCMAC_Templates.ttcn, line 76 */
if(tmp_5 == RLCMAC__Types::CodingScheme::MCS__7) goto tmp_4_10;
current_location.update_lineno(77);
/* RLCMAC_Templates.ttcn, line 77 */
if(tmp_5 == RLCMAC__Types::CodingScheme::MCS__8) goto tmp_4_11;
current_location.update_lineno(78);
/* RLCMAC_Templates.ttcn, line 78 */
if(tmp_5 == RLCMAC__Types::CodingScheme::MCS__9) goto tmp_4_12;
goto tmp_4_end;
tmp_4_0:
{
current_location.update_lineno(66);
/* RLCMAC_Templates.ttcn, line 66 */
return 23;
}
tmp_4_1:
{
current_location.update_lineno(67);
/* RLCMAC_Templates.ttcn, line 67 */
return 34;
}
tmp_4_2:
{
current_location.update_lineno(68);
/* RLCMAC_Templates.ttcn, line 68 */
return 40;
}
tmp_4_3:
{
current_location.update_lineno(69);
/* RLCMAC_Templates.ttcn, line 69 */
return 54;
}
tmp_4_4:
{
current_location.update_lineno(70);
/* RLCMAC_Templates.ttcn, line 70 */
return 27;
}
tmp_4_5:
{
current_location.update_lineno(71);
/* RLCMAC_Templates.ttcn, line 71 */
return 33;
}
tmp_4_6:
{
current_location.update_lineno(72);
/* RLCMAC_Templates.ttcn, line 72 */
return 42;
}
tmp_4_7:
{
current_location.update_lineno(73);
/* RLCMAC_Templates.ttcn, line 73 */
return 49;
}
tmp_4_8:
{
current_location.update_lineno(74);
/* RLCMAC_Templates.ttcn, line 74 */
return 61;
}
tmp_4_9:
{
current_location.update_lineno(75);
/* RLCMAC_Templates.ttcn, line 75 */
return 79;
}
tmp_4_10:
{
current_location.update_lineno(76);
/* RLCMAC_Templates.ttcn, line 76 */
return 119;
}
tmp_4_11:
{
current_location.update_lineno(77);
/* RLCMAC_Templates.ttcn, line 77 */
return 143;
}
tmp_4_12:
{
current_location.update_lineno(78);
/* RLCMAC_Templates.ttcn, line 78 */
return 155;
}
tmp_4_end: /* empty */;
}
current_location.update_lineno(80);
/* RLCMAC_Templates.ttcn, line 80 */
return 0;
}

RLCMAC__Types::CodingScheme f__rlcmac__block__len2cs__mcs(const INTEGER& len)
{
TTCN_Location current_location("RLCMAC_Templates.ttcn", 83, TTCN_Location::LOCATION_FUNCTION, "f_rlcmac_block_len2cs_mcs");
{
const INTEGER &tmp_7 = len;
switch(tmp_7.get_long_long_val()) {
case(23):
{
current_location.update_lineno(85);
/* RLCMAC_Templates.ttcn, line 85 */
return RLCMAC__Types::CodingScheme::CS__1;
break;
}
case(34):
{
current_location.update_lineno(86);
/* RLCMAC_Templates.ttcn, line 86 */
return RLCMAC__Types::CodingScheme::CS__2;
break;
}
case(40):
{
current_location.update_lineno(87);
/* RLCMAC_Templates.ttcn, line 87 */
return RLCMAC__Types::CodingScheme::CS__3;
break;
}
case(54):
{
current_location.update_lineno(88);
/* RLCMAC_Templates.ttcn, line 88 */
return RLCMAC__Types::CodingScheme::CS__4;
break;
}
case(27):
{
current_location.update_lineno(89);
/* RLCMAC_Templates.ttcn, line 89 */
return RLCMAC__Types::CodingScheme::MCS__1;
break;
}
case(33):
{
current_location.update_lineno(90);
/* RLCMAC_Templates.ttcn, line 90 */
return RLCMAC__Types::CodingScheme::MCS__2;
break;
}
case(42):
{
current_location.update_lineno(91);
/* RLCMAC_Templates.ttcn, line 91 */
return RLCMAC__Types::CodingScheme::MCS__3;
break;
}
case(49):
{
current_location.update_lineno(92);
/* RLCMAC_Templates.ttcn, line 92 */
return RLCMAC__Types::CodingScheme::MCS__4;
break;
}
case(60):
{
current_location.update_lineno(93);
/* RLCMAC_Templates.ttcn, line 93 */
return RLCMAC__Types::CodingScheme::MCS__5;
break;
}
case(61):
{
current_location.update_lineno(94);
/* RLCMAC_Templates.ttcn, line 94 */
return RLCMAC__Types::CodingScheme::MCS__5;
break;
}
case(78):
{
current_location.update_lineno(95);
/* RLCMAC_Templates.ttcn, line 95 */
return RLCMAC__Types::CodingScheme::MCS__6;
break;
}
case(79):
{
current_location.update_lineno(96);
/* RLCMAC_Templates.ttcn, line 96 */
return RLCMAC__Types::CodingScheme::MCS__6;
break;
}
case(118):
{
current_location.update_lineno(97);
/* RLCMAC_Templates.ttcn, line 97 */
return RLCMAC__Types::CodingScheme::MCS__7;
break;
}
case(119):
{
current_location.update_lineno(98);
/* RLCMAC_Templates.ttcn, line 98 */
return RLCMAC__Types::CodingScheme::MCS__7;
break;
}
case(142):
{
current_location.update_lineno(99);
/* RLCMAC_Templates.ttcn, line 99 */
return RLCMAC__Types::CodingScheme::MCS__8;
break;
}
case(143):
{
current_location.update_lineno(100);
/* RLCMAC_Templates.ttcn, line 100 */
return RLCMAC__Types::CodingScheme::MCS__8;
break;
}
case(154):
{
current_location.update_lineno(101);
/* RLCMAC_Templates.ttcn, line 101 */
return RLCMAC__Types::CodingScheme::MCS__9;
break;
}
case(155):
{
current_location.update_lineno(102);
/* RLCMAC_Templates.ttcn, line 102 */
return RLCMAC__Types::CodingScheme::MCS__9;
break;
}
};}
current_location.update_lineno(104);
/* RLCMAC_Templates.ttcn, line 104 */
return RLCMAC__Types::CodingScheme::CS__1;
}

INTEGER f__rlcmac__cs__mcs2block__len__no__spare__bits(const RLCMAC__Types::CodingScheme& cs__mcs)
{
TTCN_Location current_location("RLCMAC_Templates.ttcn", 107, TTCN_Location::LOCATION_FUNCTION, "f_rlcmac_cs_mcs2block_len_no_spare_bits");
{
const RLCMAC__Types::CodingScheme &tmp_9 = cs__mcs;
current_location.update_lineno(110);
/* RLCMAC_Templates.ttcn, line 110 */
if(tmp_9 == RLCMAC__Types::CodingScheme::CS__1) goto tmp_8_0;
current_location.update_lineno(111);
/* RLCMAC_Templates.ttcn, line 111 */
if(tmp_9 == RLCMAC__Types::CodingScheme::CS__2) goto tmp_8_1;
current_location.update_lineno(112);
/* RLCMAC_Templates.ttcn, line 112 */
if(tmp_9 == RLCMAC__Types::CodingScheme::CS__3) goto tmp_8_2;
current_location.update_lineno(113);
/* RLCMAC_Templates.ttcn, line 113 */
if(tmp_9 == RLCMAC__Types::CodingScheme::CS__4) goto tmp_8_3;
current_location.update_lineno(114);
/* RLCMAC_Templates.ttcn, line 114 */
if(tmp_9 == RLCMAC__Types::CodingScheme::MCS__1) goto tmp_8_4;
current_location.update_lineno(115);
/* RLCMAC_Templates.ttcn, line 115 */
if(tmp_9 == RLCMAC__Types::CodingScheme::MCS__2) goto tmp_8_5;
current_location.update_lineno(116);
/* RLCMAC_Templates.ttcn, line 116 */
if(tmp_9 == RLCMAC__Types::CodingScheme::MCS__3) goto tmp_8_6;
current_location.update_lineno(117);
/* RLCMAC_Templates.ttcn, line 117 */
if(tmp_9 == RLCMAC__Types::CodingScheme::MCS__4) goto tmp_8_7;
current_location.update_lineno(118);
/* RLCMAC_Templates.ttcn, line 118 */
if(tmp_9 == RLCMAC__Types::CodingScheme::MCS__5) goto tmp_8_8;
current_location.update_lineno(119);
/* RLCMAC_Templates.ttcn, line 119 */
if(tmp_9 == RLCMAC__Types::CodingScheme::MCS__6) goto tmp_8_9;
current_location.update_lineno(120);
/* RLCMAC_Templates.ttcn, line 120 */
if(tmp_9 == RLCMAC__Types::CodingScheme::MCS__7) goto tmp_8_10;
current_location.update_lineno(121);
/* RLCMAC_Templates.ttcn, line 121 */
if(tmp_9 == RLCMAC__Types::CodingScheme::MCS__8) goto tmp_8_11;
current_location.update_lineno(122);
/* RLCMAC_Templates.ttcn, line 122 */
if(tmp_9 == RLCMAC__Types::CodingScheme::MCS__9) goto tmp_8_12;
goto tmp_8_end;
tmp_8_0:
{
current_location.update_lineno(110);
/* RLCMAC_Templates.ttcn, line 110 */
return 23;
}
tmp_8_1:
{
current_location.update_lineno(111);
/* RLCMAC_Templates.ttcn, line 111 */
return 33;
}
tmp_8_2:
{
current_location.update_lineno(112);
/* RLCMAC_Templates.ttcn, line 112 */
return 39;
}
tmp_8_3:
{
current_location.update_lineno(113);
/* RLCMAC_Templates.ttcn, line 113 */
return 53;
}
tmp_8_4:
{
current_location.update_lineno(114);
/* RLCMAC_Templates.ttcn, line 114 */
return 27;
}
tmp_8_5:
{
current_location.update_lineno(115);
/* RLCMAC_Templates.ttcn, line 115 */
return 33;
}
tmp_8_6:
{
current_location.update_lineno(116);
/* RLCMAC_Templates.ttcn, line 116 */
return 42;
}
tmp_8_7:
{
current_location.update_lineno(117);
/* RLCMAC_Templates.ttcn, line 117 */
return 49;
}
tmp_8_8:
{
current_location.update_lineno(118);
/* RLCMAC_Templates.ttcn, line 118 */
return 61;
}
tmp_8_9:
{
current_location.update_lineno(119);
/* RLCMAC_Templates.ttcn, line 119 */
return 79;
}
tmp_8_10:
{
current_location.update_lineno(120);
/* RLCMAC_Templates.ttcn, line 120 */
return 119;
}
tmp_8_11:
{
current_location.update_lineno(121);
/* RLCMAC_Templates.ttcn, line 121 */
return 143;
}
tmp_8_12:
{
current_location.update_lineno(122);
/* RLCMAC_Templates.ttcn, line 122 */
return 155;
}
tmp_8_end: /* empty */;
}
current_location.update_lineno(124);
/* RLCMAC_Templates.ttcn, line 124 */
return 0;
}

RLCMAC__Types::CodingScheme f__rlcmac__block__len__required__cs__mcs(const INTEGER& len, const BOOLEAN& is__mcs)
{
TTCN_Location current_location("RLCMAC_Templates.ttcn", 128, TTCN_Location::LOCATION_FUNCTION, "f_rlcmac_block_len_required_cs_mcs");
current_location.update_lineno(129);
/* RLCMAC_Templates.ttcn, line 129 */
if (is__mcs) {
current_location.update_lineno(130);
/* RLCMAC_Templates.ttcn, line 130 */
if ((len <= 27)) {
current_location.update_lineno(130);
/* RLCMAC_Templates.ttcn, line 130 */
return RLCMAC__Types::CodingScheme::MCS__1;
}
current_location.update_lineno(131);
/* RLCMAC_Templates.ttcn, line 131 */
if ((len <= 33)) {
current_location.update_lineno(131);
/* RLCMAC_Templates.ttcn, line 131 */
return RLCMAC__Types::CodingScheme::MCS__2;
}
current_location.update_lineno(132);
/* RLCMAC_Templates.ttcn, line 132 */
if ((len <= 42)) {
current_location.update_lineno(132);
/* RLCMAC_Templates.ttcn, line 132 */
return RLCMAC__Types::CodingScheme::MCS__3;
}
current_location.update_lineno(133);
/* RLCMAC_Templates.ttcn, line 133 */
if ((len <= 49)) {
current_location.update_lineno(133);
/* RLCMAC_Templates.ttcn, line 133 */
return RLCMAC__Types::CodingScheme::MCS__4;
}
current_location.update_lineno(134);
/* RLCMAC_Templates.ttcn, line 134 */
if ((len <= 60)) {
current_location.update_lineno(134);
/* RLCMAC_Templates.ttcn, line 134 */
return RLCMAC__Types::CodingScheme::MCS__5;
}
current_location.update_lineno(135);
/* RLCMAC_Templates.ttcn, line 135 */
if ((len <= 61)) {
current_location.update_lineno(135);
/* RLCMAC_Templates.ttcn, line 135 */
return RLCMAC__Types::CodingScheme::MCS__5;
}
current_location.update_lineno(136);
/* RLCMAC_Templates.ttcn, line 136 */
if ((len <= 79)) {
current_location.update_lineno(136);
/* RLCMAC_Templates.ttcn, line 136 */
return RLCMAC__Types::CodingScheme::MCS__6;
}
current_location.update_lineno(137);
/* RLCMAC_Templates.ttcn, line 137 */
if ((len <= 119)) {
current_location.update_lineno(137);
/* RLCMAC_Templates.ttcn, line 137 */
return RLCMAC__Types::CodingScheme::MCS__7;
}
current_location.update_lineno(138);
/* RLCMAC_Templates.ttcn, line 138 */
if ((len <= 143)) {
current_location.update_lineno(138);
/* RLCMAC_Templates.ttcn, line 138 */
return RLCMAC__Types::CodingScheme::MCS__8;
}
current_location.update_lineno(139);
/* RLCMAC_Templates.ttcn, line 139 */
if ((len <= 155)) {
current_location.update_lineno(139);
/* RLCMAC_Templates.ttcn, line 139 */
return RLCMAC__Types::CodingScheme::MCS__9;
}
current_location.update_lineno(140);
/* RLCMAC_Templates.ttcn, line 140 */
return RLCMAC__Types::CodingScheme::MCS__1;
}
else {
current_location.update_lineno(143);
/* RLCMAC_Templates.ttcn, line 143 */
if ((len <= 23)) {
current_location.update_lineno(143);
/* RLCMAC_Templates.ttcn, line 143 */
return RLCMAC__Types::CodingScheme::CS__1;
}
current_location.update_lineno(144);
/* RLCMAC_Templates.ttcn, line 144 */
if ((len <= 33)) {
current_location.update_lineno(144);
/* RLCMAC_Templates.ttcn, line 144 */
return RLCMAC__Types::CodingScheme::CS__2;
}
current_location.update_lineno(145);
/* RLCMAC_Templates.ttcn, line 145 */
if ((len <= 39)) {
current_location.update_lineno(145);
/* RLCMAC_Templates.ttcn, line 145 */
return RLCMAC__Types::CodingScheme::CS__3;
}
current_location.update_lineno(146);
/* RLCMAC_Templates.ttcn, line 146 */
if ((len <= 53)) {
current_location.update_lineno(146);
/* RLCMAC_Templates.ttcn, line 146 */
return RLCMAC__Types::CodingScheme::CS__4;
}
current_location.update_lineno(147);
/* RLCMAC_Templates.ttcn, line 147 */
return RLCMAC__Types::CodingScheme::CS__1;
}
}

RLCMAC__Types::CodingScheme f__rlcmac__block__ChCodingCommand2cs__mcs(const RLCMAC__CSN1__Types::ChCodingCommand& chcc)
{
TTCN_Location current_location("RLCMAC_Templates.ttcn", 151, TTCN_Location::LOCATION_FUNCTION, "f_rlcmac_block_ChCodingCommand2cs_mcs");
{
const RLCMAC__CSN1__Types::ChCodingCommand &tmp_11 = chcc;
current_location.update_lineno(153);
/* RLCMAC_Templates.ttcn, line 153 */
if(tmp_11 == RLCMAC__CSN1__Types::ChCodingCommand::CH__CODING__CS1) goto tmp_10_0;
current_location.update_lineno(154);
/* RLCMAC_Templates.ttcn, line 154 */
if(tmp_11 == RLCMAC__CSN1__Types::ChCodingCommand::CH__CODING__CS2) goto tmp_10_1;
current_location.update_lineno(155);
/* RLCMAC_Templates.ttcn, line 155 */
if(tmp_11 == RLCMAC__CSN1__Types::ChCodingCommand::CH__CODING__CS3) goto tmp_10_2;
current_location.update_lineno(156);
/* RLCMAC_Templates.ttcn, line 156 */
if(tmp_11 == RLCMAC__CSN1__Types::ChCodingCommand::CH__CODING__CS4) goto tmp_10_3;
goto tmp_10_end;
tmp_10_0:
{
current_location.update_lineno(153);
/* RLCMAC_Templates.ttcn, line 153 */
return RLCMAC__Types::CodingScheme::CS__1;
}
tmp_10_1:
{
current_location.update_lineno(154);
/* RLCMAC_Templates.ttcn, line 154 */
return RLCMAC__Types::CodingScheme::CS__2;
}
tmp_10_2:
{
current_location.update_lineno(155);
/* RLCMAC_Templates.ttcn, line 155 */
return RLCMAC__Types::CodingScheme::CS__3;
}
tmp_10_3:
{
current_location.update_lineno(156);
/* RLCMAC_Templates.ttcn, line 156 */
return RLCMAC__Types::CodingScheme::CS__4;
}
tmp_10_end: /* empty */;
}
current_location.update_lineno(158);
/* RLCMAC_Templates.ttcn, line 158 */
return RLCMAC__Types::CodingScheme::CS__1;
}

RLCMAC__Types::CodingScheme f__rlcmac__block__EgprsChCodingCommand2cs__mcs(const RLCMAC__CSN1__Types::EgprsChCodingCommand& echcc)
{
TTCN_Location current_location("RLCMAC_Templates.ttcn", 161, TTCN_Location::LOCATION_FUNCTION, "f_rlcmac_block_EgprsChCodingCommand2cs_mcs");
{
const RLCMAC__CSN1__Types::EgprsChCodingCommand &tmp_13 = echcc;
current_location.update_lineno(163);
/* RLCMAC_Templates.ttcn, line 163 */
if(tmp_13 == RLCMAC__CSN1__Types::EgprsChCodingCommand::CH__CODING__MCS1) goto tmp_12_0;
current_location.update_lineno(164);
/* RLCMAC_Templates.ttcn, line 164 */
if(tmp_13 == RLCMAC__CSN1__Types::EgprsChCodingCommand::CH__CODING__MCS2) goto tmp_12_1;
current_location.update_lineno(165);
/* RLCMAC_Templates.ttcn, line 165 */
if(tmp_13 == RLCMAC__CSN1__Types::EgprsChCodingCommand::CH__CODING__MCS3) goto tmp_12_2;
current_location.update_lineno(166);
/* RLCMAC_Templates.ttcn, line 166 */
if(tmp_13 == RLCMAC__CSN1__Types::EgprsChCodingCommand::CH__CODING__MCS4) goto tmp_12_3;
current_location.update_lineno(167);
/* RLCMAC_Templates.ttcn, line 167 */
if(tmp_13 == RLCMAC__CSN1__Types::EgprsChCodingCommand::CH__CODING__MCS5) goto tmp_12_4;
current_location.update_lineno(168);
/* RLCMAC_Templates.ttcn, line 168 */
if(tmp_13 == RLCMAC__CSN1__Types::EgprsChCodingCommand::CH__CODING__MCS6) goto tmp_12_5;
current_location.update_lineno(169);
/* RLCMAC_Templates.ttcn, line 169 */
if(tmp_13 == RLCMAC__CSN1__Types::EgprsChCodingCommand::CH__CODING__MCS7) goto tmp_12_6;
current_location.update_lineno(170);
/* RLCMAC_Templates.ttcn, line 170 */
if(tmp_13 == RLCMAC__CSN1__Types::EgprsChCodingCommand::CH__CODING__MCS8) goto tmp_12_7;
current_location.update_lineno(171);
/* RLCMAC_Templates.ttcn, line 171 */
if(tmp_13 == RLCMAC__CSN1__Types::EgprsChCodingCommand::CH__CODING__MCS9) goto tmp_12_8;
goto tmp_12_end;
tmp_12_0:
{
current_location.update_lineno(163);
/* RLCMAC_Templates.ttcn, line 163 */
return RLCMAC__Types::CodingScheme::MCS__1;
}
tmp_12_1:
{
current_location.update_lineno(164);
/* RLCMAC_Templates.ttcn, line 164 */
return RLCMAC__Types::CodingScheme::MCS__2;
}
tmp_12_2:
{
current_location.update_lineno(165);
/* RLCMAC_Templates.ttcn, line 165 */
return RLCMAC__Types::CodingScheme::MCS__3;
}
tmp_12_3:
{
current_location.update_lineno(166);
/* RLCMAC_Templates.ttcn, line 166 */
return RLCMAC__Types::CodingScheme::MCS__4;
}
tmp_12_4:
{
current_location.update_lineno(167);
/* RLCMAC_Templates.ttcn, line 167 */
return RLCMAC__Types::CodingScheme::MCS__5;
}
tmp_12_5:
{
current_location.update_lineno(168);
/* RLCMAC_Templates.ttcn, line 168 */
return RLCMAC__Types::CodingScheme::MCS__6;
}
tmp_12_6:
{
current_location.update_lineno(169);
/* RLCMAC_Templates.ttcn, line 169 */
return RLCMAC__Types::CodingScheme::MCS__7;
}
tmp_12_7:
{
current_location.update_lineno(170);
/* RLCMAC_Templates.ttcn, line 170 */
return RLCMAC__Types::CodingScheme::MCS__8;
}
tmp_12_8:
{
current_location.update_lineno(171);
/* RLCMAC_Templates.ttcn, line 171 */
return RLCMAC__Types::CodingScheme::MCS__9;
}
tmp_12_end: /* empty */;
}
current_location.update_lineno(175);
/* RLCMAC_Templates.ttcn, line 175 */
return RLCMAC__Types::CodingScheme::MCS__1;
}

RLCMAC__Types::CodingScheme f__rlcmac__block__int2cs__mcs(const INTEGER& n, const BOOLEAN& is__mcs)
{
TTCN_Location current_location("RLCMAC_Templates.ttcn", 179, TTCN_Location::LOCATION_FUNCTION, "f_rlcmac_block_int2cs_mcs");
current_location.update_lineno(180);
/* RLCMAC_Templates.ttcn, line 180 */
RLCMAC__Types::CodingScheme cs__mcs;
current_location.update_lineno(181);
/* RLCMAC_Templates.ttcn, line 181 */
if ((!(is__mcs))) {
current_location.update_lineno(182);
/* RLCMAC_Templates.ttcn, line 182 */
cs__mcs.int2enum((n - 1));
current_location.update_lineno(183);
/* RLCMAC_Templates.ttcn, line 183 */
return cs__mcs;
}
else {
current_location.update_lineno(185);
/* RLCMAC_Templates.ttcn, line 185 */
cs__mcs = RLCMAC__Types::CodingScheme::MCS__0;
current_location.update_lineno(186);
/* RLCMAC_Templates.ttcn, line 186 */
cs__mcs.int2enum((RLCMAC__Types::CodingScheme::enum2int(cs__mcs) + n));
current_location.update_lineno(187);
/* RLCMAC_Templates.ttcn, line 187 */
return cs__mcs;
}
}

RLCMAC__Types::CodingScheme f__rlcmac__cps__htype1__to__mcs(const INTEGER& cps)
{
TTCN_Location current_location("RLCMAC_Templates.ttcn", 192, TTCN_Location::LOCATION_FUNCTION, "f_rlcmac_cps_htype1_to_mcs");
current_location.update_lineno(193);
/* RLCMAC_Templates.ttcn, line 193 */
RLCMAC__Types::CodingSchemeArray egprs__Header__type1__coding__puncturing__scheme__to__mcs;
egprs__Header__type1__coding__puncturing__scheme__to__mcs.set_size(32);
egprs__Header__type1__coding__puncturing__scheme__to__mcs[0] = RLCMAC__Types::CodingScheme::MCS__9;
egprs__Header__type1__coding__puncturing__scheme__to__mcs[1] = RLCMAC__Types::CodingScheme::MCS__9;
egprs__Header__type1__coding__puncturing__scheme__to__mcs[2] = RLCMAC__Types::CodingScheme::MCS__9;
egprs__Header__type1__coding__puncturing__scheme__to__mcs[3] = RLCMAC__Types::CodingScheme::MCS__0;
egprs__Header__type1__coding__puncturing__scheme__to__mcs[4] = RLCMAC__Types::CodingScheme::MCS__9;
egprs__Header__type1__coding__puncturing__scheme__to__mcs[5] = RLCMAC__Types::CodingScheme::MCS__9;
egprs__Header__type1__coding__puncturing__scheme__to__mcs[6] = RLCMAC__Types::CodingScheme::MCS__9;
egprs__Header__type1__coding__puncturing__scheme__to__mcs[7] = RLCMAC__Types::CodingScheme::MCS__0;
egprs__Header__type1__coding__puncturing__scheme__to__mcs[8] = RLCMAC__Types::CodingScheme::MCS__9;
egprs__Header__type1__coding__puncturing__scheme__to__mcs[9] = RLCMAC__Types::CodingScheme::MCS__9;
egprs__Header__type1__coding__puncturing__scheme__to__mcs[10] = RLCMAC__Types::CodingScheme::MCS__9;
egprs__Header__type1__coding__puncturing__scheme__to__mcs[11] = RLCMAC__Types::CodingScheme::MCS__8;
egprs__Header__type1__coding__puncturing__scheme__to__mcs[12] = RLCMAC__Types::CodingScheme::MCS__8;
egprs__Header__type1__coding__puncturing__scheme__to__mcs[13] = RLCMAC__Types::CodingScheme::MCS__8;
egprs__Header__type1__coding__puncturing__scheme__to__mcs[14] = RLCMAC__Types::CodingScheme::MCS__8;
egprs__Header__type1__coding__puncturing__scheme__to__mcs[15] = RLCMAC__Types::CodingScheme::MCS__8;
egprs__Header__type1__coding__puncturing__scheme__to__mcs[16] = RLCMAC__Types::CodingScheme::MCS__8;
egprs__Header__type1__coding__puncturing__scheme__to__mcs[17] = RLCMAC__Types::CodingScheme::MCS__8;
egprs__Header__type1__coding__puncturing__scheme__to__mcs[18] = RLCMAC__Types::CodingScheme::MCS__8;
egprs__Header__type1__coding__puncturing__scheme__to__mcs[19] = RLCMAC__Types::CodingScheme::MCS__8;
egprs__Header__type1__coding__puncturing__scheme__to__mcs[20] = RLCMAC__Types::CodingScheme::MCS__7;
egprs__Header__type1__coding__puncturing__scheme__to__mcs[21] = RLCMAC__Types::CodingScheme::MCS__7;
egprs__Header__type1__coding__puncturing__scheme__to__mcs[22] = RLCMAC__Types::CodingScheme::MCS__7;
egprs__Header__type1__coding__puncturing__scheme__to__mcs[23] = RLCMAC__Types::CodingScheme::MCS__7;
egprs__Header__type1__coding__puncturing__scheme__to__mcs[24] = RLCMAC__Types::CodingScheme::MCS__7;
egprs__Header__type1__coding__puncturing__scheme__to__mcs[25] = RLCMAC__Types::CodingScheme::MCS__7;
egprs__Header__type1__coding__puncturing__scheme__to__mcs[26] = RLCMAC__Types::CodingScheme::MCS__7;
egprs__Header__type1__coding__puncturing__scheme__to__mcs[27] = RLCMAC__Types::CodingScheme::MCS__7;
egprs__Header__type1__coding__puncturing__scheme__to__mcs[28] = RLCMAC__Types::CodingScheme::MCS__7;
egprs__Header__type1__coding__puncturing__scheme__to__mcs[29] = RLCMAC__Types::CodingScheme::MCS__0;
egprs__Header__type1__coding__puncturing__scheme__to__mcs[30] = RLCMAC__Types::CodingScheme::MCS__0;
egprs__Header__type1__coding__puncturing__scheme__to__mcs[31] = RLCMAC__Types::CodingScheme::MCS__0;
current_location.update_lineno(227);
/* RLCMAC_Templates.ttcn, line 227 */
return const_cast< const RLCMAC__Types::CodingSchemeArray&>(egprs__Header__type1__coding__puncturing__scheme__to__mcs)[cps];
}

RLCMAC__Types::CodingScheme f__rlcmac__cps__htype2__to__mcs(const INTEGER& cps)
{
TTCN_Location current_location("RLCMAC_Templates.ttcn", 231, TTCN_Location::LOCATION_FUNCTION, "f_rlcmac_cps_htype2_to_mcs");
current_location.update_lineno(232);
/* RLCMAC_Templates.ttcn, line 232 */
RLCMAC__Types::CodingSchemeArray egprs__Header__type2__coding__puncturing__scheme__to__mcs;
egprs__Header__type2__coding__puncturing__scheme__to__mcs.set_size(8);
egprs__Header__type2__coding__puncturing__scheme__to__mcs[0] = RLCMAC__Types::CodingScheme::MCS__6;
egprs__Header__type2__coding__puncturing__scheme__to__mcs[1] = RLCMAC__Types::CodingScheme::MCS__6;
egprs__Header__type2__coding__puncturing__scheme__to__mcs[2] = RLCMAC__Types::CodingScheme::MCS__6;
egprs__Header__type2__coding__puncturing__scheme__to__mcs[3] = RLCMAC__Types::CodingScheme::MCS__6;
egprs__Header__type2__coding__puncturing__scheme__to__mcs[4] = RLCMAC__Types::CodingScheme::MCS__5;
egprs__Header__type2__coding__puncturing__scheme__to__mcs[5] = RLCMAC__Types::CodingScheme::MCS__5;
egprs__Header__type2__coding__puncturing__scheme__to__mcs[6] = RLCMAC__Types::CodingScheme::MCS__5;
egprs__Header__type2__coding__puncturing__scheme__to__mcs[7] = RLCMAC__Types::CodingScheme::MCS__5;
current_location.update_lineno(242);
/* RLCMAC_Templates.ttcn, line 242 */
return const_cast< const RLCMAC__Types::CodingSchemeArray&>(egprs__Header__type2__coding__puncturing__scheme__to__mcs)[cps];
}

RLCMAC__Types::CodingScheme f__rlcmac__cps__htype3__to__mcs(const INTEGER& cps)
{
TTCN_Location current_location("RLCMAC_Templates.ttcn", 246, TTCN_Location::LOCATION_FUNCTION, "f_rlcmac_cps_htype3_to_mcs");
current_location.update_lineno(247);
/* RLCMAC_Templates.ttcn, line 247 */
RLCMAC__Types::CodingSchemeArray egprs__Header__type3__coding__puncturing__scheme__to__mcs;
egprs__Header__type3__coding__puncturing__scheme__to__mcs.set_size(16);
egprs__Header__type3__coding__puncturing__scheme__to__mcs[0] = RLCMAC__Types::CodingScheme::MCS__4;
egprs__Header__type3__coding__puncturing__scheme__to__mcs[1] = RLCMAC__Types::CodingScheme::MCS__4;
egprs__Header__type3__coding__puncturing__scheme__to__mcs[2] = RLCMAC__Types::CodingScheme::MCS__4;
egprs__Header__type3__coding__puncturing__scheme__to__mcs[3] = RLCMAC__Types::CodingScheme::MCS__3;
egprs__Header__type3__coding__puncturing__scheme__to__mcs[4] = RLCMAC__Types::CodingScheme::MCS__3;
egprs__Header__type3__coding__puncturing__scheme__to__mcs[5] = RLCMAC__Types::CodingScheme::MCS__3;
egprs__Header__type3__coding__puncturing__scheme__to__mcs[6] = RLCMAC__Types::CodingScheme::MCS__3;
egprs__Header__type3__coding__puncturing__scheme__to__mcs[7] = RLCMAC__Types::CodingScheme::MCS__3;
egprs__Header__type3__coding__puncturing__scheme__to__mcs[8] = RLCMAC__Types::CodingScheme::MCS__3;
egprs__Header__type3__coding__puncturing__scheme__to__mcs[9] = RLCMAC__Types::CodingScheme::MCS__2;
egprs__Header__type3__coding__puncturing__scheme__to__mcs[10] = RLCMAC__Types::CodingScheme::MCS__2;
egprs__Header__type3__coding__puncturing__scheme__to__mcs[11] = RLCMAC__Types::CodingScheme::MCS__1;
egprs__Header__type3__coding__puncturing__scheme__to__mcs[12] = RLCMAC__Types::CodingScheme::MCS__1;
egprs__Header__type3__coding__puncturing__scheme__to__mcs[13] = RLCMAC__Types::CodingScheme::MCS__2;
egprs__Header__type3__coding__puncturing__scheme__to__mcs[14] = RLCMAC__Types::CodingScheme::MCS__2;
egprs__Header__type3__coding__puncturing__scheme__to__mcs[15] = RLCMAC__Types::CodingScheme::MCS__0;
current_location.update_lineno(265);
/* RLCMAC_Templates.ttcn, line 265 */
return const_cast< const RLCMAC__Types::CodingSchemeArray&>(egprs__Header__type3__coding__puncturing__scheme__to__mcs)[cps];
}

RLCMAC__Types::CodingScheme f__rlcmac__cps__htype__to__mcs(const INTEGER& cps, const RLCMAC__Types::EgprsHeaderType& htype)
{
TTCN_Location current_location("RLCMAC_Templates.ttcn", 268, TTCN_Location::LOCATION_FUNCTION, "f_rlcmac_cps_htype_to_mcs");
{
const RLCMAC__Types::EgprsHeaderType &tmp_16 = htype;
current_location.update_lineno(270);
/* RLCMAC_Templates.ttcn, line 270 */
if(tmp_16 == RLCMAC__Types::EgprsHeaderType::RLCMAC__HDR__TYPE__1) goto tmp_15_0;
current_location.update_lineno(271);
/* RLCMAC_Templates.ttcn, line 271 */
if(tmp_16 == RLCMAC__Types::EgprsHeaderType::RLCMAC__HDR__TYPE__2) goto tmp_15_1;
current_location.update_lineno(272);
/* RLCMAC_Templates.ttcn, line 272 */
if(tmp_16 == RLCMAC__Types::EgprsHeaderType::RLCMAC__HDR__TYPE__3) goto tmp_15_2;
goto tmp_15_end;
tmp_15_0:
{
current_location.update_lineno(270);
/* RLCMAC_Templates.ttcn, line 270 */
return f__rlcmac__cps__htype1__to__mcs(cps);
}
tmp_15_1:
{
current_location.update_lineno(271);
/* RLCMAC_Templates.ttcn, line 271 */
return f__rlcmac__cps__htype2__to__mcs(cps);
}
tmp_15_2:
{
current_location.update_lineno(272);
/* RLCMAC_Templates.ttcn, line 272 */
return f__rlcmac__cps__htype3__to__mcs(cps);
}
tmp_15_end: /* empty */;
}
current_location.update_lineno(275);
/* RLCMAC_Templates.ttcn, line 275 */
return RLCMAC__Types::CodingScheme::CS__1;
}

INTEGER f__rlcmac__mcs__to__cps__htype1(const RLCMAC__Types::CodingScheme& , const INTEGER& , const BOOLEAN& )
{
TTCN_Location current_location("RLCMAC_Templates.ttcn", 278, TTCN_Location::LOCATION_FUNCTION, "f_rlcmac_mcs_to_cps_htype1");
current_location.update_lineno(281);
/* RLCMAC_Templates.ttcn, line 281 */
return 0;
}

INTEGER f__rlcmac__mcs__to__cps__htype2(const RLCMAC__Types::CodingScheme& , const INTEGER& , const BOOLEAN& )
{
TTCN_Location current_location("RLCMAC_Templates.ttcn", 284, TTCN_Location::LOCATION_FUNCTION, "f_rlcmac_mcs_to_cps_htype2");
current_location.update_lineno(287);
/* RLCMAC_Templates.ttcn, line 287 */
return 0;
}

INTEGER f__rlcmac__mcs__to__cps__htype3(const RLCMAC__Types::CodingScheme& mcs, const INTEGER& part, const BOOLEAN& with__padding)
{
TTCN_Location current_location("RLCMAC_Templates.ttcn", 290, TTCN_Location::LOCATION_FUNCTION, "f_rlcmac_mcs_to_cps_htype3");
{
const RLCMAC__Types::CodingScheme &tmp_18 = mcs;
current_location.update_lineno(292);
/* RLCMAC_Templates.ttcn, line 292 */
if(tmp_18 == RLCMAC__Types::CodingScheme::MCS__4) goto tmp_17_0;
current_location.update_lineno(299);
/* RLCMAC_Templates.ttcn, line 299 */
if(tmp_18 == RLCMAC__Types::CodingScheme::MCS__3) goto tmp_17_1;
current_location.update_lineno(314);
/* RLCMAC_Templates.ttcn, line 314 */
if(tmp_18 == RLCMAC__Types::CodingScheme::MCS__2) goto tmp_17_2;
current_location.update_lineno(327);
/* RLCMAC_Templates.ttcn, line 327 */
if(tmp_18 == RLCMAC__Types::CodingScheme::MCS__1) goto tmp_17_3;
current_location.update_lineno(333);
/* RLCMAC_Templates.ttcn, line 333 */
if(tmp_18 == RLCMAC__Types::CodingScheme::MCS__0) goto tmp_17_4;
goto tmp_17_end;
tmp_17_0:
{
{
const INTEGER &tmp_20 = part;
switch(tmp_20.get_long_long_val()) {
case(1):
{
current_location.update_lineno(294);
/* RLCMAC_Templates.ttcn, line 294 */
return 0;
break;
}
case(2):
{
current_location.update_lineno(295);
/* RLCMAC_Templates.ttcn, line 295 */
return 1;
break;
}
case(3):
{
current_location.update_lineno(296);
/* RLCMAC_Templates.ttcn, line 296 */
return 2;
break;
}
};}
goto tmp_17_end;
}
tmp_17_1:
{
current_location.update_lineno(300);
/* RLCMAC_Templates.ttcn, line 300 */
if ((!(with__padding))) {
{
const INTEGER &tmp_22 = part;
switch(tmp_22.get_long_long_val()) {
case(1):
{
current_location.update_lineno(302);
/* RLCMAC_Templates.ttcn, line 302 */
return 3;
break;
}
case(2):
{
current_location.update_lineno(303);
/* RLCMAC_Templates.ttcn, line 303 */
return 4;
break;
}
case(3):
{
current_location.update_lineno(304);
/* RLCMAC_Templates.ttcn, line 304 */
return 5;
break;
}
};}
}
else {
{
const INTEGER &tmp_24 = part;
switch(tmp_24.get_long_long_val()) {
case(1):
{
current_location.update_lineno(308);
/* RLCMAC_Templates.ttcn, line 308 */
return 6;
break;
}
case(2):
{
current_location.update_lineno(309);
/* RLCMAC_Templates.ttcn, line 309 */
return 7;
break;
}
case(3):
{
current_location.update_lineno(310);
/* RLCMAC_Templates.ttcn, line 310 */
return 8;
break;
}
};}
}
goto tmp_17_end;
}
tmp_17_2:
{
current_location.update_lineno(315);
/* RLCMAC_Templates.ttcn, line 315 */
if ((!(with__padding))) {
{
const INTEGER &tmp_26 = part;
switch(tmp_26.get_long_long_val()) {
case(1):
{
current_location.update_lineno(317);
/* RLCMAC_Templates.ttcn, line 317 */
return 9;
break;
}
case(2):
{
current_location.update_lineno(318);
/* RLCMAC_Templates.ttcn, line 318 */
return 10;
break;
}
};}
}
else {
{
const INTEGER &tmp_28 = part;
switch(tmp_28.get_long_long_val()) {
case(1):
{
current_location.update_lineno(322);
/* RLCMAC_Templates.ttcn, line 322 */
return 13;
break;
}
case(2):
{
current_location.update_lineno(323);
/* RLCMAC_Templates.ttcn, line 323 */
return 14;
break;
}
};}
}
goto tmp_17_end;
}
tmp_17_3:
{
{
const INTEGER &tmp_30 = part;
switch(tmp_30.get_long_long_val()) {
case(1):
{
current_location.update_lineno(329);
/* RLCMAC_Templates.ttcn, line 329 */
return 11;
break;
}
case(2):
{
current_location.update_lineno(330);
/* RLCMAC_Templates.ttcn, line 330 */
return 12;
break;
}
};}
goto tmp_17_end;
}
tmp_17_4:
{
current_location.update_lineno(333);
/* RLCMAC_Templates.ttcn, line 333 */
return 15;
}
tmp_17_end: /* empty */;
}
current_location.update_lineno(336);
/* RLCMAC_Templates.ttcn, line 336 */
return 0;
}

INTEGER f__rlcmac__mcs__to__cps(const RLCMAC__Types::CodingScheme& mcs, const INTEGER& part, const BOOLEAN& with__padding)
{
TTCN_Location current_location("RLCMAC_Templates.ttcn", 339, TTCN_Location::LOCATION_FUNCTION, "f_rlcmac_mcs_to_cps");
current_location.update_lineno(341);
/* RLCMAC_Templates.ttcn, line 341 */
RLCMAC__Types::EgprsHeaderType htype(f__rlcmac__mcs2headertype(mcs));
{
const RLCMAC__Types::EgprsHeaderType &tmp_32 = htype;
current_location.update_lineno(343);
/* RLCMAC_Templates.ttcn, line 343 */
if(tmp_32 == RLCMAC__Types::EgprsHeaderType::RLCMAC__HDR__TYPE__1) goto tmp_31_0;
current_location.update_lineno(344);
/* RLCMAC_Templates.ttcn, line 344 */
if(tmp_32 == RLCMAC__Types::EgprsHeaderType::RLCMAC__HDR__TYPE__2) goto tmp_31_1;
current_location.update_lineno(345);
/* RLCMAC_Templates.ttcn, line 345 */
if(tmp_32 == RLCMAC__Types::EgprsHeaderType::RLCMAC__HDR__TYPE__3) goto tmp_31_2;
goto tmp_31_end;
tmp_31_0:
{
current_location.update_lineno(343);
/* RLCMAC_Templates.ttcn, line 343 */
return f__rlcmac__mcs__to__cps__htype1(mcs, part, with__padding);
}
tmp_31_1:
{
current_location.update_lineno(344);
/* RLCMAC_Templates.ttcn, line 344 */
return f__rlcmac__mcs__to__cps__htype2(mcs, part, with__padding);
}
tmp_31_2:
{
current_location.update_lineno(345);
/* RLCMAC_Templates.ttcn, line 345 */
return f__rlcmac__mcs__to__cps__htype3(mcs, part, with__padding);
}
tmp_31_end: /* empty */;
}
current_location.update_lineno(348);
/* RLCMAC_Templates.ttcn, line 348 */
return 0;
}

RLCMAC__Types::RlcmacUlBlock_template ts__RLC__UL__CTRL__ACK(const RLCMAC__CSN1__Types::RlcmacUlCtrlMsg_template& ctrl, const RLCMAC__Types::MacPayloadType& pt, const BOOLEAN& retry)
{
TTCN_Location current_location("RLCMAC_Templates.ttcn", 351, TTCN_Location::LOCATION_TEMPLATE, "ts_RLC_UL_CTRL_ACK");
RLCMAC__Types::RlcmacUlBlock_template ret_val;
{
RLCMAC__Types::RlcmacUlCtrlBlock_template& tmp_33 = ret_val.ctrl();
{
RLCMAC__Types::UlMacCtrlHeader_template& tmp_34 = tmp_33.mac__hdr();
tmp_34.payload__type() = pt;
tmp_34.spare() = bs_0;
tmp_34.retry() = retry;
}
tmp_33.payload() = ctrl;
}
return ret_val;
}

BITSTRING f__presence__bit__chreq__desc(const RLCMAC__CSN1__Types::ChannelReqDescription_template& chreq__desc)
{
TTCN_Location current_location("RLCMAC_Templates.ttcn", 364, TTCN_Location::LOCATION_FUNCTION, "f_presence_bit_chreq_desc");
current_location.update_lineno(365);
/* RLCMAC_Templates.ttcn, line 365 */
if (chreq__desc.get_istemplate_kind((const char*)cs_0)) {
current_location.update_lineno(366);
/* RLCMAC_Templates.ttcn, line 366 */
return bs_1;
}
current_location.update_lineno(368);
/* RLCMAC_Templates.ttcn, line 368 */
return bs_2;
}

RLCMAC__Types::RlcmacUlBlock_template ts__RLCMAC__DL__ACK__NACK(const INTEGER_template& tfi, const RLCMAC__CSN1__Types::AckNackDescription& andesc, const BOOLEAN& retry, const RLCMAC__CSN1__Types::ChannelReqDescription_template& chreq__desc)
{
TTCN_Location current_location("RLCMAC_Templates.ttcn", 372, TTCN_Location::LOCATION_TEMPLATE, "ts_RLCMAC_DL_ACK_NACK");
RLCMAC__Types::RlcmacUlBlock_template ret_val;
{
RLCMAC__Types::RlcmacUlCtrlBlock_template& tmp_35 = ret_val.ctrl();
{
RLCMAC__Types::UlMacCtrlHeader_template& tmp_36 = tmp_35.mac__hdr();
tmp_36.payload__type() = RLCMAC__Types::MacPayloadType::MAC__PT__RLCMAC__NO__OPT;
tmp_36.spare() = bs_0;
tmp_36.retry() = retry;
}
{
RLCMAC__CSN1__Types::RlcmacUlCtrlMsg_template& tmp_37 = tmp_35.payload();
tmp_37.msg__type() = RLCMAC__CSN1__Types::RlcmacUlCtrlMsgType::PACKET__DL__ACK__NACK;
{
RLCMAC__CSN1__Types::PacketDlAckNack_template& tmp_38 = tmp_37.u().dl__ack__nack();
tmp_38.dl__tfi() = tfi;
tmp_38.ack__nack__desc() = andesc;
tmp_38.chreq__desc__presence() = f__presence__bit__chreq__desc(chreq__desc);
tmp_38.chreq__desc() = chreq__desc;
tmp_38.ch__qual__rep() = RLCMAC__CSN1__Templates::c__ChQualRep__default;
}
}
}
return ret_val;
}

RLCMAC__Types::RlcmacUlBlock_template ts__RLCMAC__DL__ACK__NACK__EGPRS(const INTEGER_template& tfi, const RLCMAC__CSN1__Types::EgprsAckNackDescription& andesc, const BOOLEAN& retry, const RLCMAC__CSN1__Types::ChannelReqDescription_template& chreq__desc)
{
TTCN_Location current_location("RLCMAC_Templates.ttcn", 396, TTCN_Location::LOCATION_TEMPLATE, "ts_RLCMAC_DL_ACK_NACK_EGPRS");
RLCMAC__Types::RlcmacUlBlock_template ret_val;
{
RLCMAC__Types::RlcmacUlCtrlBlock_template& tmp_39 = ret_val.ctrl();
{
RLCMAC__Types::UlMacCtrlHeader_template& tmp_40 = tmp_39.mac__hdr();
tmp_40.payload__type() = RLCMAC__Types::MacPayloadType::MAC__PT__RLCMAC__NO__OPT;
tmp_40.spare() = bs_0;
tmp_40.retry() = retry;
}
{
RLCMAC__CSN1__Types::RlcmacUlCtrlMsg_template& tmp_41 = tmp_39.payload();
tmp_41.msg__type() = RLCMAC__CSN1__Types::RlcmacUlCtrlMsgType::PACKET__EGPRS__DL__ACK__NACK;
{
RLCMAC__CSN1__Types::EgprsPacketDlAckNack_template& tmp_42 = tmp_41.u().dl__ack__nack__egprs();
tmp_42.dl__tfi() = tfi;
tmp_42.ms__oom() = bs_1;
tmp_42.egprs__ch__qual__rep__presence() = bs_1;
tmp_42.egprs__ch__qual__rep() = OMIT_VALUE;
tmp_42.chreq__desc__presence() = f__presence__bit__chreq__desc(chreq__desc);
tmp_42.chreq__desc() = chreq__desc;
tmp_42.pfi__presence() = bs_1;
tmp_42.pfi() = OMIT_VALUE;
tmp_42.epdan__presence() = bs_1;
tmp_42.ack__nack__desc__ie() = RLCMAC__CSN1__Templates::ts__EgprsAckNackDescriptionIE(RLCMAC__CSN1__Types::EgprsAckNackDescription_template(andesc));
}
}
}
return ret_val;
}

RLCMAC__Types::RlcmacUlBlock_template t__RLCMAC__UL__DATA(const RLCMAC__Types::CodingScheme_template& cs, const INTEGER_template& tfi, const INTEGER_template& cv, const INTEGER_template& bsn, const RLCMAC__Types::LlcBlocks_template& blocks, const BOOLEAN_template& stall)
{
TTCN_Location current_location("RLCMAC_Templates.ttcn", 427, TTCN_Location::LOCATION_TEMPLATE, "t_RLCMAC_UL_DATA");
RLCMAC__Types::RlcmacUlBlock_template ret_val;
{
RLCMAC__Types::RlcmacUlDataBlock_template& tmp_43 = ret_val.data();
tmp_43.cs() = cs;
{
RLCMAC__Types::UlMacDataHeader_template& tmp_44 = tmp_43.mac__hdr();
tmp_44.payload__type() = RLCMAC__Types::MacPayloadType::MAC__PT__RLC__DATA;
tmp_44.countdown() = cv;
tmp_44.stall__ind() = stall;
tmp_44.retry() = FALSE;
tmp_44.spare() = bs_1;
tmp_44.pfi__ind() = FALSE;
tmp_44.tfi() = tfi;
tmp_44.tlli__ind() = FALSE;
tmp_44.bsn() = bsn;
tmp_44.e() = FALSE;
}
tmp_43.tlli() = OMIT_VALUE;
tmp_43.pfi() = OMIT_VALUE;
tmp_43.blocks() = blocks;
}
return ret_val;
}

RLCMAC__Types::RlcmacUlBlock_template t__RLCMAC__UL__DATA__TLLI(const RLCMAC__Types::CodingScheme_template& cs, const INTEGER_template& tfi, const INTEGER_template& cv, const INTEGER_template& bsn, const RLCMAC__Types::LlcBlocks_template& blocks, const BOOLEAN_template& stall, const OCTETSTRING_template& tlli)
{
TTCN_Location current_location("RLCMAC_Templates.ttcn", 452, TTCN_Location::LOCATION_TEMPLATE, "t_RLCMAC_UL_DATA_TLLI");
RLCMAC__Types::RlcmacUlBlock_template ret_val;
{
RLCMAC__Types::RlcmacUlDataBlock_template& tmp_45 = ret_val.data();
tmp_45.cs() = cs;
{
RLCMAC__Types::UlMacDataHeader_template& tmp_46 = tmp_45.mac__hdr();
tmp_46.payload__type() = RLCMAC__Types::MacPayloadType::MAC__PT__RLC__DATA;
tmp_46.countdown() = cv;
tmp_46.stall__ind() = stall;
tmp_46.retry() = FALSE;
tmp_46.spare() = bs_1;
tmp_46.pfi__ind() = FALSE;
tmp_46.tfi() = tfi;
tmp_46.tlli__ind() = TRUE;
tmp_46.bsn() = bsn;
tmp_46.e() = FALSE;
}
tmp_45.tlli() = tlli;
tmp_45.pfi() = OMIT_VALUE;
tmp_45.blocks() = blocks;
}
return ret_val;
}

RLCMAC__Types::RlcmacUlBlock_template t__RLCMAC__UL__EGPRS__DATA(const RLCMAC__Types::CodingScheme& mcs, const INTEGER_template& tfi, const INTEGER_template& cv, const INTEGER_template& bsn1, const INTEGER_template& bsn2__offset, const RLCMAC__Types::EgprsLlcBlocks_template& blocks)
{
TTCN_Location current_location("RLCMAC_Templates.ttcn", 480, TTCN_Location::LOCATION_TEMPLATE, "t_RLCMAC_UL_EGPRS_DATA");
RLCMAC__Types::RlcmacUlBlock_template ret_val;
{
RLCMAC__Types::RlcmacUlEgprsDataBlock_template& tmp_47 = ret_val.data__egprs();
tmp_47.mcs() = mcs;
{
RLCMAC__Types::EgprsUlMacDataHeader_template& tmp_48 = tmp_47.mac__hdr();
tmp_48.header__type() = f__rlcmac__mcs2headertype(mcs);
tmp_48.tfi() = tfi;
tmp_48.countdown() = cv;
tmp_48.foi__si() = bs_1;
tmp_48.r__ri() = bs_1;
tmp_48.bsn1() = bsn1;
tmp_48.bsn2__offset() = bsn2__offset;
tmp_48.cps() = f__rlcmac__mcs__to__cps(mcs, 1, FALSE);
tmp_48.pfi__ind() = FALSE;
tmp_48.rsb() = bs_1;
tmp_48.spb() = bs_3;
}
tmp_47.tlli__ind() = FALSE;
tmp_47.e() = FALSE;
tmp_47.tlli() = OMIT_VALUE;
tmp_47.pfi() = OMIT_VALUE;
tmp_47.blocks() = blocks;
}
return ret_val;
}

RLCMAC__Types::DlMacHeader_template ts__RLCMAC__DlMacH(const RLCMAC__Types::MacPayloadType_template& pt, const BOOLEAN_template& rrbp__valid, const RLCMAC__Types::MacRrbp_template& rrbp, const INTEGER_template& usf)
{
TTCN_Location current_location("RLCMAC_Templates.ttcn", 509, TTCN_Location::LOCATION_TEMPLATE, "ts_RLCMAC_DlMacH");
RLCMAC__Types::DlMacHeader_template ret_val;
ret_val.payload__type() = pt;
ret_val.rrbp() = rrbp;
ret_val.rrbp__valid() = rrbp__valid;
ret_val.usf() = usf;
return ret_val;
}

RLCMAC__Types::DlMacHeader_template t__RLCMAC__DlMacH(const RLCMAC__Types::MacPayloadType_template& pt, const BOOLEAN_template& rrbp__valid, const RLCMAC__Types::MacRrbp_template& rrbp, const INTEGER_template& usf)
{
TTCN_Location current_location("RLCMAC_Templates.ttcn", 519, TTCN_Location::LOCATION_TEMPLATE, "t_RLCMAC_DlMacH");
RLCMAC__Types::DlMacHeader_template ret_val;
ret_val.payload__type() = pt;
ret_val.rrbp() = rrbp;
ret_val.rrbp__valid() = rrbp__valid;
ret_val.usf() = usf;
return ret_val;
}

RLCMAC__Types::RlcmacDlBlock_template tr__RLCMAC__DL__CTRL(const INTEGER_template& usf, const RLCMAC__CSN1__Types::RlcmacDlCtrlMsg_template& dl__ctrl)
{
TTCN_Location current_location("RLCMAC_Templates.ttcn", 530, TTCN_Location::LOCATION_TEMPLATE, "tr_RLCMAC_DL_CTRL");
RLCMAC__Types::RlcmacDlBlock_template ret_val;
{
RLCMAC__Types::RlcmacDlCtrlBlock_template& tmp_49 = ret_val.ctrl();
{
RLCMAC__Types::DlMacHeader_template& tmp_50 = tmp_49.mac__hdr();
{
RLCMAC__Types::MacPayloadType_template& tmp_51 = tmp_50.payload__type();
tmp_51.set_type(VALUE_LIST, 2);
tmp_51.list_item(0) = RLCMAC__Types::MacPayloadType::MAC__PT__RLCMAC__NO__OPT;
tmp_51.list_item(1) = RLCMAC__Types::MacPayloadType::MAC__PT__RLCMAC__OPT;
}
tmp_50.rrbp() = ANY_VALUE;
tmp_50.rrbp__valid() = ANY_VALUE;
tmp_50.usf() = usf;
}
tmp_49.opt() = ANY_OR_OMIT;
tmp_49.payload() = dl__ctrl;
}
return ret_val;
}

RLCMAC__Types::RlcmacDlBlock_template ts__RLCMAC__DL__DUMMY__CTRL(const RLCMAC__Types::DlMacHeader_template& mac__hdr, const RLCMAC__CSN1__Types::PageMode_template& page__mode)
{
TTCN_Location current_location("RLCMAC_Templates.ttcn", 543, TTCN_Location::LOCATION_TEMPLATE, "ts_RLCMAC_DL_DUMMY_CTRL");
RLCMAC__Types::RlcmacDlBlock_template ret_val;
{
RLCMAC__Types::RlcmacDlCtrlBlock_template& tmp_52 = ret_val.ctrl();
tmp_52.mac__hdr() = mac__hdr;
tmp_52.opt() = OMIT_VALUE;
{
RLCMAC__CSN1__Types::RlcmacDlCtrlMsg_template& tmp_53 = tmp_52.payload();
tmp_53.msg__type() = RLCMAC__CSN1__Types::RlcmacDlCtrlMsgType::PACKET__DL__DUMMY__CTRL;
{
RLCMAC__CSN1__Types::PacketDlDummy_template& tmp_54 = tmp_53.u().dl__dummy();
tmp_54.page__mode() = page__mode;
tmp_54.persistence__levels__present() = bs_1;
tmp_54.persistence__levels() = OMIT_VALUE;
}
}
}
return ret_val;
}

RLCMAC__Types::RlcmacDlBlock_template tr__RLCMAC__DL__DUMMY__CTRL(const INTEGER_template& usf, const RLCMAC__CSN1__Types::PageMode_template& page__mode)
{
TTCN_Location current_location("RLCMAC_Templates.ttcn", 561, TTCN_Location::LOCATION_TEMPLATE, "tr_RLCMAC_DL_DUMMY_CTRL");
RLCMAC__Types::RlcmacDlBlock_template ret_val;
{
RLCMAC__Types::RlcmacDlCtrlBlock_template& tmp_55 = ret_val.ctrl();
{
RLCMAC__Types::DlMacHeader_template& tmp_56 = tmp_55.mac__hdr();
{
RLCMAC__Types::MacPayloadType_template& tmp_57 = tmp_56.payload__type();
tmp_57.set_type(VALUE_LIST, 2);
tmp_57.list_item(0) = RLCMAC__Types::MacPayloadType::MAC__PT__RLCMAC__NO__OPT;
tmp_57.list_item(1) = RLCMAC__Types::MacPayloadType::MAC__PT__RLCMAC__OPT;
}
tmp_56.rrbp() = ANY_VALUE;
tmp_56.rrbp__valid() = ANY_VALUE;
tmp_56.usf() = usf;
}
tmp_55.opt() = ANY_OR_OMIT;
{
RLCMAC__CSN1__Types::RlcmacDlCtrlMsg_template& tmp_58 = tmp_55.payload();
tmp_58.msg__type() = RLCMAC__CSN1__Types::RlcmacDlCtrlMsgType::PACKET__DL__DUMMY__CTRL;
{
RLCMAC__CSN1__Types::PacketDlDummy_template& tmp_59 = tmp_58.u().dl__dummy();
tmp_59.page__mode() = page__mode;
tmp_59.persistence__levels__present() = ANY_VALUE;
tmp_59.persistence__levels() = ANY_OR_OMIT;
}
}
}
return ret_val;
}

RLCMAC__Types::RlcmacDlBlock_template tr__RLCMAC__DL__PACKET__ASS(const INTEGER_template& usf)
{
TTCN_Location current_location("RLCMAC_Templates.ttcn", 583, TTCN_Location::LOCATION_TEMPLATE, "tr_RLCMAC_DL_PACKET_ASS");
RLCMAC__Types::RlcmacDlBlock_template ret_val;
{
RLCMAC__Types::RlcmacDlCtrlBlock_template& tmp_60 = ret_val.ctrl();
{
RLCMAC__Types::DlMacHeader_template& tmp_61 = tmp_60.mac__hdr();
{
RLCMAC__Types::MacPayloadType_template& tmp_62 = tmp_61.payload__type();
tmp_62.set_type(VALUE_LIST, 2);
tmp_62.list_item(0) = RLCMAC__Types::MacPayloadType::MAC__PT__RLCMAC__NO__OPT;
tmp_62.list_item(1) = RLCMAC__Types::MacPayloadType::MAC__PT__RLCMAC__OPT;
}
tmp_61.rrbp() = ANY_VALUE;
tmp_61.rrbp__valid() = ANY_VALUE;
tmp_61.usf() = usf;
}
tmp_60.opt() = ANY_OR_OMIT;
{
RLCMAC__CSN1__Types::RlcmacDlCtrlMsg_template& tmp_63 = tmp_60.payload();
tmp_63.msg__type() = RLCMAC__CSN1__Types::RlcmacDlCtrlMsgType::PACKET__DL__ASSIGNMENT;
{
RLCMAC__CSN1__Types::PacketDlAssignment_template& tmp_64 = tmp_63.u().dl__assignment();
tmp_64.page__mode() = ANY_VALUE;
tmp_64.pres1() = ANY_VALUE;
tmp_64.persistence__levels() = ANY_OR_OMIT;
tmp_64.tfi__or__tlli() = ANY_VALUE;
tmp_64.egprs2() = bs_1;
tmp_64.mac__mode() = ANY_VALUE;
tmp_64.rlc__mode() = ANY_VALUE;
tmp_64.control__ack() = ANY_VALUE;
tmp_64.timeslot__alloc() = ANY_VALUE;
tmp_64.pkt__ta() = ANY_VALUE;
tmp_64.p0__present() = ANY_VALUE;
tmp_64.p0() = ANY_OR_OMIT;
tmp_64.reserved() = ANY_OR_OMIT;
tmp_64.pr__mode() = ANY_OR_OMIT;
tmp_64.freq__par__present() = ANY_VALUE;
tmp_64.freq__par() = ANY_OR_OMIT;
tmp_64.dl__tfi__ass__present() = ANY_VALUE;
tmp_64.dl__tfi__assignment() = ANY_OR_OMIT;
tmp_64.pwr__ctrl__present() = ANY_VALUE;
tmp_64.pwr__ctrl() = ANY_OR_OMIT;
tmp_64.tbf__starting__time__present() = ANY_VALUE;
tmp_64.tbf__starting__time() = ANY_OR_OMIT;
tmp_64.spare() = bs_1;
tmp_64.rel__additions() = ANY_OR_OMIT;
}
}
}
return ret_val;
}

RLCMAC__Types::RlcmacDlBlock_template tr__RLCMAC__UL__PACKET__ASS(const INTEGER_template& usf)
{
TTCN_Location current_location("RLCMAC_Templates.ttcn", 626, TTCN_Location::LOCATION_TEMPLATE, "tr_RLCMAC_UL_PACKET_ASS");
RLCMAC__Types::RlcmacDlBlock_template ret_val;
{
RLCMAC__Types::RlcmacDlCtrlBlock_template& tmp_65 = ret_val.ctrl();
{
RLCMAC__Types::DlMacHeader_template& tmp_66 = tmp_65.mac__hdr();
{
RLCMAC__Types::MacPayloadType_template& tmp_67 = tmp_66.payload__type();
tmp_67.set_type(VALUE_LIST, 2);
tmp_67.list_item(0) = RLCMAC__Types::MacPayloadType::MAC__PT__RLCMAC__NO__OPT;
tmp_67.list_item(1) = RLCMAC__Types::MacPayloadType::MAC__PT__RLCMAC__OPT;
}
tmp_66.rrbp() = ANY_VALUE;
tmp_66.rrbp__valid() = ANY_VALUE;
tmp_66.usf() = usf;
}
tmp_65.opt() = ANY_OR_OMIT;
{
RLCMAC__CSN1__Types::RlcmacDlCtrlMsg_template& tmp_68 = tmp_65.payload();
tmp_68.msg__type() = RLCMAC__CSN1__Types::RlcmacDlCtrlMsgType::PACKET__UL__ASSIGNMENT;
{
RLCMAC__CSN1__Types::PacketUlAssignment_template& tmp_69 = tmp_68.u().ul__assignment();
tmp_69.page__mode() = ANY_VALUE;
tmp_69.persistence__levels__present() = ANY_VALUE;
tmp_69.persistence__levels() = ANY_OR_OMIT;
tmp_69.identity() = ANY_VALUE;
tmp_69.is__egprs() = ANY_VALUE;
tmp_69.gprs() = ANY_OR_OMIT;
tmp_69.egprs() = ANY_OR_OMIT;
}
}
}
return ret_val;
}

RLCMAC__Types::RlcmacDlBlock_template tr__RLCMAC__UL__PACKET__ASS__GPRS(const INTEGER_template& usf, const RLCMAC__CSN1__Types::PktUlAssGprs_template& gprs)
{
TTCN_Location current_location("RLCMAC_Templates.ttcn", 652, TTCN_Location::LOCATION_TEMPLATE, "tr_RLCMAC_UL_PACKET_ASS_GPRS");
RLCMAC__Types::RlcmacDlBlock_template ret_val(tr__RLCMAC__UL__PACKET__ASS(usf));
{
RLCMAC__CSN1__Types::PacketUlAssignment_template& tmp_70 = ret_val.ctrl().payload().u().ul__assignment();
tmp_70.is__egprs() = bs_1;
tmp_70.gprs() = gprs;
tmp_70.egprs() = OMIT_VALUE;
}
return ret_val;
}

RLCMAC__Types::RlcmacDlBlock_template tr__RLCMAC__UL__PACKET__ASS__EGPRS(const INTEGER_template& usf, const RLCMAC__CSN1__Types::PktUlAssEgprs_template& egprs)
{
TTCN_Location current_location("RLCMAC_Templates.ttcn", 667, TTCN_Location::LOCATION_TEMPLATE, "tr_RLCMAC_UL_PACKET_ASS_EGPRS");
RLCMAC__Types::RlcmacDlBlock_template ret_val(tr__RLCMAC__UL__PACKET__ASS(usf));
{
RLCMAC__CSN1__Types::PacketUlAssignment_template& tmp_71 = ret_val.ctrl().payload().u().ul__assignment();
tmp_71.is__egprs() = bs_2;
tmp_71.gprs() = OMIT_VALUE;
tmp_71.egprs() = egprs;
}
return ret_val;
}

RLCMAC__Types::RlcmacDlBlock_template tr__RLCMAC__UL__ACK__NACK(const INTEGER_template& ul__tfi)
{
TTCN_Location current_location("RLCMAC_Templates.ttcn", 683, TTCN_Location::LOCATION_TEMPLATE, "tr_RLCMAC_UL_ACK_NACK");
RLCMAC__Types::RlcmacDlBlock_template ret_val;
{
RLCMAC__Types::RlcmacDlCtrlBlock_template& tmp_72 = ret_val.ctrl();
{
RLCMAC__Types::DlMacHeader_template& tmp_73 = tmp_72.mac__hdr();
{
RLCMAC__Types::MacPayloadType_template& tmp_74 = tmp_73.payload__type();
tmp_74.set_type(VALUE_LIST, 2);
tmp_74.list_item(0) = RLCMAC__Types::MacPayloadType::MAC__PT__RLCMAC__NO__OPT;
tmp_74.list_item(1) = RLCMAC__Types::MacPayloadType::MAC__PT__RLCMAC__OPT;
}
tmp_73.rrbp() = ANY_VALUE;
tmp_73.rrbp__valid() = ANY_VALUE;
tmp_73.usf() = ANY_VALUE;
}
tmp_72.opt() = ANY_OR_OMIT;
{
RLCMAC__CSN1__Types::RlcmacDlCtrlMsg_template& tmp_75 = tmp_72.payload();
tmp_75.msg__type() = RLCMAC__CSN1__Types::RlcmacDlCtrlMsgType::PACKET__UL__ACK__NACK;
{
RLCMAC__CSN1__Types::PacketUlAckNack_template& tmp_76 = tmp_75.u().ul__ack__nack();
tmp_76.page__mode() = ANY_VALUE;
tmp_76.msg__excape() = ANY_VALUE;
tmp_76.uplink__tfi() = ul__tfi;
tmp_76.is__egprs() = ANY_VALUE;
tmp_76.gprs() = ANY_OR_OMIT;
tmp_76.egprs() = ANY_OR_OMIT;
}
}
}
return ret_val;
}

RLCMAC__Types::RlcmacDlBlock_template tr__RLCMAC__UL__ACK__NACK__GPRS(const INTEGER_template& ul__tfi, const RLCMAC__CSN1__Types::UlAckNackGprs_template& gprs)
{
TTCN_Location current_location("RLCMAC_Templates.ttcn", 708, TTCN_Location::LOCATION_TEMPLATE, "tr_RLCMAC_UL_ACK_NACK_GPRS");
RLCMAC__Types::RlcmacDlBlock_template ret_val(tr__RLCMAC__UL__ACK__NACK(ul__tfi));
{
RLCMAC__CSN1__Types::PacketUlAckNack_template& tmp_77 = ret_val.ctrl().payload().u().ul__ack__nack();
tmp_77.is__egprs() = bs_1;
tmp_77.gprs() = gprs;
tmp_77.egprs() = OMIT_VALUE;
}
return ret_val;
}

RLCMAC__Types::RlcmacDlBlock_template tr__RLCMAC__UL__ACK__NACK__EGPRS(const INTEGER_template& ul__tfi, const RLCMAC__CSN1__Types::UlAckNackEgprs_template& egprs)
{
TTCN_Location current_location("RLCMAC_Templates.ttcn", 723, TTCN_Location::LOCATION_TEMPLATE, "tr_RLCMAC_UL_ACK_NACK_EGPRS");
RLCMAC__Types::RlcmacDlBlock_template ret_val(tr__RLCMAC__UL__ACK__NACK(ul__tfi));
{
RLCMAC__CSN1__Types::PacketUlAckNack_template& tmp_78 = ret_val.ctrl().payload().u().ul__ack__nack();
tmp_78.is__egprs() = bs_2;
tmp_78.gprs() = OMIT_VALUE;
tmp_78.egprs() = egprs;
}
return ret_val;
}

RLCMAC__Types::RlcmacDlBlock_template tr__RLCMAC__PACKET__PAG__REQ(const INTEGER_template& usf)
{
TTCN_Location current_location("RLCMAC_Templates.ttcn", 738, TTCN_Location::LOCATION_TEMPLATE, "tr_RLCMAC_PACKET_PAG_REQ");
RLCMAC__Types::RlcmacDlBlock_template ret_val;
{
RLCMAC__Types::RlcmacDlCtrlBlock_template& tmp_79 = ret_val.ctrl();
{
RLCMAC__Types::DlMacHeader_template& tmp_80 = tmp_79.mac__hdr();
tmp_80.payload__type() = RLCMAC__Types::MacPayloadType::MAC__PT__RLCMAC__NO__OPT;
tmp_80.rrbp() = ANY_VALUE;
tmp_80.rrbp__valid() = ANY_VALUE;
tmp_80.usf() = usf;
}
tmp_79.opt() = ANY_OR_OMIT;
{
RLCMAC__CSN1__Types::RlcmacDlCtrlMsg_template& tmp_81 = tmp_79.payload();
tmp_81.msg__type() = RLCMAC__CSN1__Types::RlcmacDlCtrlMsgType::PACKET__PAGING__REQUEST;
{
RLCMAC__CSN1__Types::PacketPagingReq_template& tmp_82 = tmp_81.u().paging();
tmp_82.page__mode() = ANY_VALUE;
tmp_82.persistence__levels__present() = ANY_VALUE;
tmp_82.persistence__levels() = ANY_OR_OMIT;
tmp_82.nln__present() = ANY_VALUE;
tmp_82.nln() = ANY_OR_OMIT;
tmp_82.repeated__pageinfo() = ANY_OR_OMIT;
tmp_82.repeated__pageinfo__term() = bs_1;
}
}
}
return ret_val;
}

RLCMAC__Types::RlcmacDlBlock_template tr__RLCMAC__DATA__GPRS(const BOOLEAN_template& rrbp__valid, const RLCMAC__Types::MacRrbp_template& rrbp, const INTEGER_template& usf)
{
TTCN_Location current_location("RLCMAC_Templates.ttcn", 767, TTCN_Location::LOCATION_TEMPLATE, "tr_RLCMAC_DATA_GPRS");
RLCMAC__Types::RlcmacDlBlock_template ret_val;
{
RLCMAC__Types::RlcmacDlDataBlock_template& tmp_84 = ret_val.data();
tmp_84.cs() = ANY_VALUE;
{
RLCMAC__Types::DlMacDataHeader_template& tmp_85 = tmp_84.mac__hdr();
{
RLCMAC__Types::DlMacHeader_template& tmp_86 = tmp_85.mac__hdr();
tmp_86.payload__type() = RLCMAC__Types::MacPayloadType::MAC__PT__RLC__DATA;
tmp_86.rrbp() = rrbp;
tmp_86.rrbp__valid() = rrbp__valid;
tmp_86.usf() = usf;
}
tmp_85.hdr__ext() = ANY_VALUE;
}
tmp_84.blocks() = ANY_VALUE;
}
return ret_val;
}

RLCMAC__Types::UlMacCtrlHeader_template t__RLCMAC__UlMacCtrlH(const RLCMAC__Types::MacPayloadType_template& pt, const BOOLEAN_template& retry)
{
TTCN_Location current_location("RLCMAC_Templates.ttcn", 796, TTCN_Location::LOCATION_TEMPLATE, "t_RLCMAC_UlMacCtrlH");
RLCMAC__Types::UlMacCtrlHeader_template ret_val;
ret_val.payload__type() = pt;
ret_val.spare() = bs_0;
ret_val.retry() = retry;
return ret_val;
}

RLCMAC__Types::RlcmacUlBlock_template ts__RLCMAC__CTRL__ACK(const OCTETSTRING& tlli, const RLCMAC__CSN1__Types::CtrlAck& ack)
{
TTCN_Location current_location("RLCMAC_Templates.ttcn", 804, TTCN_Location::LOCATION_TEMPLATE, "ts_RLCMAC_CTRL_ACK");
RLCMAC__Types::RlcmacUlBlock_template ret_val;
{
RLCMAC__Types::RlcmacUlCtrlBlock_template& tmp_87 = ret_val.ctrl();
tmp_87.mac__hdr() = t__RLCMAC__UlMacCtrlH(RLCMAC__Types::MacPayloadType_template(RLCMAC__Types::MacPayloadType::MAC__PT__RLCMAC__NO__OPT), t__RLCMAC__UlMacCtrlH_retry_defval);
{
RLCMAC__CSN1__Types::RlcmacUlCtrlMsg_template& tmp_88 = tmp_87.payload();
tmp_88.msg__type() = RLCMAC__CSN1__Types::RlcmacUlCtrlMsgType::PACKET__CONTROL__ACK;
{
RLCMAC__CSN1__Types::PacketCtrlAck_template& tmp_89 = tmp_88.u().ctrl__ack();
tmp_89.tlli() = tlli;
tmp_89.ctrl__ack() = ack;
}
}
}
return ret_val;
}

RLCMAC__Types::RlcmacUlBlock_template ts__RLCMAC__UL__DUMMY__CTRL(const OCTETSTRING_template& tlli)
{
TTCN_Location current_location("RLCMAC_Templates.ttcn", 820, TTCN_Location::LOCATION_TEMPLATE, "ts_RLCMAC_UL_DUMMY_CTRL");
RLCMAC__Types::RlcmacUlBlock_template ret_val;
{
RLCMAC__Types::RlcmacUlCtrlBlock_template& tmp_90 = ret_val.ctrl();
tmp_90.mac__hdr() = t__RLCMAC__UlMacCtrlH(RLCMAC__Types::MacPayloadType_template(RLCMAC__Types::MacPayloadType::MAC__PT__RLCMAC__NO__OPT), t__RLCMAC__UlMacCtrlH_retry_defval);
{
RLCMAC__CSN1__Types::RlcmacUlCtrlMsg_template& tmp_91 = tmp_90.payload();
tmp_91.msg__type() = RLCMAC__CSN1__Types::RlcmacUlCtrlMsgType::PACKET__UL__DUMMY__CTRL;
tmp_91.u().ul__dummy().tlli() = tlli;
}
}
return ret_val;
}

RLCMAC__Types::LlcBlockHdr_template t__RLCMAC__LLCBLOCK__HDR(const INTEGER& length__ind, const BOOLEAN& more, const BOOLEAN& e)
{
TTCN_Location current_location("RLCMAC_Templates.ttcn", 835, TTCN_Location::LOCATION_TEMPLATE, "t_RLCMAC_LLCBLOCK_HDR");
RLCMAC__Types::LlcBlockHdr_template ret_val;
ret_val.length__ind() = length__ind;
ret_val.more() = more;
ret_val.e() = e;
return ret_val;
}

RLCMAC__Types::EgprsLlcBlockHdr_template t__RLCMAC__LLCBLOCK__EGPRS__HDR(const INTEGER& length__ind, const BOOLEAN& e)
{
TTCN_Location current_location("RLCMAC_Templates.ttcn", 841, TTCN_Location::LOCATION_TEMPLATE, "t_RLCMAC_LLCBLOCK_EGPRS_HDR");
RLCMAC__Types::EgprsLlcBlockHdr_template ret_val;
ret_val.length__ind() = length__ind;
ret_val.e() = e;
return ret_val;
}

RLCMAC__Types::LlcBlock_template t__RLCMAC__LLCBLOCK(const OCTETSTRING& data, const RLCMAC__Types::LlcBlockHdr_template& llc__hdr)
{
TTCN_Location current_location("RLCMAC_Templates.ttcn", 847, TTCN_Location::LOCATION_TEMPLATE, "t_RLCMAC_LLCBLOCK");
RLCMAC__Types::LlcBlock_template ret_val;
ret_val.hdr() = llc__hdr;
ret_val.payload() = data;
return ret_val;
}

RLCMAC__Types::EgprsLlcBlock_template t__RLCMAC__LLCBLOCK__EGPRS(const OCTETSTRING& data, const RLCMAC__Types::EgprsLlcBlockHdr_template& llc__hdr)
{
TTCN_Location current_location("RLCMAC_Templates.ttcn", 853, TTCN_Location::LOCATION_TEMPLATE, "t_RLCMAC_LLCBLOCK_EGPRS");
RLCMAC__Types::EgprsLlcBlock_template ret_val;
ret_val.hdr() = llc__hdr;
ret_val.payload() = data;
return ret_val;
}

RLCMAC__Types::PTCCHDownlinkMsg_template ts__PTCCHDownlinkMsg(const INTEGER_template& tai0__ta, const INTEGER_template& tai1__ta, const INTEGER_template& tai2__ta, const INTEGER_template& tai3__ta, const INTEGER_template& tai4__ta, const INTEGER_template& tai5__ta, const INTEGER_template& tai6__ta, const INTEGER_template& tai7__ta, const INTEGER_template& tai8__ta, const INTEGER_template& tai9__ta, const INTEGER_template& tai10__ta, const INTEGER_template& tai11__ta, const INTEGER_template& tai12__ta, const INTEGER_template& tai13__ta, const INTEGER_template& tai14__ta, const INTEGER_template& tai15__ta)
{
TTCN_Location current_location("RLCMAC_Templates.ttcn", 859, TTCN_Location::LOCATION_TEMPLATE, "ts_PTCCHDownlinkMsg");
RLCMAC__Types::PTCCHDownlinkMsg_template ret_val;
{
RLCMAC__Types::PTCCHTimingAdvanceIEs_template& tmp_92 = ret_val.ta__idx();
tmp_92.set_size(16);
{
RLCMAC__Types::PTCCHTimingAdvanceIE_template& tmp_93 = tmp_92[0];
tmp_93.spare() = bs_1;
tmp_93.ta__val() = tai0__ta;
}
{
RLCMAC__Types::PTCCHTimingAdvanceIE_template& tmp_94 = tmp_92[1];
tmp_94.spare() = bs_1;
tmp_94.ta__val() = tai1__ta;
}
{
RLCMAC__Types::PTCCHTimingAdvanceIE_template& tmp_95 = tmp_92[2];
tmp_95.spare() = bs_1;
tmp_95.ta__val() = tai2__ta;
}
{
RLCMAC__Types::PTCCHTimingAdvanceIE_template& tmp_96 = tmp_92[3];
tmp_96.spare() = bs_1;
tmp_96.ta__val() = tai3__ta;
}
{
RLCMAC__Types::PTCCHTimingAdvanceIE_template& tmp_97 = tmp_92[4];
tmp_97.spare() = bs_1;
tmp_97.ta__val() = tai4__ta;
}
{
RLCMAC__Types::PTCCHTimingAdvanceIE_template& tmp_98 = tmp_92[5];
tmp_98.spare() = bs_1;
tmp_98.ta__val() = tai5__ta;
}
{
RLCMAC__Types::PTCCHTimingAdvanceIE_template& tmp_99 = tmp_92[6];
tmp_99.spare() = bs_1;
tmp_99.ta__val() = tai6__ta;
}
{
RLCMAC__Types::PTCCHTimingAdvanceIE_template& tmp_100 = tmp_92[7];
tmp_100.spare() = bs_1;
tmp_100.ta__val() = tai7__ta;
}
{
RLCMAC__Types::PTCCHTimingAdvanceIE_template& tmp_101 = tmp_92[8];
tmp_101.spare() = bs_1;
tmp_101.ta__val() = tai8__ta;
}
{
RLCMAC__Types::PTCCHTimingAdvanceIE_template& tmp_102 = tmp_92[9];
tmp_102.spare() = bs_1;
tmp_102.ta__val() = tai9__ta;
}
{
RLCMAC__Types::PTCCHTimingAdvanceIE_template& tmp_103 = tmp_92[10];
tmp_103.spare() = bs_1;
tmp_103.ta__val() = tai10__ta;
}
{
RLCMAC__Types::PTCCHTimingAdvanceIE_template& tmp_104 = tmp_92[11];
tmp_104.spare() = bs_1;
tmp_104.ta__val() = tai11__ta;
}
{
RLCMAC__Types::PTCCHTimingAdvanceIE_template& tmp_105 = tmp_92[12];
tmp_105.spare() = bs_1;
tmp_105.ta__val() = tai12__ta;
}
{
RLCMAC__Types::PTCCHTimingAdvanceIE_template& tmp_106 = tmp_92[13];
tmp_106.spare() = bs_1;
tmp_106.ta__val() = tai13__ta;
}
{
RLCMAC__Types::PTCCHTimingAdvanceIE_template& tmp_107 = tmp_92[14];
tmp_107.spare() = bs_1;
tmp_107.ta__val() = tai14__ta;
}
{
RLCMAC__Types::PTCCHTimingAdvanceIE_template& tmp_108 = tmp_92[15];
tmp_108.spare() = bs_1;
tmp_108.ta__val() = tai15__ta;
}
}
ret_val.padding() = os_0;
return ret_val;
}

RLCMAC__Types::PTCCHDownlinkMsg_template tr__PTCCHDownlinkMsg(const INTEGER_template& tai0__ta, const INTEGER_template& tai1__ta, const INTEGER_template& tai2__ta, const INTEGER_template& tai3__ta, const INTEGER_template& tai4__ta, const INTEGER_template& tai5__ta, const INTEGER_template& tai6__ta, const INTEGER_template& tai7__ta, const INTEGER_template& tai8__ta, const INTEGER_template& tai9__ta, const INTEGER_template& tai10__ta, const INTEGER_template& tai11__ta, const INTEGER_template& tai12__ta, const INTEGER_template& tai13__ta, const INTEGER_template& tai14__ta, const INTEGER_template& tai15__ta)
{
TTCN_Location current_location("RLCMAC_Templates.ttcn", 896, TTCN_Location::LOCATION_TEMPLATE, "tr_PTCCHDownlinkMsg");
RLCMAC__Types::PTCCHDownlinkMsg_template ret_val;
{
RLCMAC__Types::PTCCHTimingAdvanceIEs_template& tmp_109 = ret_val.ta__idx();
tmp_109.set_size(16);
{
RLCMAC__Types::PTCCHTimingAdvanceIE_template& tmp_110 = tmp_109[0];
tmp_110.spare() = bs_1;
tmp_110.ta__val() = tai0__ta;
}
{
RLCMAC__Types::PTCCHTimingAdvanceIE_template& tmp_111 = tmp_109[1];
tmp_111.spare() = bs_1;
tmp_111.ta__val() = tai1__ta;
}
{
RLCMAC__Types::PTCCHTimingAdvanceIE_template& tmp_112 = tmp_109[2];
tmp_112.spare() = bs_1;
tmp_112.ta__val() = tai2__ta;
}
{
RLCMAC__Types::PTCCHTimingAdvanceIE_template& tmp_113 = tmp_109[3];
tmp_113.spare() = bs_1;
tmp_113.ta__val() = tai3__ta;
}
{
RLCMAC__Types::PTCCHTimingAdvanceIE_template& tmp_114 = tmp_109[4];
tmp_114.spare() = bs_1;
tmp_114.ta__val() = tai4__ta;
}
{
RLCMAC__Types::PTCCHTimingAdvanceIE_template& tmp_115 = tmp_109[5];
tmp_115.spare() = bs_1;
tmp_115.ta__val() = tai5__ta;
}
{
RLCMAC__Types::PTCCHTimingAdvanceIE_template& tmp_116 = tmp_109[6];
tmp_116.spare() = bs_1;
tmp_116.ta__val() = tai6__ta;
}
{
RLCMAC__Types::PTCCHTimingAdvanceIE_template& tmp_117 = tmp_109[7];
tmp_117.spare() = bs_1;
tmp_117.ta__val() = tai7__ta;
}
{
RLCMAC__Types::PTCCHTimingAdvanceIE_template& tmp_118 = tmp_109[8];
tmp_118.spare() = bs_1;
tmp_118.ta__val() = tai8__ta;
}
{
RLCMAC__Types::PTCCHTimingAdvanceIE_template& tmp_119 = tmp_109[9];
tmp_119.spare() = bs_1;
tmp_119.ta__val() = tai9__ta;
}
{
RLCMAC__Types::PTCCHTimingAdvanceIE_template& tmp_120 = tmp_109[10];
tmp_120.spare() = bs_1;
tmp_120.ta__val() = tai10__ta;
}
{
RLCMAC__Types::PTCCHTimingAdvanceIE_template& tmp_121 = tmp_109[11];
tmp_121.spare() = bs_1;
tmp_121.ta__val() = tai11__ta;
}
{
RLCMAC__Types::PTCCHTimingAdvanceIE_template& tmp_122 = tmp_109[12];
tmp_122.spare() = bs_1;
tmp_122.ta__val() = tai12__ta;
}
{
RLCMAC__Types::PTCCHTimingAdvanceIE_template& tmp_123 = tmp_109[13];
tmp_123.spare() = bs_1;
tmp_123.ta__val() = tai13__ta;
}
{
RLCMAC__Types::PTCCHTimingAdvanceIE_template& tmp_124 = tmp_109[14];
tmp_124.spare() = bs_1;
tmp_124.ta__val() = tai14__ta;
}
{
RLCMAC__Types::PTCCHTimingAdvanceIE_template& tmp_125 = tmp_109[15];
tmp_125.spare() = bs_1;
tmp_125.ta__val() = tai15__ta;
}
}
ret_val.padding() = os_0;
return ret_val;
}


/* Bodies of static functions */

void pre_init_module()
{
TTCN_Location current_location("RLCMAC_Templates.ttcn", 0, TTCN_Location::LOCATION_UNKNOWN, "RLCMAC_Templates");
RLCMAC__CSN1__Templates::module_object.pre_init_module();
RLCMAC__Types::module_object.pre_init_module();
module_object.add_function("f_rrbp_fn_delay", (genericfunc_t)&f__rrbp__fn__delay, NULL);
module_object.add_function("f_rrbp_ack_fn", (genericfunc_t)&f__rrbp__ack__fn, NULL);
module_object.add_function("f_rlcmac_cs_mcs_is_mcs", (genericfunc_t)&f__rlcmac__cs__mcs__is__mcs, NULL);
module_object.add_function("f_rlcmac_mcs2headertype", (genericfunc_t)&f__rlcmac__mcs2headertype, NULL);
module_object.add_function("f_rlcmac_cs_mcs2block_len", (genericfunc_t)&f__rlcmac__cs__mcs2block__len, NULL);
module_object.add_function("f_rlcmac_block_len2cs_mcs", (genericfunc_t)&f__rlcmac__block__len2cs__mcs, NULL);
module_object.add_function("f_rlcmac_cs_mcs2block_len_no_spare_bits", (genericfunc_t)&f__rlcmac__cs__mcs2block__len__no__spare__bits, NULL);
module_object.add_function("f_rlcmac_block_len_required_cs_mcs", (genericfunc_t)&f__rlcmac__block__len__required__cs__mcs, NULL);
module_object.add_function("f_rlcmac_block_ChCodingCommand2cs_mcs", (genericfunc_t)&f__rlcmac__block__ChCodingCommand2cs__mcs, NULL);
module_object.add_function("f_rlcmac_block_EgprsChCodingCommand2cs_mcs", (genericfunc_t)&f__rlcmac__block__EgprsChCodingCommand2cs__mcs, NULL);
module_object.add_function("f_rlcmac_block_int2cs_mcs", (genericfunc_t)&f__rlcmac__block__int2cs__mcs, NULL);
module_object.add_function("f_rlcmac_cps_htype1_to_mcs", (genericfunc_t)&f__rlcmac__cps__htype1__to__mcs, NULL);
module_object.add_function("f_rlcmac_cps_htype2_to_mcs", (genericfunc_t)&f__rlcmac__cps__htype2__to__mcs, NULL);
module_object.add_function("f_rlcmac_cps_htype3_to_mcs", (genericfunc_t)&f__rlcmac__cps__htype3__to__mcs, NULL);
module_object.add_function("f_rlcmac_cps_htype_to_mcs", (genericfunc_t)&f__rlcmac__cps__htype__to__mcs, NULL);
module_object.add_function("f_rlcmac_mcs_to_cps_htype1", (genericfunc_t)&f__rlcmac__mcs__to__cps__htype1, NULL);
module_object.add_function("f_rlcmac_mcs_to_cps_htype2", (genericfunc_t)&f__rlcmac__mcs__to__cps__htype2, NULL);
module_object.add_function("f_rlcmac_mcs_to_cps_htype3", (genericfunc_t)&f__rlcmac__mcs__to__cps__htype3, NULL);
module_object.add_function("f_rlcmac_mcs_to_cps", (genericfunc_t)&f__rlcmac__mcs__to__cps, NULL);
module_object.add_function("f_presence_bit_chreq_desc", (genericfunc_t)&f__presence__bit__chreq__desc, NULL);
}

void post_init_module()
{
TTCN_Location current_location("RLCMAC_Templates.ttcn", 0, TTCN_Location::LOCATION_UNKNOWN, "RLCMAC_Templates");
RLCMAC__CSN1__Templates::module_object.post_init_module();
RLCMAC__Types::module_object.post_init_module();
current_location.update_lineno(21);
/* RLCMAC_Templates.ttcn, line 21 */
template_cs__gprs__any.set_type(VALUE_LIST, 4);
template_cs__gprs__any.list_item(0) = RLCMAC__Types::CodingScheme::CS__1;
template_cs__gprs__any.list_item(1) = RLCMAC__Types::CodingScheme::CS__2;
template_cs__gprs__any.list_item(2) = RLCMAC__Types::CodingScheme::CS__3;
template_cs__gprs__any.list_item(3) = RLCMAC__Types::CodingScheme::CS__4;
current_location.update_lineno(22);
/* RLCMAC_Templates.ttcn, line 22 */
template_mcs__egprs__any.set_type(VALUE_LIST, 9);
template_mcs__egprs__any.list_item(0) = RLCMAC__Types::CodingScheme::MCS__1;
template_mcs__egprs__any.list_item(1) = RLCMAC__Types::CodingScheme::MCS__2;
template_mcs__egprs__any.list_item(2) = RLCMAC__Types::CodingScheme::MCS__3;
template_mcs__egprs__any.list_item(3) = RLCMAC__Types::CodingScheme::MCS__4;
template_mcs__egprs__any.list_item(4) = RLCMAC__Types::CodingScheme::MCS__5;
template_mcs__egprs__any.list_item(5) = RLCMAC__Types::CodingScheme::MCS__6;
template_mcs__egprs__any.list_item(6) = RLCMAC__Types::CodingScheme::MCS__7;
template_mcs__egprs__any.list_item(7) = RLCMAC__Types::CodingScheme::MCS__8;
template_mcs__egprs__any.list_item(8) = RLCMAC__Types::CodingScheme::MCS__9;
current_location.update_lineno(339);
/* RLCMAC_Templates.ttcn, line 339 */
const_f__rlcmac__mcs__to__cps_with__padding_defval = FALSE;
current_location.update_lineno(352);
/* RLCMAC_Templates.ttcn, line 352 */
const_ts__RLC__UL__CTRL__ACK_pt_defval = RLCMAC__Types::MacPayloadType::MAC__PT__RLCMAC__NO__OPT;
current_location.update_lineno(353);
/* RLCMAC_Templates.ttcn, line 353 */
const_ts__RLC__UL__CTRL__ACK_retry_defval = FALSE;
current_location.update_lineno(372);
/* RLCMAC_Templates.ttcn, line 372 */
const_ts__RLCMAC__DL__ACK__NACK_retry_defval = FALSE;
current_location.update_lineno(373);
/* RLCMAC_Templates.ttcn, line 373 */
template_ts__RLCMAC__DL__ACK__NACK_chreq__desc_defval = OMIT_VALUE;
current_location.update_lineno(398);
/* RLCMAC_Templates.ttcn, line 398 */
const_ts__RLCMAC__DL__ACK__NACK__EGPRS_retry_defval = FALSE;
current_location.update_lineno(399);
/* RLCMAC_Templates.ttcn, line 399 */
template_ts__RLCMAC__DL__ACK__NACK__EGPRS_chreq__desc_defval = OMIT_VALUE;
current_location.update_lineno(431);
/* RLCMAC_Templates.ttcn, line 431 */
template_t__RLCMAC__UL__DATA_blocks_defval = NULL_VALUE;
current_location.update_lineno(432);
/* RLCMAC_Templates.ttcn, line 432 */
template_t__RLCMAC__UL__DATA_stall_defval = FALSE;
current_location.update_lineno(456);
/* RLCMAC_Templates.ttcn, line 456 */
template_t__RLCMAC__UL__DATA__TLLI_blocks_defval = NULL_VALUE;
current_location.update_lineno(457);
/* RLCMAC_Templates.ttcn, line 457 */
template_t__RLCMAC__UL__DATA__TLLI_stall_defval = FALSE;
current_location.update_lineno(484);
/* RLCMAC_Templates.ttcn, line 484 */
template_t__RLCMAC__UL__EGPRS__DATA_bsn2__offset_defval = 0;
current_location.update_lineno(485);
/* RLCMAC_Templates.ttcn, line 485 */
template_t__RLCMAC__UL__EGPRS__DATA_blocks_defval = NULL_VALUE;
current_location.update_lineno(510);
/* RLCMAC_Templates.ttcn, line 510 */
template_ts__RLCMAC__DlMacH_pt_defval = RLCMAC__Types::MacPayloadType::MAC__PT__RLCMAC__NO__OPT;
current_location.update_lineno(511);
/* RLCMAC_Templates.ttcn, line 511 */
template_ts__RLCMAC__DlMacH_rrbp__valid_defval = FALSE;
current_location.update_lineno(512);
/* RLCMAC_Templates.ttcn, line 512 */
template_ts__RLCMAC__DlMacH_rrbp_defval = RLCMAC__Types::MacRrbp::RRBP__Nplus13__mod__2715648;
current_location.update_lineno(513);
/* RLCMAC_Templates.ttcn, line 513 */
template_ts__RLCMAC__DlMacH_usf_defval = 7;
current_location.update_lineno(530);
/* RLCMAC_Templates.ttcn, line 530 */
template_tr__RLCMAC__DL__CTRL_usf_defval = ANY_VALUE;
current_location.update_lineno(530);
/* RLCMAC_Templates.ttcn, line 530 */
template_tr__RLCMAC__DL__CTRL_dl__ctrl_defval = ANY_VALUE;
current_location.update_lineno(544);
/* RLCMAC_Templates.ttcn, line 544 */
template_ts__RLCMAC__DL__DUMMY__CTRL_mac__hdr_defval = ts__RLCMAC__DlMacH(ts__RLCMAC__DlMacH_pt_defval, ts__RLCMAC__DlMacH_rrbp__valid_defval, ts__RLCMAC__DlMacH_rrbp_defval, ts__RLCMAC__DlMacH_usf_defval);
current_location.update_lineno(545);
/* RLCMAC_Templates.ttcn, line 545 */
template_ts__RLCMAC__DL__DUMMY__CTRL_page__mode_defval = RLCMAC__CSN1__Types::PageMode::PAGE__MODE__NORMAL;
current_location.update_lineno(561);
/* RLCMAC_Templates.ttcn, line 561 */
template_tr__RLCMAC__DL__DUMMY__CTRL_usf_defval = ANY_VALUE;
current_location.update_lineno(561);
/* RLCMAC_Templates.ttcn, line 561 */
template_tr__RLCMAC__DL__DUMMY__CTRL_page__mode_defval = ANY_VALUE;
current_location.update_lineno(583);
/* RLCMAC_Templates.ttcn, line 583 */
template_tr__RLCMAC__DL__PACKET__ASS_usf_defval = ANY_VALUE;
current_location.update_lineno(626);
/* RLCMAC_Templates.ttcn, line 626 */
template_tr__RLCMAC__UL__PACKET__ASS_usf_defval = ANY_VALUE;
current_location.update_lineno(652);
/* RLCMAC_Templates.ttcn, line 652 */
template_tr__RLCMAC__UL__PACKET__ASS__GPRS_usf_defval = ANY_VALUE;
current_location.update_lineno(652);
/* RLCMAC_Templates.ttcn, line 652 */
template_tr__RLCMAC__UL__PACKET__ASS__GPRS_gprs_defval = ANY_VALUE;
current_location.update_lineno(667);
/* RLCMAC_Templates.ttcn, line 667 */
template_tr__RLCMAC__UL__PACKET__ASS__EGPRS_usf_defval = ANY_VALUE;
current_location.update_lineno(667);
/* RLCMAC_Templates.ttcn, line 667 */
template_tr__RLCMAC__UL__PACKET__ASS__EGPRS_egprs_defval = ANY_VALUE;
current_location.update_lineno(708);
/* RLCMAC_Templates.ttcn, line 708 */
template_tr__RLCMAC__UL__ACK__NACK__GPRS_ul__tfi_defval = ANY_VALUE;
current_location.update_lineno(708);
/* RLCMAC_Templates.ttcn, line 708 */
template_tr__RLCMAC__UL__ACK__NACK__GPRS_gprs_defval = RLCMAC__CSN1__Templates::tr__UlAckNackGprs(OCTETSTRING_template(ANY_OR_OMIT), RLCMAC__CSN1__Templates::tr__UlAckNackGprs_acknack__desc_defval, RLCMAC__CSN1__Templates::tr__UlAckNackGprs_rel99_defval);
current_location.update_lineno(723);
/* RLCMAC_Templates.ttcn, line 723 */
template_tr__RLCMAC__UL__ACK__NACK__EGPRS_ul__tfi_defval = ANY_VALUE;
current_location.update_lineno(723);
/* RLCMAC_Templates.ttcn, line 723 */
template_tr__RLCMAC__UL__ACK__NACK__EGPRS_egprs_defval = RLCMAC__CSN1__Templates::tr__UlAckNackEgprs(OCTETSTRING_template(ANY_OR_OMIT));
current_location.update_lineno(738);
/* RLCMAC_Templates.ttcn, line 738 */
template_tr__RLCMAC__PACKET__PAG__REQ_usf_defval = ANY_VALUE;
current_location.update_lineno(765);
/* RLCMAC_Templates.ttcn, line 765 */
template_tr__RLCMAC__DATA.set_type(VALUE_LIST, 2);
template_tr__RLCMAC__DATA__GPRS_rrbp__valid_defval = ANY_VALUE;
template_tr__RLCMAC__DATA__GPRS_rrbp_defval = ANY_VALUE;
template_tr__RLCMAC__DATA__GPRS_usf_defval = ANY_VALUE;
current_location.update_lineno(767);
/* RLCMAC_Templates.ttcn, line 767 */
template_tr__RLCMAC__DATA__GPRS_rrbp__valid_defval = ANY_VALUE;
current_location.update_lineno(768);
/* RLCMAC_Templates.ttcn, line 768 */
template_tr__RLCMAC__DATA__GPRS_rrbp_defval = ANY_VALUE;
current_location.update_lineno(769);
/* RLCMAC_Templates.ttcn, line 769 */
template_tr__RLCMAC__DATA__GPRS_usf_defval = ANY_VALUE;
template_tr__RLCMAC__DATA.list_item(0) = tr__RLCMAC__DATA__GPRS(tr__RLCMAC__DATA__GPRS_rrbp__valid_defval, tr__RLCMAC__DATA__GPRS_rrbp_defval, tr__RLCMAC__DATA__GPRS_usf_defval);
{
RLCMAC__Types::RlcmacDlEgprsDataBlock_template& tmp_83 = template_tr__RLCMAC__DATA__EGPRS.data__egprs();
tmp_83.mcs() = ANY_VALUE;
tmp_83.mac__hdr() = ANY_VALUE;
tmp_83.fbi() = ANY_VALUE;
tmp_83.e() = ANY_VALUE;
tmp_83.blocks() = ANY_VALUE;
}
template_tr__RLCMAC__DATA.list_item(1) = tr__RLCMAC__DATA__EGPRS;
current_location.update_lineno(785);
/* RLCMAC_Templates.ttcn, line 785 */
current_location.update_lineno(797);
/* RLCMAC_Templates.ttcn, line 797 */
template_t__RLCMAC__UlMacCtrlH_retry_defval = FALSE;
current_location.update_lineno(805);
/* RLCMAC_Templates.ttcn, line 805 */
const_ts__RLCMAC__CTRL__ACK_ack_defval = RLCMAC__CSN1__Types::CtrlAck::MS__RCVD__TWO__RLC__SAME__RTI__DIFF__RBSN;
current_location.update_lineno(847);
/* RLCMAC_Templates.ttcn, line 847 */
template_t__RLCMAC__LLCBLOCK_llc__hdr_defval = OMIT_VALUE;
current_location.update_lineno(853);
/* RLCMAC_Templates.ttcn, line 853 */
template_t__RLCMAC__LLCBLOCK__EGPRS_llc__hdr_defval = OMIT_VALUE;
current_location.update_lineno(860);
/* RLCMAC_Templates.ttcn, line 860 */
template_ts__PTCCHDownlinkMsg_tai0__ta_defval = 0;
current_location.update_lineno(861);
/* RLCMAC_Templates.ttcn, line 861 */
template_ts__PTCCHDownlinkMsg_tai1__ta_defval = 0;
current_location.update_lineno(862);
/* RLCMAC_Templates.ttcn, line 862 */
template_ts__PTCCHDownlinkMsg_tai2__ta_defval = 0;
current_location.update_lineno(863);
/* RLCMAC_Templates.ttcn, line 863 */
template_ts__PTCCHDownlinkMsg_tai3__ta_defval = 0;
current_location.update_lineno(864);
/* RLCMAC_Templates.ttcn, line 864 */
template_ts__PTCCHDownlinkMsg_tai4__ta_defval = 0;
current_location.update_lineno(865);
/* RLCMAC_Templates.ttcn, line 865 */
template_ts__PTCCHDownlinkMsg_tai5__ta_defval = 0;
current_location.update_lineno(866);
/* RLCMAC_Templates.ttcn, line 866 */
template_ts__PTCCHDownlinkMsg_tai6__ta_defval = 0;
current_location.update_lineno(867);
/* RLCMAC_Templates.ttcn, line 867 */
template_ts__PTCCHDownlinkMsg_tai7__ta_defval = 0;
current_location.update_lineno(868);
/* RLCMAC_Templates.ttcn, line 868 */
template_ts__PTCCHDownlinkMsg_tai8__ta_defval = 0;
current_location.update_lineno(869);
/* RLCMAC_Templates.ttcn, line 869 */
template_ts__PTCCHDownlinkMsg_tai9__ta_defval = 0;
current_location.update_lineno(870);
/* RLCMAC_Templates.ttcn, line 870 */
template_ts__PTCCHDownlinkMsg_tai10__ta_defval = 0;
current_location.update_lineno(871);
/* RLCMAC_Templates.ttcn, line 871 */
template_ts__PTCCHDownlinkMsg_tai11__ta_defval = 0;
current_location.update_lineno(872);
/* RLCMAC_Templates.ttcn, line 872 */
template_ts__PTCCHDownlinkMsg_tai12__ta_defval = 0;
current_location.update_lineno(873);
/* RLCMAC_Templates.ttcn, line 873 */
template_ts__PTCCHDownlinkMsg_tai13__ta_defval = 0;
current_location.update_lineno(874);
/* RLCMAC_Templates.ttcn, line 874 */
template_ts__PTCCHDownlinkMsg_tai14__ta_defval = 0;
current_location.update_lineno(875);
/* RLCMAC_Templates.ttcn, line 875 */
template_ts__PTCCHDownlinkMsg_tai15__ta_defval = 0;
current_location.update_lineno(897);
/* RLCMAC_Templates.ttcn, line 897 */
template_tr__PTCCHDownlinkMsg_tai0__ta_defval = ANY_VALUE;
current_location.update_lineno(898);
/* RLCMAC_Templates.ttcn, line 898 */
template_tr__PTCCHDownlinkMsg_tai1__ta_defval = ANY_VALUE;
current_location.update_lineno(899);
/* RLCMAC_Templates.ttcn, line 899 */
template_tr__PTCCHDownlinkMsg_tai2__ta_defval = ANY_VALUE;
current_location.update_lineno(900);
/* RLCMAC_Templates.ttcn, line 900 */
template_tr__PTCCHDownlinkMsg_tai3__ta_defval = ANY_VALUE;
current_location.update_lineno(901);
/* RLCMAC_Templates.ttcn, line 901 */
template_tr__PTCCHDownlinkMsg_tai4__ta_defval = ANY_VALUE;
current_location.update_lineno(902);
/* RLCMAC_Templates.ttcn, line 902 */
template_tr__PTCCHDownlinkMsg_tai5__ta_defval = ANY_VALUE;
current_location.update_lineno(903);
/* RLCMAC_Templates.ttcn, line 903 */
template_tr__PTCCHDownlinkMsg_tai6__ta_defval = ANY_VALUE;
current_location.update_lineno(904);
/* RLCMAC_Templates.ttcn, line 904 */
template_tr__PTCCHDownlinkMsg_tai7__ta_defval = ANY_VALUE;
current_location.update_lineno(905);
/* RLCMAC_Templates.ttcn, line 905 */
template_tr__PTCCHDownlinkMsg_tai8__ta_defval = ANY_VALUE;
current_location.update_lineno(906);
/* RLCMAC_Templates.ttcn, line 906 */
template_tr__PTCCHDownlinkMsg_tai9__ta_defval = ANY_VALUE;
current_location.update_lineno(907);
/* RLCMAC_Templates.ttcn, line 907 */
template_tr__PTCCHDownlinkMsg_tai10__ta_defval = ANY_VALUE;
current_location.update_lineno(908);
/* RLCMAC_Templates.ttcn, line 908 */
template_tr__PTCCHDownlinkMsg_tai11__ta_defval = ANY_VALUE;
current_location.update_lineno(909);
/* RLCMAC_Templates.ttcn, line 909 */
template_tr__PTCCHDownlinkMsg_tai12__ta_defval = ANY_VALUE;
current_location.update_lineno(910);
/* RLCMAC_Templates.ttcn, line 910 */
template_tr__PTCCHDownlinkMsg_tai13__ta_defval = ANY_VALUE;
current_location.update_lineno(911);
/* RLCMAC_Templates.ttcn, line 911 */
template_tr__PTCCHDownlinkMsg_tai14__ta_defval = ANY_VALUE;
current_location.update_lineno(912);
/* RLCMAC_Templates.ttcn, line 912 */
template_tr__PTCCHDownlinkMsg_tai15__ta_defval = ANY_VALUE;
}


} /* end of namespace */
