view cdg-hybrid/cdginc/m_grlc.h @ 235:ee04ca45053d

config system: add FCBM
author Mychaela Falconia <falcon@freecalypso.org>
date Sat, 01 May 2021 10:36:52 +0000
parents 35f7a1dc9f7d
children
line wrap: on
line source

/*
+--------------------------------------------------------------------------+
| PROJECT : PROTOCOL STACK                                                 |
| FILE    : m_grlc.h                                                       |
| SOURCE  : "msg\grlc.mdf"                                                 |
| LastModified : "2004-02-18"                                              |
| IdAndVersion : "8010.603.99.004"                                         |
| SrcFileTime  : "Wed Nov 28 10:18:54 2007"                                |
| Generated by CCDGEN_2.5.5A on Fri Oct 14 21:41:52 2016                   |
|           !!DO NOT MODIFY!!DO NOT MODIFY!!DO NOT MODIFY!!                |
+--------------------------------------------------------------------------+
*/

/* PRAGMAS
 * PREFIX                 : NONE
 * COMPATIBILITY_DEFINES  : NO (require PREFIX)
 * ALWAYS_ENUM_IN_VAL_FILE: NO
 * ENABLE_GROUP: NO
 * CAPITALIZE_TYPENAME: NO
 * CCDNAME: GRLC
 */


#ifndef M_GRLC_H
#define M_GRLC_H


#define CDG_ENTER__M_GRLC_H

#define CDG_ENTER__FILENAME _M_GRLC_H
#define CDG_ENTER__M_GRLC_H__FILE_TYPE CDGINC
#define CDG_ENTER__M_GRLC_H__LAST_MODIFIED _2004_02_18
#define CDG_ENTER__M_GRLC_H__ID_AND_VERSION _8010_603_99_004

#define CDG_ENTER__M_GRLC_H__SRC_FILE_TIME _Wed_Nov_28_10_18_54_2007

#include "CDG_ENTER.h"

#undef CDG_ENTER__M_GRLC_H

#undef CDG_ENTER__FILENAME


#include "m_grlc.val"

#include "m_rr_com.h"

/*
 * bitbuffer structure for the element tlli_value
 */
#ifndef __T_BUF_tlli_value__
#define __T_BUF_tlli_value__
typedef struct
{
  U16 l_tlli_value;
  U16 o_tlli_value;
  U8  b_tlli_value[8];
} BUF_tlli_value; /* size <12> */
#endif
/*
 * bitbuffer structure for the element cr_tlli
 */
#ifndef __T_BUF_cr_tlli__
#define __T_BUF_cr_tlli__
typedef struct
{
  U16 l_cr_tlli;
  U16 o_cr_tlli;
  U8  b_cr_tlli[8];
} BUF_cr_tlli; /* size <12> */
#endif
// VAR-FF: REL99 AND FF_EGPRS  
/*
 * bitbuffer structure for the element urbb_1
 */
// #ifndef __T_BUF_urbb_1__
// #define __T_BUF_urbb_1__
// // typedef struct
// {
//   U16 l_urbb_1;
//   U16 o_urbb_1;
//   U8  b_urbb_1[20];
// } BUF_urbb_1; /* size <24> */
// #endif
// VAR-FF: REL99 AND FF_EGPRS  
/*
 * bitbuffer structure for the element crbb
 */
// #ifndef __T_BUF_crbb__
// #define __T_BUF_crbb__
// // typedef struct
// {
//   U16 l_crbb;
//   U16 o_crbb;
//   U8  b_crbb[20];
// } BUF_crbb; /* size <24> */
// #endif
// VAR-FF: REL99 AND FF_EGPRS  
/*
 * bitbuffer structure for the element urbb_2
 */
// #ifndef __T_BUF_urbb_2__
// #define __T_BUF_urbb_2__
// // typedef struct
// {
//   U16 l_urbb_2;
//   U16 o_urbb_2;
//   U8  b_urbb_2[20];
// } BUF_urbb_2; /* size <24> */
// #endif
// VAR-FF: REL99 AND FF_EGPRS  
/*
 * bitbuffer structure for the element urbb_3
 */
// #ifndef __T_BUF_urbb_3__
// #define __T_BUF_urbb_3__
// // typedef struct
// {
//   U16 l_urbb_3;
//   U16 o_urbb_3;
//   U8  b_urbb_3[20];
// } BUF_urbb_3; /* size <24> */
// #endif
// VAR-FF: REL99 AND FF_EGPRS  
/*
 * bitbuffer structure for the element urbb
 */
// #ifndef __T_BUF_urbb__
// #define __T_BUF_urbb__
// // typedef struct
// {
//   U16 l_urbb;
//   U16 o_urbb;
//   U8  b_urbb[20];
// } BUF_urbb; /* size <24> */
// #endif
// VAR-FF: REL99 AND FF_EGPRS  
/*
 * bitbuffer structure for the element urbb_4
 */
// #ifndef __T_BUF_urbb_4__
// #define __T_BUF_urbb_4__
// // typedef struct
// {
//   U16 l_urbb_4;
//   U16 o_urbb_4;
//   U8  b_urbb_4[20];
// } BUF_urbb_4; /* size <24> */
// #endif
// VAR-FF: REL99 AND FF_EGPRS  
/*
 * bitbuffer structure for the element urbb_5
 */
// #ifndef __T_BUF_urbb_5__
// #define __T_BUF_urbb_5__
// // typedef struct
// {
//   U16 l_urbb_5;
//   U16 o_urbb_5;
//   U8  b_urbb_5[20];
// } BUF_urbb_5; /* size <24> */
// #endif
#ifndef __T_glob_tfi__
#define __T_glob_tfi__
/*
 * Global TFI
 * CCDGEN:WriteStruct_Count==776
 */
typedef struct
{
  U8                        flag;                     /*<  0:  1> Flag                                               */
  U8                        v_ul_tfi;                 /*<  1:  1> valid-flag                                         */
  U8                        ul_tfi;                   /*<  2:  1> Uplink TFI                                         */
  U8                        v_dl_tfi;                 /*<  3:  1> valid-flag                                         */
  U8                        dl_tfi;                   /*<  4:  1> Downlink TFI                                       */
  U8                        _align0;                  /*<  5:  1> alignment                                          */
  U8                        _align1;                  /*<  6:  1> alignment                                          */
  U8                        _align2;                  /*<  7:  1> alignment                                          */
} T_glob_tfi;
#endif

#ifndef __T_chan_req_des__
#define __T_chan_req_des__
/*
 * Channel Request Description
 * CCDGEN:WriteStruct_Count==777
 */
typedef struct
{
  U8                        peak_thr_class;           /*<  0:  1> PEAK_THROUGHPUT_CLASS                              */
  U8                        radio_prio;               /*<  1:  1> RADIO_PRIORITY                                     */
  U8                        rlc_mode;                 /*<  2:  1> RLC_MODE                                           */
  U8                        llc_pdu_type;             /*<  3:  1> LLC_PDU_TYPE                                       */
  U16                       rlc_octet_cnt;            /*<  4:  2> RLC_OCTET_COUNT                                    */
  U8                        _align0;                  /*<  6:  1> alignment                                          */
  U8                        _align1;                  /*<  7:  1> alignment                                          */
} T_chan_req_des;
#endif

#ifndef __T_block_struct__
#define __T_block_struct__
/*
 * Blocks Structure
 * CCDGEN:WriteStruct_Count==778
 */
typedef struct
{
  U8                        bl_o_bl_per;              /*<  0:  1> BLOCKS_OR_BLOCK_PERIODS                            */
  U8                        a_map_len;                /*<  1:  1> ALLOCATION_BITMAP_LENGTH                           */
  U8                        c_alloc_map;              /*<  2:  1> counter                                            */
  U8                        alloc_map[127];           /*<  3:127> ALLOCATION_BITMAP                                  */
  U8                        _align0;                  /*<130:  1> alignment                                          */
  U8                        _align1;                  /*<131:  1> alignment                                          */
} T_block_struct;
#endif

#ifndef __T_ext_bits__
#define __T_ext_bits__
/*
 * Extensions Bits IE
 * CCDGEN:WriteStruct_Count==779
 */
typedef struct
{
  U8                        ext_len;                  /*<  0:  1> Extension Length                                   */
  U8                        c_spare_ext;              /*<  1:  1> counter                                            */
  U8                        spare_ext[64];            /*<  2: 64> spare bit extensions IE                            */
  U8                        _align0;                  /*< 66:  1> alignment                                          */
  U8                        _align1;                  /*< 67:  1> alignment                                          */
} T_ext_bits;
#endif

#ifndef __T_ilev__
#define __T_ilev__
/*
 * I_LEVEL Structure
 * CCDGEN:WriteStruct_Count==780
 */
typedef struct
{
  U8                        v_ilev0;                  /*<  0:  1> valid-flag                                         */
  U8                        ilev0;                    /*<  1:  1> I_LEVEL_TNO                                        */
  U8                        v_ilev1;                  /*<  2:  1> valid-flag                                         */
  U8                        ilev1;                    /*<  3:  1> I_LEVEL_TN1                                        */
  U8                        v_ilev2;                  /*<  4:  1> valid-flag                                         */
  U8                        ilev2;                    /*<  5:  1> I_LEVEL_TN2                                        */
  U8                        v_ilev3;                  /*<  6:  1> valid-flag                                         */
  U8                        ilev3;                    /*<  7:  1> I_LEVEL_TN3                                        */
  U8                        v_ilev4;                  /*<  8:  1> valid-flag                                         */
  U8                        ilev4;                    /*<  9:  1> I_LEVEL_TN4                                        */
  U8                        v_ilev5;                  /*< 10:  1> valid-flag                                         */
  U8                        ilev5;                    /*< 11:  1> I_LEVEL_TN5                                        */
  U8                        v_ilev6;                  /*< 12:  1> valid-flag                                         */
  U8                        ilev6;                    /*< 13:  1> I_LEVEL_TN6                                        */
  U8                        v_ilev7;                  /*< 14:  1> valid-flag                                         */
  U8                        ilev7;                    /*< 15:  1> I_LEVEL_TN7                                        */
} T_ilev;
#endif

#ifndef __T_chan_qual_rep__
#define __T_chan_qual_rep__
/*
 * Channel Quality Report
 * CCDGEN:WriteStruct_Count==781
 */
typedef struct
{
  U8                        c_value;                  /*<  0:  1> C_VALUE                                            */
  U8                        rxqual;                   /*<  1:  1> RXQUAL                                             */
  U8                        signvar;                  /*<  2:  1> SIGN_VAR                                           */
  U8                        _align0;                  /*<  3:  1> alignment                                          */
  T_ilev                    ilev;                     /*<  4: 16> I_LEVEL Structure                                  */
} T_chan_qual_rep;
#endif

#ifndef __T_ack_nack_des__
#define __T_ack_nack_des__
/*
 * Ack/Nack Description
 * CCDGEN:WriteStruct_Count==782
 */
typedef struct
{
  U8                        f_ack_ind;                /*<  0:  1> FINAL_ACK_INDICATION                               */
  U8                        ssn;                      /*<  1:  1> STARTING_SEQUENCE_NUMBER                           */
  U8                        rbb[64];                  /*<  2: 64> RECEIVE_BLOCK_BITMAP                               */
  U8                        _align0;                  /*< 66:  1> alignment                                          */
  U8                        _align1;                  /*< 67:  1> alignment                                          */
} T_ack_nack_des;
#endif


// STRUCT-FF: REL99 AND FF_EGPRS 
// #ifndef __T_cbmp_info__
// #define __T_cbmp_info__
// 
//  COMPRESSED_BMP_INFO
// CCDGEN:WriteStruct_Count==783
// 
// typedef struct
// {
//   U8                        comp_bmp_len;             /*<  0:  0> COMPRESSED_BITMAP_LENGTH                           */
//   U8                        cbmp_color_code;          /*<  0:  0> COMPRESSED_BITMAP_STARTING_COLOR_CODE              */
//   BUF_crbb                  crbb;                     /*<  0:  0> COMPRESSED_RECEIVED_BLOCK_BITMAP                   */
// } T_cbmp_info;
// #endif
// 

// STRUCT-FF: REL99 AND FF_EGPRS 
// #ifndef __T_egprs_ack_nack_desc__
// #define __T_egprs_ack_nack_desc__
// 
//  EGPRS Ack Nack description
// CCDGEN:WriteStruct_Count==784
// 
// typedef struct
// {
//   U8                        f_ack_ind;                /*<  0:  1> FINAL_ACK_INDICATION                               */
//   U8                        bow;                      /*<  0:  0> BEGINNING_OF_WINDOW                                */
//   U8                        eow;                      /*<  0:  0> END_OF_WINDOW                                      */
//   U8                        _align0;                  /*<  1:  1> alignment                                          */
//   U16                       essn;                     /*<  0:  0> EGPRS_STARTING_SEQUENCE_NUMBER                     */
//   U8                        v_cbmp_info;              /*<  0:  0> valid-flag                                         */
// //   T_cbmp_info               cbmp_info;                /*<  0:  0> COMPRESSED_BMP_INFO                                */
//   U8                        _align1;                  /*<  2:  1> alignment                                          */
//   U8                        v_urbb;                   /*<  3:  1> valid-flag                                         */
//   BUF_urbb                  urbb;                     /*<  0:  0> UNCOMPRESSED_RECEIVED_BLOCK_BITMAP for DL          */
//   U8                        v_urbb_4;                 /*<  3:  1> valid-flag                                         */
//   BUF_urbb_4                urbb_4;                   /*<  0:  0> UNCOMPRESSED_RECEIVED_BLOCK_BITMAP for DL          */
//   U8                        v_urbb_5;                 /*<  3:  1> valid-flag                                         */
//   BUF_urbb_5                urbb_5;                   /*<  0:  0> UNCOMPRESSED_RECEIVED_BLOCK_BITMAP for DL          */
//   U8                        _align2;                  /*<  3:  1> alignment                                          */
// } T_egprs_ack_nack_desc;
// #endif
// 

// STRUCT-FF: REL99 AND FF_EGPRS 
// #ifndef __T_egprs_ack_nack_info__
// #define __T_egprs_ack_nack_info__
// 
//  EGPRS Ack/Nack IE
// CCDGEN:WriteStruct_Count==785
// 
// typedef struct
// {
//   U8                        flag;                     /*<  0:  1> Flag                                               */
//   U8                        v_len;                    /*<  1:  1> valid-flag                                         */
//   U8                        len;                      /*<  0:  0> EGPRS Ack Nack value part Length                   */
//   T_egprs_ack_nack_desc     egprs_ack_nack_desc;      /*<  0:  0> EGPRS Ack Nack description                         */
//   U8                        _align0;                  /*<  1:  1> alignment                                          */
//   U8                        _align1;                  /*<  2:  1> alignment                                          */
//   U8                        _align2;                  /*<  3:  1> alignment                                          */
// } T_egprs_ack_nack_info;
// #endif
// 

// STRUCT-FF: REL99 AND FF_EGPRS 
// #ifndef __T_ul_egprs_ack_nack_info__
// #define __T_ul_egprs_ack_nack_info__
// 
//  Uplink EGPRS Ack/Nack IE
// CCDGEN:WriteStruct_Count==786
// 
// typedef struct
// {
//   U8                        flag;                     /*<  0:  1> Flag                                               */
//   U8                        v_len;                    /*<  1:  1> valid-flag                                         */
//   U8                        len;                      /*<  0:  0> EGPRS Ack Nack value part Length                   */
//   U8                        f_ack_ind;                /*<  1:  1> FINAL_ACK_INDICATION                               */
//   U8                        bow;                      /*<  0:  0> BEGINNING_OF_WINDOW                                */
//   U8                        eow;                      /*<  0:  0> END_OF_WINDOW                                      */
//   U16                       essn;                     /*<  0:  0> EGPRS_STARTING_SEQUENCE_NUMBER                     */
//   U8                        flag2;                    /*<  2:  1> Flag2                                              */
//   U8                        v_cbmp_info;              /*<  0:  0> valid-flag                                         */
// //   T_cbmp_info               cbmp_info;                /*<  0:  0> COMPRESSED_BMP_INFO                                */
//   U8                        v_urbb_1;                 /*<  3:  1> valid-flag                                         */
//   BUF_urbb_1                urbb_1;                   /*<  0:  0> UNCOMPRESSED_RECEIVED_BLOCK_BITMAP for UL          */
//   U8                        v_urbb_2;                 /*<  3:  1> valid-flag                                         */
//   BUF_urbb_2                urbb_2;                   /*<  0:  0> UNCOMPRESSED_RECEIVED_BLOCK_BITMAP                 */
//   U8                        v_urbb_3;                 /*<  3:  1> valid-flag                                         */
//   BUF_urbb_3                urbb_3;                   /*<  0:  0> UNCOMPRESSED_RECEIVED_BLOCK_BITMAP                 */
//   U8                        _align0;                  /*<  3:  1> alignment                                          */
// } T_ul_egprs_ack_nack_info;
// #endif
// 
#ifndef __T_abs__
#define __T_abs__
/*
 * TBF Starting Time Absolute
 * CCDGEN:WriteStruct_Count==787
 */
typedef struct
{
  U8                        t1;                       /*<  0:  1> T1'                                                */
  U8                        t3;                       /*<  1:  1> T3                                                 */
  U8                        t2;                       /*<  2:  1> T2                                                 */
  U8                        _align0;                  /*<  3:  1> alignment                                          */
} T_abs;
#endif

#ifndef __T_tbf_s_time__
#define __T_tbf_s_time__
/*
 * TBF Starting Time
 * CCDGEN:WriteStruct_Count==788
 */
typedef struct
{
  U8                        flag;                     /*<  0:  1> Flag                                               */
  U8                        v_rel;                    /*<  1:  1> valid-flag                                         */
  U16                       rel;                      /*<  2:  2> TBF Starting Time Relative                         */
  U8                        _align0;                  /*<  4:  1> alignment                                          */
  U8                        _align1;                  /*<  5:  1> alignment                                          */
  U8                        _align2;                  /*<  6:  1> alignment                                          */
  U8                        v_abs;                    /*<  7:  1> valid-flag                                         */
  T_abs                     abs;                      /*<  8:  4> TBF Starting Time Absolute                         */
} T_tbf_s_time;
#endif

#ifndef __T_fa_s2__
#define __T_fa_s2__
/*
 * FA Sub2
 * CCDGEN:WriteStruct_Count==789
 */
typedef struct
{
  T_tbf_s_time              tbf_s_time;               /*<  0: 12> TBF Starting Time                                  */
  U8                        v_ts_alloc;               /*< 12:  1> valid-flag                                         */
  U8                        ts_alloc;                 /*< 13:  1> TIMESLOT_ALLOCATION                                */
  U8                        flag;                     /*< 14:  1> Flag                                               */
  U8                        v_block_struct;           /*< 15:  1> valid-flag                                         */
  T_block_struct            block_struct;             /*< 16:132> Blocks Structure                                   */
  U8                        v_alloc_map;              /*<148:  1> valid-flag                                         */
  U8                        c_alloc_map;              /*<149:  1> counter                                            */
  U8                        alloc_map[127];           /*<150:127> ALLOCATION_BITMAP                                  */
  U8                        _align0;                  /*<277:  1> alignment                                          */
  U8                        _align1;                  /*<278:  1> alignment                                          */
  U8                        _align2;                  /*<279:  1> alignment                                          */
} T_fa_s2;
#endif

#ifndef __T_f_alloc_ack__
#define __T_f_alloc_ack__
/*
 * Fixed Allocation Uplink Ack/Nack
 * CCDGEN:WriteStruct_Count==790
 */
typedef struct
{
  U8                        final_alloc;              /*<  0:  1> FINAL_ALLOCATION                                   */
  U8                        flag;                     /*<  1:  1> Flag                                               */
  U8                        v_ts_overr;               /*<  2:  1> valid-flag                                         */
  U8                        ts_overr;                 /*<  3:  1> TS_OVERRIDE                                        */
  U8                        _align0;                  /*<  4:  1> alignment                                          */
  U8                        _align1;                  /*<  5:  1> alignment                                          */
  U8                        _align2;                  /*<  6:  1> alignment                                          */
  U8                        v_fa_s2;                  /*<  7:  1> valid-flag                                         */
  T_fa_s2                   fa_s2;                    /*<  8:280> FA Sub2                                            */
} T_f_alloc_ack;
#endif

#ifndef __T_gamma_tn__
#define __T_gamma_tn__
/*
 * Gamma Array
 * CCDGEN:WriteStruct_Count==791
 */
typedef struct
{
  U8                        v_gamma;                  /*<  0:  1> valid-flag                                         */
  U8                        gamma;                    /*<  1:  1> GAMMA_TN                                           */
  U8                        _align0;                  /*<  2:  1> alignment                                          */
  U8                        _align1;                  /*<  3:  1> alignment                                          */
} T_gamma_tn;
#endif

#ifndef __T_pwr_par__
#define __T_pwr_par__
/*
 * Power Control Parameters
 * CCDGEN:WriteStruct_Count==792
 */
typedef struct
{
  U8                        alpha;                    /*<  0:  1> Alpha                                              */
  U8                        _align0;                  /*<  1:  1> alignment                                          */
  U8                        _align1;                  /*<  2:  1> alignment                                          */
  U8                        _align2;                  /*<  3:  1> alignment                                          */
  T_gamma_tn                gamma_tn[8];              /*<  4: 32> Gamma Array                                        */
} T_pwr_par;
#endif


// STRUCT-FF: REL99 AND FF_EGPRS 
// #ifndef __T_gmsk_8psk__
// #define __T_gmsk_8psk__
// 
//  GMSK_8PSK
// CCDGEN:WriteStruct_Count==793
// 
// typedef struct
// {
//   U8                        flag;                     /*<  0:  1> Flag                                               */
//   U8                        v_gmsk_mean_bep_tn;       /*<  1:  1> valid-flag                                         */
//   U8                        gmsk_mean_bep_tn;         /*<  0:  0> GMSK MEAN BEP TN                                   */
//   U8                        v_psk8_mean_bep_tn;       /*<  1:  1> valid-flag                                         */
//   U8                        psk8_mean_bep_tn;         /*<  0:  0> PSK8 MEAN BEP TN                                   */
//   U8                        _align0;                  /*<  1:  1> alignment                                          */
//   U8                        _align1;                  /*<  2:  1> alignment                                          */
//   U8                        _align2;                  /*<  3:  1> alignment                                          */
// } T_gmsk_8psk;
// #endif
// 

// STRUCT-FF: REL99 AND FF_EGPRS 
// #ifndef __T_gmsk_str__
// #define __T_gmsk_str__
// 
//  GMSK struct
// CCDGEN:WriteStruct_Count==794
// 
// typedef struct
// {
//   U8                        m_bep;                    /*<  0:  0> MEAN_BEP                                           */
//   U8                        cv_bep;                   /*<  0:  0> CV_BEP                                             */
// } T_gmsk_str;
// #endif
// 

// STRUCT-FF: REL99 AND FF_EGPRS 
// #ifndef __T_psk8_str__
// #define __T_psk8_str__
// 
//  PSK8 Struct
// CCDGEN:WriteStruct_Count==795
// 
// typedef struct
// {
//   U8                        m_bep;                    /*<  0:  0> MEAN_BEP                                           */
//   U8                        cv_bep;                   /*<  0:  0> CV_BEP                                             */
// } T_psk8_str;
// #endif
// 

// STRUCT-FF: REL99 AND FF_EGPRS 
// #ifndef __T_egprs_bep_lnk_qual_meas__
// #define __T_egprs_bep_lnk_qual_meas__
// 
//  EGPRS BEP Link Quality Measurements
// CCDGEN:WriteStruct_Count==796
// 
// typedef struct
// {
//   U8                        v_gmsk_str;               /*<  0:  0> valid-flag                                         */
// //   T_gmsk_str                gmsk_str;                 /*<  0:  0> GMSK struct                                        */
//   U8                        v_psk8_str;               /*<  0:  0> valid-flag                                         */
// //   T_psk8_str                psk8_str;                 /*<  0:  0> PSK8 Struct                                        */
// } T_egprs_bep_lnk_qual_meas;
// #endif
// 

// STRUCT-FF: REL99 AND FF_EGPRS 
// #ifndef __T_bep_tn__
// #define __T_bep_tn__
// 
//  BEP per Time Slot
// CCDGEN:WriteStruct_Count==797
// 
// typedef struct
// {
//   U8                        v_gmsk_8psk;              /*<  0:  0> valid-flag                                         */
// //   T_gmsk_8psk               gmsk_8psk;                /*<  0:  0> GMSK_8PSK                                          */
// } T_bep_tn;
// #endif
// 

// STRUCT-FF: REL99 AND FF_EGPRS 
// #ifndef __T_bep_meas__
// #define __T_bep_meas__
// 
//  BEP measurements
// CCDGEN:WriteStruct_Count==798
// 
// typedef struct
// {
//   T_bep_tn                  bep_tn[MAX_NUM_BEP_TN];   /*<  0:  0> BEP per Time Slot                                  */
// } T_bep_meas;
// #endif
// 

// STRUCT-FF: REL99 AND FF_EGPRS 
// #ifndef __T_egprs_timesl_qual_meas__
// #define __T_egprs_timesl_qual_meas__
// 
//  EGPRS Timeslot Link Quality Measurement
// CCDGEN:WriteStruct_Count==799
// 
// typedef struct
// {
//   U8                        v_bep_meas;               /*<  0:  0> valid-flag                                         */
// //   T_bep_meas                bep_meas;                 /*<  0:  0> BEP measurements                                   */
//   U8                        _align0;                  /*<  0:  1> alignment                                          */
//   U8                        _align1;                  /*<  1:  1> alignment                                          */
//   U8                        _align2;                  /*<  2:  1> alignment                                          */
//   U8                        v_ilev;                   /*<  3:  1> valid-flag                                         */
// //   T_ilev                    ilev;                     /*<  4: 16> I_LEVEL Structure                                  */
// } T_egprs_timesl_qual_meas;
// #endif
// 

// STRUCT-FF: REL99 AND FF_EGPRS 
// #ifndef __T_egprs_chan_qual_rep__
// #define __T_egprs_chan_qual_rep__
// 
//  EGPRS Channel Quality Report
// CCDGEN:WriteStruct_Count==800
// 
// typedef struct
// {
//   T_egprs_bep_lnk_qual_meas egprs_bep_lnk_qual_meas;  /*<  0:  0> EGPRS BEP Link Quality Measurements                */
//   U8                        c_value;                  /*<  0:  1> C_VALUE                                            */
//   T_egprs_timesl_qual_meas  egprs_timesl_qual_meas;   /*<  0:  0> EGPRS Timeslot Link Quality Measurement            */
//   U8                        _align0;                  /*<  1:  1> alignment                                          */
//   U8                        _align1;                  /*<  2:  1> alignment                                          */
//   U8                        _align2;                  /*<  3:  1> alignment                                          */
// } T_egprs_chan_qual_rep;
// #endif
// 

// STRUCT-FF: REL99 AND FF_EGPRS 
// #ifndef __T_egprs_ul_ack_nack_trnc_grp__
// #define __T_egprs_ul_ack_nack_trnc_grp__
// 
//  EGPRS Ack/Nack desc and Fixed Alloc trunc group
// CCDGEN:WriteStruct_Count==801
// 
// typedef struct
// {
//   T_ul_egprs_ack_nack_info  ul_egprs_ack_nack_info;   /*<  0:  0> Uplink EGPRS Ack/Nack IE                           */
//   U8                        _align0;                  /*<  0:  1> alignment                                          */
//   U8                        _align1;                  /*<  1:  1> alignment                                          */
//   U8                        _align2;                  /*<  2:  1> alignment                                          */
//   U8                        v_f_alloc_ack;            /*<  3:  1> valid-flag                                         */
// //   T_f_alloc_ack             f_alloc_ack;              /*<  4:288> Fixed Allocation Uplink Ack/Nack                   */
// } T_egprs_ul_ack_nack_trnc_grp;
// #endif
// 

// STRUCT-FF: REL99 
// #ifndef __T_release_99_str_d_ul_ack__
// #define __T_release_99_str_d_ul_ack__
// 
//  R99 structure
// CCDGEN:WriteStruct_Count==802
// 
// typedef struct
// {
//   U8                        v_p_ext_ta;               /*<  0:  1> valid-flag                                         */
//   U8                        p_ext_ta;                 /*<  0:  0> Packet_Extend_Timing_Advance                       */
//   U8                        tbf_est;                  /*<  0:  0> TBF_EST                                            */
// } T_release_99_str_d_ul_ack;
// #endif
// 
#ifndef __T_ta_index_tn__
#define __T_ta_index_tn__
/*
 * TA index and timeslot structure
 * CCDGEN:WriteStruct_Count==803
 */
typedef struct
{
  U8                        ta_index;                 /*<  0:  1> TA_INDEX                                           */
  U8                        ta_tn;                    /*<  1:  1> TIMING_ADVANCE_TIMESLOT_NUMBER                     */
  U8                        _align0;                  /*<  2:  1> alignment                                          */
  U8                        _align1;                  /*<  3:  1> alignment                                          */
} T_ta_index_tn;
#endif

#ifndef __T_pta__
#define __T_pta__
/*
 * Packet Timing Advance
 * CCDGEN:WriteStruct_Count==804
 */
typedef struct
{
  U8                        v_ta_value;               /*<  0:  1> valid-flag                                         */
  U8                        ta_value;                 /*<  1:  1> TIMING_ADVANCE_VALUE                               */
  U8                        _align0;                  /*<  2:  1> alignment                                          */
  U8                        v_ta_index_tn;            /*<  3:  1> valid-flag                                         */
  T_ta_index_tn             ta_index_tn;              /*<  4:  4> TA index and timeslot structure                    */
} T_pta;
#endif

#ifndef __T_gprs_ul_ack_nack_info__
#define __T_gprs_ul_ack_nack_info__
/*
 * GPRS Uplink Ack Nack structure
 * CCDGEN:WriteStruct_Count==805
 */
typedef struct
{
  U8                        chan_coding_cmd;          /*<  0:  1> CHANNEL_CODING_COMMAND                             */
  U8                        _align0;                  /*<  1:  1> alignment                                          */
  U8                        _align1;                  /*<  2:  1> alignment                                          */
  U8                        _align2;                  /*<  3:  1> alignment                                          */
  T_ack_nack_des            ack_nack_des;             /*<  4: 68> Ack/Nack Description                               */
  U8                        _align3;                  /*< 72:  1> alignment                                          */
  U8                        _align4;                  /*< 73:  1> alignment                                          */
  U8                        _align5;                  /*< 74:  1> alignment                                          */
  U8                        v_cr_tlli;                /*< 75:  1> valid-flag                                         */
  BUF_cr_tlli               cr_tlli;                  /*< 76: 12> CONTENTION_RESOLUTION_TLLI                         */
  U8                        _align6;                  /*< 88:  1> alignment                                          */
  U8                        _align7;                  /*< 89:  1> alignment                                          */
  U8                        _align8;                  /*< 90:  1> alignment                                          */
  U8                        v_pta;                    /*< 91:  1> valid-flag                                         */
  T_pta                     pta;                      /*< 92:  8> Packet Timing Advance                              */
  U8                        _align9;                  /*<100:  1> alignment                                          */
  U8                        _align10;                 /*<101:  1> alignment                                          */
  U8                        _align11;                 /*<102:  1> alignment                                          */
  U8                        v_pwr_par;                /*<103:  1> valid-flag                                         */
  T_pwr_par                 pwr_par;                  /*<104: 36> Power Control Parameters                           */
  U8                        _align12;                 /*<140:  1> alignment                                          */
  U8                        _align13;                 /*<141:  1> alignment                                          */
  U8                        _align14;                 /*<142:  1> alignment                                          */
  U8                        v_ext_bits;               /*<143:  1> valid-flag                                         */
  T_ext_bits                ext_bits;                 /*<144: 68> Extensions Bits IE                                 */
  U8                        _align15;                 /*<212:  1> alignment                                          */
  U8                        _align16;                 /*<213:  1> alignment                                          */
  U8                        _align17;                 /*<214:  1> alignment                                          */
  U8                        v_f_alloc_ack;            /*<215:  1> valid-flag                                         */
  T_f_alloc_ack             f_alloc_ack;              /*<216:288> Fixed Allocation Uplink Ack/Nack                   */
// ELEM-FF: REL99 
//   U8                        v_release_99_str_d_ul_ack; /*<  0:  0> valid-flag                                         */
// //   T_release_99_str_d_ul_ack release_99_str_d_ul_ack;  /*<  0:  0> R99 structure                                      */
} T_gprs_ul_ack_nack_info;
#endif


// STRUCT-FF: REL99 AND FF_EGPRS 
// #ifndef __T_egprs_ul_ack_nack__
// #define __T_egprs_ul_ack_nack__
// 
//  EGPRS Uplink Ack Nack description
// CCDGEN:WriteStruct_Count==806
// 
// typedef struct
// {
//   U8                        egprs_chan_coding_cmd;    /*<  0:  0> EGPRS_CHANNEL_CODING_COMMAND                       */
//   U8                        ul_rlc_resegment;         /*<  0:  0> UL rlc block resegment                             */
//   U8                        pre_emptive_tx;           /*<  0:  0> PRE_EMPTIVE_TRANSMISSION                           */
//   U8                        prr_retx_req;             /*<  0:  0> PRR RETRANSMISSION REQUEST                         */
//   U8                        arac_retx_req;            /*<  0:  0> arac retransmission request                        */
//   U8                        _align0;                  /*<  0:  1> alignment                                          */
//   U8                        _align1;                  /*<  1:  1> alignment                                          */
//   U8                        _align2;                  /*<  2:  1> alignment                                          */
//   U8                        v_cr_tlli;                /*<  3:  1> valid-flag                                         */
//   BUF_cr_tlli               cr_tlli;                  /*<  4: 12> CONTENTION_RESOLUTION_TLLI                         */
//   U8                        tbf_est;                  /*<  0:  0> TBF_EST                                            */
//   U8                        _align3;                  /*< 16:  1> alignment                                          */
//   U8                        _align4;                  /*< 17:  1> alignment                                          */
//   U8                        _align5;                  /*< 18:  1> alignment                                          */
//   U8                        v_pta;                    /*< 19:  1> valid-flag                                         */
// //   T_pta                     pta;                      /*< 20:  8> Packet Timing Advance                              */
//   U8                        v_p_ext_ta;               /*< 28:  1> valid-flag                                         */
//   U8                        p_ext_ta;                 /*<  0:  0> Packet_Extend_Timing_Advance                       */
//   U8                        _align6;                  /*< 28:  1> alignment                                          */
//   U8                        _align7;                  /*< 29:  1> alignment                                          */
//   U8                        _align8;                  /*< 30:  1> alignment                                          */
//   U8                        v_pwr_par;                /*< 31:  1> valid-flag                                         */
// //   T_pwr_par                 pwr_par;                  /*< 32: 36> Power Control Parameters                           */
//   U8                        _align9;                  /*< 68:  1> alignment                                          */
//   U8                        _align10;                 /*< 69:  1> alignment                                          */
//   U8                        _align11;                 /*< 70:  1> alignment                                          */
//   U8                        v_ext_bits;               /*< 71:  1> valid-flag                                         */
// //   T_ext_bits                ext_bits;                 /*< 72: 68> Extensions Bits IE                                 */
//   T_egprs_ul_ack_nack_trnc_grp egprs_ul_ack_nack_trnc_grp; /*<  0:  0> EGPRS Ack/Nack desc and Fixed Alloc trunc group    */
// } T_egprs_ul_ack_nack;
// #endif
// 

// STRUCT-FF: REL99 AND FF_EGPRS 
// #ifndef __T_egprs_ul_ack_nack_info__
// #define __T_egprs_ul_ack_nack_info__
// 
//  EGPRS Uplink Ack Nack IE
// CCDGEN:WriteStruct_Count==807
// 
// typedef struct
// {
//   U8                        Choice_flag;              /*<  0:  0> Choice_flag                                        */
//   U8                        v_egprs_ul_ack_nack;      /*<  0:  0> valid-flag                                         */
// //   T_egprs_ul_ack_nack       egprs_ul_ack_nack;        /*<  0:  0> EGPRS Uplink Ack Nack description                  */
// } T_egprs_ul_ack_nack_info;
// #endif
// 

// STRUCT-FF: REL99 
// #ifndef __T_release_99_str_grlc_prr__
// #define __T_release_99_str_grlc_prr__
// 
//  R99 structure
// CCDGEN:WriteStruct_Count==808
// 
// typedef struct
// {
// ELEM-FF: REL99 AND !FF_EGPRS 
//   U8                        flag;                     /*<  0:  0> Flag                                               */
// ELEM-FF: REL99 AND !FF_EGPRS 
//   U8                        flag2;                    /*<  0:  0> Flag2                                              */
// ELEM-FF: REL99 AND FF_EGPRS 
//   U8                        v_egprs_bep_lnk_qual_meas; /*<  0:  0> valid-flag                                         */
// //   T_egprs_bep_lnk_qual_meas egprs_bep_lnk_qual_meas;  /*<  0:  0> EGPRS BEP Link Quality Measurements                */
// ELEM-FF: REL99 AND FF_EGPRS 
//   U8                        v_egprs_timesl_qual_meas; /*<  0:  0> valid-flag                                         */
// //   T_egprs_timesl_qual_meas  egprs_timesl_qual_meas;   /*<  0:  0> EGPRS Timeslot Link Quality Measurement            */
//   U8                        v_pfi;                    /*<  0:  1> valid-flag                                         */
//   U8                        pfi;                      /*<  0:  0> PFI                                                */
//   U8                        add_ms_rac;               /*<  0:  0> ADD_MS_RAC_INFO_AVAIL                              */
//   U8                        retrans_of_prr;           /*<  0:  0> RETRANS_OF_PRR                                     */
// } T_release_99_str_grlc_prr;
// #endif
// 

// STRUCT-FF: REL99 
// #ifndef __T_release_99_str_u_grlc_dl_ack__
// #define __T_release_99_str_u_grlc_dl_ack__
// 
//  R99 structure
// CCDGEN:WriteStruct_Count==809
// 
// typedef struct
// {
//   U8                        v_pfi;                    /*<  0:  1> valid-flag                                         */
//   U8                        pfi;                      /*<  0:  0> PFI                                                */
// } T_release_99_str_u_grlc_dl_ack;
// #endif
// 

/*
 * End of substructure section, begin of message definition section
 */

#ifndef __T_U_GRLC_RESOURCE_REQ__
#define __T_U_GRLC_RESOURCE_REQ__
/*
 * 
 * CCDGEN:WriteStruct_Count==810
 */
typedef struct
{
  U8                        msg_type;                 /*<  0:  1> Message Type                                       */
  U8                        v_access_type;            /*<  1:  1> valid-flag                                         */
  U8                        access_type;              /*<  2:  1> Access Type                                        */
  U8                        flag;                     /*<  3:  1> Flag                                               */
  U8                        _align0;                  /*<  4:  1> alignment                                          */
  U8                        _align1;                  /*<  5:  1> alignment                                          */
  U8                        _align2;                  /*<  6:  1> alignment                                          */
  U8                        v_glob_tfi;               /*<  7:  1> valid-flag                                         */
  T_glob_tfi                glob_tfi;                 /*<  8:  8> Global TFI                                         */
  U8                        _align3;                  /*< 16:  1> alignment                                          */
  U8                        _align4;                  /*< 17:  1> alignment                                          */
  U8                        _align5;                  /*< 18:  1> alignment                                          */
  U8                        v_tlli_value;             /*< 19:  1> valid-flag                                         */
  BUF_tlli_value            tlli_value;               /*< 20: 12> TLLI                                               */
  U8                        _align6;                  /*< 32:  1> alignment                                          */
  U8                        _align7;                  /*< 33:  1> alignment                                          */
  U8                        _align8;                  /*< 34:  1> alignment                                          */
  U8                        v_ra_cap;                 /*< 35:  1> valid-flag                                         */
  T_ra_cap                  ra_cap;                   /*< 36: 84> MS RA capability value part (type defined in "m_rr_com.h") */
  T_chan_req_des            chan_req_des;             /*<120:  8> Channel Request Description                        */
  U8                        v_ma_ch_mark;             /*<128:  1> valid-flag                                         */
  U8                        ma_ch_mark;               /*<129:  1> MA_CHANGE_MARK                                     */
  U8                        c_value;                  /*<130:  1> C_VALUE                                            */
  U8                        v_signvar;                /*<131:  1> valid-flag                                         */
  U8                        signvar;                  /*<132:  1> SIGN_VAR                                           */
  U8                        _align9;                  /*<133:  1> alignment                                          */
  U8                        _align10;                 /*<134:  1> alignment                                          */
  U8                        _align11;                 /*<135:  1> alignment                                          */
  T_ilev                    ilev;                     /*<136: 16> I_LEVEL Structure                                  */
// ELEM-FF: REL99 
//   U8                        v_release_99_str_grlc_prr; /*<  0:  0> valid-flag                                         */
// //   T_release_99_str_grlc_prr release_99_str_grlc_prr;  /*<  0:  0> R99 structure                                      */
} T_U_GRLC_RESOURCE_REQ;
#endif

#ifndef __T_U_GRLC_DL_ACK__
#define __T_U_GRLC_DL_ACK__
/*
 * 
 * CCDGEN:WriteStruct_Count==811
 */
typedef struct
{
  U8                        msg_type;                 /*<  0:  1> Message Type                                       */
  U8                        dl_tfi;                   /*<  1:  1> Downlink TFI                                       */
  U8                        _align0;                  /*<  2:  1> alignment                                          */
  U8                        _align1;                  /*<  3:  1> alignment                                          */
  T_ack_nack_des            ack_nack_des;             /*<  4: 68> Ack/Nack Description                               */
  U8                        _align2;                  /*< 72:  1> alignment                                          */
  U8                        _align3;                  /*< 73:  1> alignment                                          */
  U8                        _align4;                  /*< 74:  1> alignment                                          */
  U8                        v_chan_req_des;           /*< 75:  1> valid-flag                                         */
  T_chan_req_des            chan_req_des;             /*< 76:  8> Channel Request Description                        */
  T_chan_qual_rep           chan_qual_rep;            /*< 84: 20> Channel Quality Report                             */
// ELEM-FF: REL99 
//   U8                        v_release_99_str_u_grlc_dl_ack; /*<  0:  0> valid-flag                                         */
// //   T_release_99_str_u_grlc_dl_ack release_99_str_u_grlc_dl_ack; /*<  0:  0> R99 structure                                      */
} T_U_GRLC_DL_ACK;
#endif


// MSG-FF: REL99 AND FF_EGPRS 
// #ifndef __T_U_GRLC_E_DL_ACK__
// #define __T_U_GRLC_E_DL_ACK__
// 
//  
// CCDGEN:WriteStruct_Count==812
// 
// typedef struct
// {
//   U8                        msg_type;                 /*<  0:  1> Message Type                                       */
//   U8                        dl_tfi;                   /*<  1:  1> Downlink TFI                                       */
//   U8                        is_out_of_mem;            /*<  0:  0> MS_OUT_OF_MEMORY                                   */
//   U8                        v_egprs_chan_qual_rep;    /*<  0:  0> valid-flag                                         */
// //   T_egprs_chan_qual_rep     egprs_chan_qual_rep;      /*<  0:  0> EGPRS Channel Quality Report                       */
//   U8                        _align0;                  /*<  2:  1> alignment                                          */
//   U8                        v_chan_req_des;           /*<  3:  1> valid-flag                                         */
// //   T_chan_req_des            chan_req_des;             /*<  4:  8> Channel Request Description                        */
//   U8                        v_pfi;                    /*< 12:  1> valid-flag                                         */
//   U8                        pfi;                      /*<  0:  0> PFI                                                */
//   U8                        _align1;                  /*< 12:  1> alignment                                          */
//   U8                        _align2;                  /*< 13:  1> alignment                                          */
//   U8                        _align3;                  /*< 14:  1> alignment                                          */
//   U8                        v_ext_bits;               /*< 15:  1> valid-flag                                         */
// //   T_ext_bits                ext_bits;                 /*< 16: 68> Extensions Bits IE                                 */
//   T_egprs_ack_nack_info     egprs_ack_nack_info;      /*<  0:  0> EGPRS Ack/Nack IE                                  */
// } T_U_GRLC_E_DL_ACK;
// #endif
// 
#ifndef __T_D_GRLC_UL_ACK__
#define __T_D_GRLC_UL_ACK__
/*
 * 
 * CCDGEN:WriteStruct_Count==813
 */
typedef struct
{
  U8                        msg_type;                 /*<  0:  1> Message Type                                       */
  U8                        page_mode;                /*<  1:  1> Page Mode                                          */
  U8                        ul_tfi;                   /*<  2:  1> Uplink TFI                                         */
  U8                        egprs_flag;               /*<  3:  1> Egprs escape                                       */
  U8                        _align0;                  /*<  4:  1> alignment                                          */
  U8                        _align1;                  /*<  5:  1> alignment                                          */
  U8                        _align2;                  /*<  6:  1> alignment                                          */
  U8                        v_gprs_ul_ack_nack_info;  /*<  7:  1> valid-flag                                         */
  T_gprs_ul_ack_nack_info   gprs_ul_ack_nack_info;    /*<  8:504> GPRS Uplink Ack Nack structure                     */
// ELEM-FF: REL99 AND FF_EGPRS 
//   U8                        v_egprs_ul_ack_nack_info; /*<  0:  0> valid-flag                                         */
// //   T_egprs_ul_ack_nack_info  egprs_ul_ack_nack_info;   /*<  0:  0> EGPRS Uplink Ack Nack IE                           */
} T_D_GRLC_UL_ACK;
#endif

#ifndef __T_U_GRLC_CTRL_ACK__
#define __T_U_GRLC_CTRL_ACK__
/*
 * 
 * CCDGEN:WriteStruct_Count==814
 */
typedef struct
{
  U8                        msg_type;                 /*<  0:  1> Message Type                                       */
  U8                        _align0;                  /*<  1:  1> alignment                                          */
  U8                        _align1;                  /*<  2:  1> alignment                                          */
  U8                        _align2;                  /*<  3:  1> alignment                                          */
  BUF_tlli_value            tlli_value;               /*<  4: 12> TLLI                                               */
  U8                        pctrl_ack;                /*< 16:  1> P_CONTROL_ACK                                      */
  U8                        _align3;                  /*< 17:  1> alignment                                          */
  U8                        _align4;                  /*< 18:  1> alignment                                          */
  U8                        _align5;                  /*< 19:  1> alignment                                          */
} T_U_GRLC_CTRL_ACK;
#endif


// MSG-FF: REL99 AND FF_EGPRS 
// #ifndef __T_U_GRLC_ADD_MS_RADIO_CAP__
// #define __T_U_GRLC_ADD_MS_RADIO_CAP__
// 
//  
// CCDGEN:WriteStruct_Count==815
// 
// typedef struct
// {
//   U8                        msg_type;                 /*<  0:  1> Message Type                                       */
//   U8                        flag;                     /*<  1:  1> Flag                                               */
//   U8                        _align0;                  /*<  2:  1> alignment                                          */
//   U8                        v_glob_tfi;               /*<  3:  1> valid-flag                                         */
// //   T_glob_tfi                glob_tfi;                 /*<  4:  8> Global TFI                                         */
//   U8                        _align1;                  /*< 12:  1> alignment                                          */
//   U8                        _align2;                  /*< 13:  1> alignment                                          */
//   U8                        _align3;                  /*< 14:  1> alignment                                          */
//   U8                        v_tlli_value;             /*< 15:  1> valid-flag                                         */
//   BUF_tlli_value            tlli_value;               /*< 16: 12> TLLI                                               */
//   T_ra_cap                  ra_cap;                   /*< 28: 84> MS RA capability value part (type defined in "m_rr_com.h") */
// } T_U_GRLC_ADD_MS_RADIO_CAP;
// #endif
// 
#ifndef __T_U_GRLC_UL_DUMMY__
#define __T_U_GRLC_UL_DUMMY__
/*
 * 
 * CCDGEN:WriteStruct_Count==816
 */
typedef struct
{
  U8                        msg_type;                 /*<  0:  1> Message Type                                       */
  U8                        _align0;                  /*<  1:  1> alignment                                          */
  U8                        _align1;                  /*<  2:  1> alignment                                          */
  U8                        _align2;                  /*<  3:  1> alignment                                          */
  BUF_tlli_value            tlli_value;               /*<  4: 12> TLLI                                               */
} T_U_GRLC_UL_DUMMY;
#endif


#include "CDG_LEAVE.h"


#endif