view cdg3/cdginc-conservative/m_rr_com.h @ 556:39a226a06196

documentation update for rebuilding the easy parts of GPF from source
author Mychaela Falconia <falcon@freecalypso.org>
date Mon, 19 Nov 2018 02:00:21 +0000
parents c15047b3d00d
children
line wrap: on
line source

/*
+--------------------------------------------------------------------------+
| PROJECT : PROTOCOL STACK                                                 |
| FILE    : m_rr_com.h                                                     |
| SOURCE  : "msg\rr_com.mdf"                                               |
| LastModified : "2004-01-16"                                              |
| IdAndVersion : "8010.606.02.008"                                         |
| SrcFileTime  : "Wed Nov 28 10:20:42 2007"                                |
| Generated by CCDGEN_2.5.5A on Thu Sep 25 09:52:54 2014                   |
|           !!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: RR_COM
 */


#ifndef M_RR_COM_H
#define M_RR_COM_H


#define CDG_ENTER__M_RR_COM_H

#define CDG_ENTER__FILENAME _M_RR_COM_H
#define CDG_ENTER__M_RR_COM_H__FILE_TYPE CDGINC
#define CDG_ENTER__M_RR_COM_H__LAST_MODIFIED _2004_01_16
#define CDG_ENTER__M_RR_COM_H__ID_AND_VERSION _8010_606_02_008

#define CDG_ENTER__M_RR_COM_H__SRC_FILE_TIME _Wed_Nov_28_10_20_42_2007

#include "CDG_ENTER.h"

#undef CDG_ENTER__M_RR_COM_H

#undef CDG_ENTER__FILENAME


#include "m_rr_com.val"

#ifndef __T_a5_bits__
#define __T_a5_bits__
/*
 * A5 bits
 * CCDGEN:WriteStruct_Count==1
 */
typedef struct
{
  U8                        a5_1;                     /*<  0:  1> A5/1; Encryption algorithm A5/1.  Note inverse logic for the A5/1 encryption algorithm between classmark 1 and 2 on the one hand  (available=0 or not=1) and radio access capability on the other hand (available=1 or not=0). */
  U8                        a5_2;                     /*<  1:  1> A5/2; Encryption algorithm A5/2 available (1) or not (0) */
  U8                        a5_3;                     /*<  2:  1> A5/3; Encryption algorithm A5/3 available (1) or not (0) */
  U8                        a5_4;                     /*<  3:  1> A5/4; Encryption algorithm A5/4 available (1) or not (0) */
  U8                        a5_5;                     /*<  4:  1> A5/5; Encryption algorithm A5/5 available (1) or not (0) */
  U8                        a5_6;                     /*<  5:  1> A5/6; Encryption algorithm A5/6 available (1) or not (0) */
  U8                        a5_7;                     /*<  6:  1> A5/7; Encryption algorithm A5/7 available (1) or not (0) */
  U8                        _align0;                  /*<  7:  1> alignment                                          */
} T_a5_bits;
#endif


// STRUCT-FF: REL99 
// #ifndef __T_acc_tech_req__
// #define __T_acc_tech_req__
// 
//  Access Technologies Request
// CCDGEN:WriteStruct_Count==2
// 
// typedef struct
// {
//   U8                        v_acc_tech_typ;           /*<  0:  1> valid-flag                                         */
//   U8                        c_acc_tech_typ;           /*<  1:  1> counter                                            */
//   U8                        acc_tech_typ[MAX_NUM_ACC_TYPE]; /*<  2: 16> Access Technology Type                             */
//   U8                        _align0;                  /*< 18:  1> alignment                                          */
//   U8                        _align1;                  /*< 19:  1> alignment                                          */
// } T_acc_tech_req;
// #endif
// 

// STRUCT-FF: REL99 
// #ifndef __T_add_acc_tech_elem__
// #define __T_add_acc_tech_elem__
// 
//  Additonal Access Technologies Element
// CCDGEN:WriteStruct_Count==3
// 
// typedef struct
// {
//   U8                        acc_tech_typ;             /*<  0:  1> Access Technology Type                             */
//   U8                        pow_class;                /*<  1:  1> RF Power Capability                                */
//   U8                        pow_8psk_cap;             /*<  2:  1> 8-PSK Power Capability                             */
//   U8                        _align0;                  /*<  3:  1> alignment                                          */
// } T_add_acc_tech_elem;
// #endif
// 

// STRUCT-FF: REL99 
// #ifndef __T_add_acc_tech__
// #define __T_add_acc_tech__
// 
//  Additonal Access Technologies
// CCDGEN:WriteStruct_Count==4
// 
// typedef struct
// {
//   U8                        v_add_acc_tech_elem;      /*<  0:  0> valid-flag                                         */
// //   U8                        c_add_acc_tech_elem;      /*<  0:  0> counter                                            */
// //   T_add_acc_tech_elem       add_acc_tech_elem[MAX_ADD_RA_CAP]; /*<  0:  0> Additonal Access Technologies Element              */
// } T_add_acc_tech;
// #endif
// 

// STRUCT-FF: REL99 
// #ifndef __T_bsic_struct__
// #define __T_bsic_struct__
// 
//  BSIC Structure
// CCDGEN:WriteStruct_Count==5
// 
// typedef struct
// {
// ELEM-FF: REL99 
//   U8                        freq_scroll;              /*<  0:  0> Frequency Scrolling                                */
//   U8                        bsic;                     /*<  0:  1> BSIC                                               */
//   U8                        _align0;                  /*<  1:  1> alignment                                          */
//   U8                        _align1;                  /*<  2:  1> alignment                                          */
//   U8                        _align2;                  /*<  3:  1> alignment                                          */
// } T_bsic_struct;
// #endif
// 

// STRUCT-FF: REL99 
// #ifndef __T_gprs_bsic__
// #define __T_gprs_bsic__
// 
//  GPRS BSIC Description
// CCDGEN:WriteStruct_Count==6
// 
// typedef struct
// {
//   U8                        v_ba_start_bsic;          /*<  0:  1> valid-flag                                         */
//   U8                        ba_start_bsic;            /*<  1:  1> BA Index Start BSIC                                */
//   U8                        bsic;                     /*<  2:  1> BSIC                                               */
// ELEM-FF: REL99 
//   U8                        rem_bsic;                 /*<  0:  0> Number Remaining BSIC                              */
//   U8                        c_bsic_struct;            /*<  0:  0> counter                                            */
// //   T_bsic_struct             bsic_struct[MAX_BSIC];    /*<  0:  0> BSIC Structure                                     */
//   U8                        _align0;                  /*<  3:  1> alignment                                          */
// } T_gprs_bsic;
// #endif
// 
#ifndef __T_mob_class_1__
#define __T_mob_class_1__
/*
 * Mobile Station Classmark 1
 * CCDGEN:WriteStruct_Count==7
 */
typedef struct
{
  U8                        rev_lev;                  /*<  0:  1> Revision Level                                     */
  U8                        es_ind;                   /*<  1:  1> Early Classmark Sending; 'controlled early classmark sending' option is implemented (1) or not (0) in the MS */
  U8                        a5_1;                     /*<  2:  1> A5/1; Encryption algorithm A5/1.  Note inverse logic for the A5/1 encryption algorithm between classmark 1 and 2 on the one hand  (available=0 or not=1) and radio access capability on the other hand (available=1 or not=0). */
  U8                        rf_pow_cap;               /*<  3:  1> RF power capability                                */
} T_mob_class_1;
#endif

#ifndef __T_mob_class_2__
#define __T_mob_class_2__
/*
 * Mobile Station Classmark 2
 * CCDGEN:WriteStruct_Count==8
 */
typedef struct
{
  U8                        rev_lev;                  /*<  0:  1> Revision Level                                     */
  U8                        es_ind;                   /*<  1:  1> Early Classmark Sending; 'controlled early classmark sending' option is implemented (1) or not (0) in the MS */
  U8                        a5_1;                     /*<  2:  1> A5/1; Encryption algorithm A5/1.  Note inverse logic for the A5/1 encryption algorithm between classmark 1 and 2 on the one hand  (available=0 or not=1) and radio access capability on the other hand (available=1 or not=0). */
  U8                        rf_pow_cap;               /*<  3:  1> RF power capability                                */
  U8                        ps;                       /*<  4:  1> Pseudo Synchronisation capability; Pseudo synchronisation capabilty is present (1) or not (0) */
  U8                        ss_screen;                /*<  5:  1> SS Screening Indicator                             */
  U8                        mt_pp_sms;                /*<  6:  1> Short Message capability; MS does supports (1) MT point to point SMS or not (0) */
  U8                        vbs;                      /*<  7:  1> Voice Broadcast Service; VBS capability and notification wanted (1) or not (0) */
  U8                        vgcs;                     /*<  8:  1> Voice Group Call Service; VGCS capability and notification wanted (1) or not (0) */
  U8                        egsm;                     /*<  9:  1> Frequency capability                               */
  U8                        class3;                   /*< 10:  1> Classmark 3; The MS supports options that are indicated in classmark 3 (1) or it does not support any classmark 3 options (0) */
  U8                        lcsva;                    /*< 11:  1> LCSVA capability; LCS value added location request notification supported (1) or not (0) */
  U8                        ucs2_treat;               /*< 12:  1> UCS2 treatment                                     */
  U8                        solsa;                    /*< 13:  1> SoLSA Supported; MS does supports SoLSA (1) or not (0) */
  U8                        cmsp;                     /*< 14:  1> CMSP Supported; MS does supports (1) CM service Prompt (network initiated MO CM connection request) or not (0) */
  U8                        a5_3;                     /*< 15:  1> A5/3; Encryption algorithm A5/3 available (1) or not (0) */
  U8                        a5_2;                     /*< 16:  1> A5/2; Encryption algorithm A5/2 available (1) or not (0) */
  U8                        _align0;                  /*< 17:  1> alignment                                          */
  U8                        _align1;                  /*< 18:  1> alignment                                          */
  U8                        _align2;                  /*< 19:  1> alignment                                          */
} T_mob_class_2;
#endif

#ifndef __T_dtm_ms__
#define __T_dtm_ms__
/*
 * DTM Multislot Structure
 * CCDGEN:WriteStruct_Count==9
 */
typedef struct
{
  U8                        dtm_g_ms_class;           /*<  0:  1> DTM GPRS Multi Slot Sub-Class                      */
  U8                        mac_support;              /*<  1:  1> MAC Mode support; MS does supports dynamice and fixed allocation (1) or only exclusive allocation (0) */
  U8                        v_dtm_e_ms_class;         /*<  2:  1> valid-flag                                         */
  U8                        dtm_e_ms_class;           /*<  3:  1> DTM EGPRS Multi Slot Sub-Class; only if the MS supports EGPRS DTM */
} T_dtm_ms;
#endif


// STRUCT-FF: TI_PS_FF_REL99_AND_ABOVE 
// #ifndef __T_dtm_high_ms__
// #define __T_dtm_high_ms__
// 
//  DTM High Multislot Structure
// CCDGEN:WriteStruct_Count==10
// 
// typedef struct
// {
//   U8                        dtm_g_high_ms_class;      /*<  0:  0> DTM GPRS High Multi Slot Sub-Class                 */
//   U8                        offset_required;          /*<  0:  0> Offset required                                    */
//   U8                        v_dtm_e_high_ms_class;    /*<  0:  1> valid-flag                                         */
//   U8                        dtm_e_high_ms_class;      /*<  1:  1> DTM EGPRS High Multi Slot Sub-Class; only if the MS supports EGPRS DTM */
//   U8                        _align0;                  /*<  2:  1> alignment                                          */
//   U8                        _align1;                  /*<  3:  1> alignment                                          */
// } T_dtm_high_ms;
// #endif
// 
#ifndef __T_egde_struct__
#define __T_egde_struct__
/*
 * EGDE Structure
 * CCDGEN:WriteStruct_Count==11
 */
typedef struct
{
  U8                        mod;                      /*<  0:  1> Modulation Capability; MS does supports 8-PSK modulation for uplink and downlink (1) or only for downlink (0) in addition to GSMK */
  U8                        v_egde_pow1;              /*<  1:  1> valid-flag                                         */
  U8                        egde_pow1;                /*<  2:  1> EGDE RF Power Capability 1                         */
  U8                        v_egde_pow2;              /*<  3:  1> valid-flag                                         */
  U8                        egde_pow2;                /*<  4:  1> EGDE RF Power Capability 2                         */
  U8                        _align0;                  /*<  5:  1> alignment                                          */
  U8                        _align1;                  /*<  6:  1> alignment                                          */
  U8                        _align2;                  /*<  7:  1> alignment                                          */
} T_egde_struct;
#endif


// STRUCT-FF: REL99 
// #ifndef __T_gprs_rep_prio__
// #define __T_gprs_rep_prio__
// 
//  GPRS REPORT PRIORITY Description
// CCDGEN:WriteStruct_Count==12
// 
// typedef struct
// {
// ELEM-FF: REL99 
//   U8                        num_cells;                /*<  0:  0> Number of Cells                                    */
// ELEM-FF: REL99 
//   U8                        c_rep_priority;           /*<  0:  0> counter                                            */
// //   U8                        rep_priority[MAX_NNC];    /*<  0:  0> Reporting Priority                                 */
// } T_gprs_rep_prio;
// #endif
// 
#ifndef __T_gsm400_struct__
#define __T_gsm400_struct__
/*
 * GSM 400 Bands Supported Structure
 * CCDGEN:WriteStruct_Count==13
 */
typedef struct
{
  U8                        gsm400_supp;              /*<  0:  1> GSM 400 Bands Supported                            */
  U8                        gsm400_cap;               /*<  1:  1> GSM 400 Associated Radio Capability                */
  U8                        _align0;                  /*<  2:  1> alignment                                          */
  U8                        _align1;                  /*<  3:  1> alignment                                          */
} T_gsm400_struct;
#endif


// STRUCT-FF: TI_PS_FF_REL99_AND_ABOVE 
// #ifndef __T_t_gsm400_struct__
// #define __T_t_gsm400_struct__
// 
//  GSM 400 Bands Supported Structure
// CCDGEN:WriteStruct_Count==14
// 
// typedef struct
// {
//   U8                        t_gsm400_supp;            /*<  0:  0> T-GSM 400 Bands Supported                          */
//   U8                        t_gsm400_cap;             /*<  0:  0> T-GSM 400 Associated Radio Capability              */
// } T_t_gsm400_struct;
// #endif
// 
#ifndef __T_measurement__
#define __T_measurement__
/*
 * Measurement Capability
 * CCDGEN:WriteStruct_Count==15
 */
typedef struct
{
  U8                        sms_val;                  /*<  0:  1> Switch-Measure-Switch-Value                        */
  U8                        sm_val;                   /*<  1:  1> Switch-Measure-Value                               */
  U8                        _align0;                  /*<  2:  1> alignment                                          */
  U8                        _align1;                  /*<  3:  1> alignment                                          */
} T_measurement;
#endif

#ifndef __T_pos_method__
#define __T_pos_method__
/*
 * MS Positioning Method
 * CCDGEN:WriteStruct_Count==16
 */
typedef struct
{
  U8                        assist_eotd;              /*<  0:  1> MS assisted E-OTD; MS does supports assisted E-OTD (1) or not (0) */
  U8                        based_eotd;               /*<  1:  1> MS based E-OTD; MS does supports based E-OTD (1) or not (0) */
  U8                        assist_gps;               /*<  2:  1> MS assisted GPS; MS does supports assisted GPS (1) or not (0) */
  U8                        based_gps;                /*<  3:  1> MS based GPS; MS does supports based GPS (1) or not (0) */
  U8                        conv_gps;                 /*<  4:  1> MS conventional GPS; MS does supports conventional GPS (1) or not (0) */
  U8                        _align0;                  /*<  5:  1> alignment                                          */
  U8                        _align1;                  /*<  6:  1> alignment                                          */
  U8                        _align2;                  /*<  7:  1> alignment                                          */
} T_pos_method;
#endif

#ifndef __T_pow_class4__
#define __T_pow_class4__
/*
 * RF Power Capability (4 bits); Power Class of GSM 400, GSM 850, GSM 900, DCS 1800, PCS 1900
 * CCDGEN:WriteStruct_Count==17
 */
typedef struct
{
  U8                        pow_class;                /*<  0:  1> RF Power Capability                                */
  U8                        _align0;                  /*<  1:  1> alignment                                          */
  U8                        _align1;                  /*<  2:  1> alignment                                          */
  U8                        _align2;                  /*<  3:  1> alignment                                          */
} T_pow_class4;
#endif


// STRUCT-FF: REL99 
// #ifndef __T_dtm_struct__
// #define __T_dtm_struct__
// 
//  DTM (E-)GPRS Multislot Sub-Class and MAC Mode Support
// CCDGEN:WriteStruct_Count==18
// 
// typedef struct
// {
//   U8                        dtm_g_ms_class;           /*<  0:  1> DTM GPRS Multi Slot Sub-Class                      */
//   U8                        mac_support;              /*<  1:  1> MAC Mode support; MS does supports dynamice and fixed allocation (1) or only exclusive allocation (0) */
//   U8                        v_dtm_e_ms_class;         /*<  2:  1> valid-flag                                         */
//   U8                        dtm_e_ms_class;           /*<  3:  1> DTM EGPRS Multi Slot Sub-Class; only if the MS supports EGPRS DTM */
// } T_dtm_struct;
// #endif
// 

// STRUCT-FF: REL99 
// #ifndef __T_egprs_struct__
// #define __T_egprs_struct__
// 
//  GPRS Multislot Class and Extended Dynamic Allocation Capability
// CCDGEN:WriteStruct_Count==19
// 
// typedef struct
// {
//   U8                        egprs_ms_class;           /*<  0:  1> EGPRS Multi Slot Class                             */
//   U8                        egprs_eda;                /*<  1:  1> EGPRS Extended Dynamic Allocation Capability; MS does supports dynamice and fixed allocation (1) or only exclusive allocation (0) */
//   U8                        _align0;                  /*<  2:  1> alignment                                          */
//   U8                        _align1;                  /*<  3:  1> alignment                                          */
// } T_egprs_struct;
// #endif
// 
#ifndef __T_gprs_struct__
#define __T_gprs_struct__
/*
 * GPRS Multislot Class and Extended Dynamic Allocation Capability
 * CCDGEN:WriteStruct_Count==20
 */
typedef struct
{
  U8                        gprs_ms_class;            /*<  0:  1> GPRS Multi Slot Class                              */
  U8                        gprs_eda;                 /*<  1:  1> GPRS Extended Dynamic Allocation Capability; MS does supports dynamice and fixed allocation (1) or only exclusive allocation (0) */
  U8                        _align0;                  /*<  2:  1> alignment                                          */
  U8                        _align1;                  /*<  3:  1> alignment                                          */
} T_gprs_struct;
#endif

#ifndef __T_rf_ms__
#define __T_rf_ms__
/*
 * MS RF Multi Slot Capability
 * CCDGEN:WriteStruct_Count==21
 */
typedef struct
{
  U8                        gsm_ms_class;             /*<  0:  1> GSM Multi Slot Class                               */
  U8                        edge_ms_class;            /*<  1:  1> EDGE Multi Slot Class                              */
  U8                        hscsd_ms_class;           /*<  2:  1> HSCSD Multi Slot Class                             */
  U8                        gprs_ms_class;            /*<  3:  1> GPRS Multi Slot Class                              */
  U8                        dtm_g;                    /*<  4:  1> DTM GPRS Multi Slot Capability; GPRS MS does supports dual transfer mode (DTM) */
  U8                        dtm_g_ms_class;           /*<  5:  1> DTM GPRS Multi Slot Sub-Class                      */
  U8                        ecsd_ms_class;            /*<  6:  1> ECSD Multi Slot Class                              */
  U8                        egprs_ms_class;           /*<  7:  1> EGPRS Multi Slot Class                             */
  U8                        dtm_e;                    /*<  8:  1> DTM EGPRS Multi Slot Capability; EGPRS MS does supports dual transfer mode (DTM) */
  U8                        dtm_e_ms_class;           /*<  9:  1> DTM EGPRS Multi Slot Sub-Class; only if the MS supports EGPRS DTM */
  U8                        _align0;                  /*< 10:  1> alignment                                          */
  U8                        _align1;                  /*< 11:  1> alignment                                          */
} T_rf_ms;
#endif


// STRUCT-FF: REL99 AND ( TI_PS_FF_EMR OR TI_PS_FF_RTD ) 
// #ifndef __T_rtds6__
// #define __T_rtds6__
// 
//  Real Time Difference Structure 6 Bit
// CCDGEN:WriteStruct_Count==22
// 
// typedef struct
// {
//   U8                        v_rtd6;                   /*<  0:  1> valid-flag                                         */
//   U8                        c_rtd6;                   /*<  1:  1> counter                                            */
//   U8                        rtd6[MAXRTD6];            /*<  2:  8> Real Time Difference 6 Bit                         */
//   U8                        _align0;                  /*< 10:  1> alignment                                          */
//   U8                        _align1;                  /*< 11:  1> alignment                                          */
// } T_rtds6;
// #endif
// 
// STRUCT-FF: REL99 AND ( TI_PS_FF_EMR OR TI_PS_FF_RTD ) 
// 
// Real Time Difference Structure 6 Bit
// CCDGEN:WriteStruct_Count==23
// 
// // #ifndef __T_rtds6_add__
// #define __T_rtds6_add__
// // typedef T_rtds6 T_rtds6_add;
// #endif

// STRUCT-FF: REL99 AND ( TI_PS_FF_EMR OR TI_PS_FF_RTD ) 
// #ifndef __T_rtdd6__
// #define __T_rtdd6__
// 
//  Real Time Difference Description 6 Bit
// CCDGEN:WriteStruct_Count==24
// 
// typedef struct
// {
//   U8                        v_ba_start_rtd;           /*<  0:  1> valid-flag                                         */
//   U8                        ba_start_rtd;             /*<  1:  1> BA Index Start RTD                                 */
//   T_rtds6                   rtds6;                    /*<  0:  0> Real Time Difference Structure 6 Bit               */
//   U8                        v_rtds6_add;              /*<  2:  1> valid-flag                                         */
// //   U8                        c_rtds6_add;              /*<  3:  1> counter                                            */
// //   T_rtds6_add               rtds6_add[MAXRTDS6];      /*<  4:240> Real Time Difference Structure 6 Bit               */
// } T_rtdd6;
// #endif
// 

// STRUCT-FF: REL99 AND ( TI_PS_FF_EMR OR TI_PS_FF_RTD ) 
// #ifndef __T_rtds12__
// #define __T_rtds12__
// 
//  Real Time Difference Structure 12 Bit
// CCDGEN:WriteStruct_Count==25
// 
// typedef struct
// {
//   U8                        v_rtd12;                  /*<  0:  1> valid-flag                                         */
//   U8                        c_rtd12;                  /*<  1:  1> counter                                            */
//   U16                       rtd12[MAXRTD12];          /*<  2: 12> Real Time Difference 12 Bit                        */
//   U8                        _align0;                  /*< 14:  1> alignment                                          */
//   U8                        _align1;                  /*< 15:  1> alignment                                          */
// } T_rtds12;
// #endif
// 
// STRUCT-FF: REL99 AND ( TI_PS_FF_EMR OR TI_PS_FF_RTD ) 
// 
// Real Time Difference Structure 12 Bit
// CCDGEN:WriteStruct_Count==26
// 
// // #ifndef __T_rtds12_add__
// #define __T_rtds12_add__
// // typedef T_rtds12 T_rtds12_add;
// #endif

// STRUCT-FF: REL99 AND ( TI_PS_FF_EMR OR TI_PS_FF_RTD ) 
// #ifndef __T_rtdd12__
// #define __T_rtdd12__
// 
//  Real Time Difference Description 12 Bit
// CCDGEN:WriteStruct_Count==27
// 
// typedef struct
// {
//   U8                        v_ba_start_rtd;           /*<  0:  1> valid-flag                                         */
//   U8                        ba_start_rtd;             /*<  1:  1> BA Index Start RTD                                 */
//   T_rtds12                  rtds12;                   /*<  0:  0> Real Time Difference Structure 12 Bit              */
//   U8                        v_rtds12_add;             /*<  2:  1> valid-flag                                         */
// //   U8                        c_rtds12_add;             /*<  3:  1> counter                                            */
// //   T_rtds12_add              rtds12_add[MAXRTDS12];    /*<  4:160> Real Time Difference Structure 12 Bit              */
// } T_rtdd12;
// #endif
// 

// STRUCT-FF: REL99 AND ( TI_PS_FF_EMR OR TI_PS_FF_RTD ) 
// #ifndef __T_rtdd__
// #define __T_rtdd__
// 
//  GPRS Real Time Difference Description
// CCDGEN:WriteStruct_Count==28
// 
// typedef struct
// {
//   U8                        v_rtdd6;                  /*<  0:  0> valid-flag                                         */
// //   T_rtdd6                   rtdd6;                    /*<  0:  0> Real Time Difference Description 6 Bit             */
//   U8                        v_rtdd12;                 /*<  0:  0> valid-flag                                         */
// //   T_rtdd12                  rtdd12;                   /*<  0:  0> Real Time Difference Description 12 Bit            */
// } T_rtdd;
// #endif
// 

// STRUCT-FF: REL99 AND ( TI_PS_FF_EMR OR TI_PS_FF_RTD ) 
// #ifndef __T_report_900__
// #define __T_report_900__
// 
//  Reporting 900
// CCDGEN:WriteStruct_Count==29
// 
// typedef struct
// {
//   U8                        rep_offset_900;           /*<  0:  1> 900 reporting offset                               */
//   U8                        th_rep_900;               /*<  1:  1> 900 reporting threshold                            */
//   U8                        _align0;                  /*<  2:  1> alignment                                          */
//   U8                        _align1;                  /*<  3:  1> alignment                                          */
// } T_report_900;
// #endif
// 

// STRUCT-FF: REL99 AND ( TI_PS_FF_EMR OR TI_PS_FF_RTD ) 
// #ifndef __T_report_1800__
// #define __T_report_1800__
// 
//  Reporting 1800
// CCDGEN:WriteStruct_Count==30
// 
// typedef struct
// {
//   U8                        rep_offset_1800;          /*<  0:  1> 1800 reporting offset                              */
//   U8                        th_rep_1800;              /*<  1:  1> 1800 reporting threshold                           */
//   U8                        _align0;                  /*<  2:  1> alignment                                          */
//   U8                        _align1;                  /*<  3:  1> alignment                                          */
// } T_report_1800;
// #endif
// 

// STRUCT-FF: REL99 AND ( TI_PS_FF_EMR OR TI_PS_FF_RTD ) 
// #ifndef __T_report_400__
// #define __T_report_400__
// 
//  Reporting 400
// CCDGEN:WriteStruct_Count==31
// 
// typedef struct
// {
//   U8                        rep_offset_400;           /*<  0:  1> 400 reporting offset                               */
//   U8                        th_rep_400;               /*<  1:  1> 400 reporting threshold                            */
//   U8                        _align0;                  /*<  2:  1> alignment                                          */
//   U8                        _align1;                  /*<  3:  1> alignment                                          */
// } T_report_400;
// #endif
// 

// STRUCT-FF: REL99 AND ( TI_PS_FF_EMR OR TI_PS_FF_RTD ) 
// #ifndef __T_report_1900__
// #define __T_report_1900__
// 
//  Reporting 1900
// CCDGEN:WriteStruct_Count==32
// 
// typedef struct
// {
//   U8                        rep_offset_1900;          /*<  0:  1> 1900 reporting offset                              */
//   U8                        th_rep_1900;              /*<  0:  0> 1900 reporting threshold                           */
//   U8                        _align0;                  /*<  1:  1> alignment                                          */
//   U8                        _align1;                  /*<  2:  1> alignment                                          */
//   U8                        _align2;                  /*<  3:  1> alignment                                          */
// } T_report_1900;
// #endif
// 

// STRUCT-FF: REL99 AND ( TI_PS_FF_EMR OR TI_PS_FF_RTD ) 
// #ifndef __T_report_850__
// #define __T_report_850__
// 
//  Reporting 850
// CCDGEN:WriteStruct_Count==33
// 
// typedef struct
// {
//   U8                        rep_offset_850;           /*<  0:  1> 850 reporting offset                               */
//   U8                        th_rep_850;               /*<  1:  1> 850 reporting threshold                            */
//   U8                        _align0;                  /*<  2:  1> alignment                                          */
//   U8                        _align1;                  /*<  3:  1> alignment                                          */
// } T_report_850;
// #endif
// 
#ifndef __T_sms_sm_value__
#define __T_sms_sm_value__
/*
 * MS Measurement Capability
 * CCDGEN:WriteStruct_Count==34
 */
typedef struct
{
  U8                        sms_val;                  /*<  0:  1> Switch-Measure-Switch-Value                        */
  U8                        sm_val;                   /*<  1:  1> Switch-Measure-Value                               */
  U8                        _align0;                  /*<  2:  1> alignment                                          */
  U8                        _align1;                  /*<  3:  1> alignment                                          */
} T_sms_sm_value;
#endif

#ifndef __T_ms_struct__
#define __T_ms_struct__
/*
 * Multislot Capability Struct
 * CCDGEN:WriteStruct_Count==35
 */
typedef struct
{
  U8                        v_hscsd_ms_class;         /*<  0:  1> valid-flag                                         */
  U8                        hscsd_ms_class;           /*<  1:  1> HSCSD Multi Slot Class                             */
  U8                        _align0;                  /*<  2:  1> alignment                                          */
  U8                        v_gprs_struct;            /*<  3:  1> valid-flag                                         */
  T_gprs_struct             gprs_struct;              /*<  4:  4> GPRS Multislot Class and Extended Dynamic Allocation Capability */
  U8                        _align1;                  /*<  8:  1> alignment                                          */
  U8                        _align2;                  /*<  9:  1> alignment                                          */
  U8                        _align3;                  /*< 10:  1> alignment                                          */
  U8                        v_sms_sm_value;           /*< 11:  1> valid-flag                                         */
  T_sms_sm_value            sms_sm_value;             /*< 12:  4> MS Measurement Capability                          */
// ELEM-FF: REL99 
//   U8                        v_ecsd_ms_class;          /*< 16:  1> valid-flag                                         */
//   U8                        ecsd_ms_class;            /*<  0:  0> ECSD Multi Slot Class                              */
// ELEM-FF: REL99 
//   U8                        v_egprs_struct;           /*<  0:  0> valid-flag                                         */
// //   T_egprs_struct            egprs_struct;             /*<  0:  0> GPRS Multislot Class and Extended Dynamic Allocation Capability */
// ELEM-FF: REL99 
//   U8                        v_dtm_struct;             /*<  0:  0> valid-flag                                         */
// //   T_dtm_struct              dtm_struct;               /*<  0:  0> DTM (E-)GPRS Multislot Sub-Class and MAC Mode Support */
} T_ms_struct;
#endif

#ifndef __T_acc_cap__
#define __T_acc_cap__
/*
 * Access capabilities
 * CCDGEN:WriteStruct_Count==36
 */
typedef struct
{
  U8                        pow_class;                /*<  0:  1> RF Power Capability                                */
  U8                        _align0;                  /*<  1:  1> alignment                                          */
  U8                        _align1;                  /*<  2:  1> alignment                                          */
  U8                        v_a5_bits;                /*<  3:  1> valid-flag                                         */
  T_a5_bits                 a5_bits;                  /*<  4:  8> A5 bits                                            */
  U8                        es_ind;                   /*< 12:  1> Early Classmark Sending; 'controlled early classmark sending' option is implemented (1) or not (0) in the MS */
  U8                        ps;                       /*< 13:  1> Pseudo Synchronisation capability; Pseudo synchronisation capabilty is present (1) or not (0) */
  U8                        vgcs;                     /*< 14:  1> Voice Group Call Service; VGCS capability and notification wanted (1) or not (0) */
  U8                        vbs;                      /*< 15:  1> Voice Broadcast Service; VBS capability and notification wanted (1) or not (0) */
  U8                        _align2;                  /*< 16:  1> alignment                                          */
  U8                        _align3;                  /*< 17:  1> alignment                                          */
  U8                        _align4;                  /*< 18:  1> alignment                                          */
  U8                        v_ms_struct;              /*< 19:  1> valid-flag                                         */
  T_ms_struct               ms_struct;                /*< 20: 16> Multislot Capability Struct                        */
// ELEM-FF: REL99 
//   U8                        v_pow_8psk_cap;           /*< 36:  1> valid-flag                                         */
//   U8                        pow_8psk_cap;             /*<  0:  0> 8-PSK Power Capability                             */
// ELEM-FF: REL99 
//   U8                        compact;                  /*<  0:  0> COMPACT Interference Measurement Capability; COMPACT Interference Measurement Capability is implemented (1) or not (0) */
// ELEM-FF: REL99 
//   U8                        rev99;                    /*<  0:  0> Revision Level                                     */
// ELEM-FF: REL99 
//   U8                        umts_fdd;                 /*<  0:  0> UMTS FDD Radio Access Technology; MS does supports  UMTS FDD (1) or not (0) */
// ELEM-FF: REL99 
//   U8                        umts_tdd;                 /*<  0:  0> UMTS 3.84 Mcps TDD Radio Access Technology; MS does supports UMTS TDD (1) or not (0) */
// ELEM-FF: REL99 
//   U8                        cdma2000;                 /*<  0:  0> CDMA 2000 Radio Access Technology; MS does supports CDMA 2000 (1) or not (0) */
} T_acc_cap;
#endif


// STRUCT-FF: !REL99 
#ifndef __T_ra_cap2__
#define __T_ra_cap2__
/*
 * RAC structure for R97
 * CCDGEN:WriteStruct_Count==37
 */
typedef struct
{
  U8                        acc_tech_typ;             /*<  0:  1> Access Technology Type                             */
  U8                        _align0;                  /*<  1:  1> alignment                                          */
  U8                        _align1;                  /*<  2:  1> alignment                                          */
  U8                        _align2;                  /*<  3:  1> alignment                                          */
  T_acc_cap                 acc_cap;                  /*<  4: 36> Access capabilities                                */
} T_ra_cap2;
#endif


// STRUCT-FF: REL99 
// #ifndef __T_ra_cap_values__
// #define __T_ra_cap_values__
// 
//  Actual MS RA capability value part
// CCDGEN:WriteStruct_Count==38
// 
// typedef struct
// {
//   U8                        acc_tech_typ;             /*<  0:  1> Access Technology Type                             */
//   U8                        _align0;                  /*<  1:  1> alignment                                          */
//   U8                        _align1;                  /*<  2:  1> alignment                                          */
//   U8                        v_acc_cap;                /*<  3:  1> valid-flag                                         */
// //   T_acc_cap                 acc_cap;                  /*<  4: 36> Access capabilities                                */
//   U8                        v_add_acc_tech;           /*<  0:  0> valid-flag                                         */
// //   T_add_acc_tech            add_acc_tech;             /*<  0:  0> Additonal Access Technologies                      */
// } T_ra_cap_values;
// #endif
// 

// STRUCT-FF: REL99 
// #ifndef __T_ra_cap_r__
// #define __T_ra_cap_r__
// 
//  Recursive MS RA capability value part
// CCDGEN:WriteStruct_Count==39
// 
// typedef struct
// {
//   T_ra_cap_values           ra_cap_values;            /*<  0:  0> Actual MS RA capability value part                 */
// } T_ra_cap_r;
// #endif
// 
#ifndef __T_ra_cap__
#define __T_ra_cap__
/*
 * MS RA capability value part
 * CCDGEN:WriteStruct_Count==40
 */
typedef struct
{
// ELEM-FF: REL99 
//   T_ra_cap_values           ra_cap_values;            /*<  0:  0> Actual MS RA capability value part                 */
// ELEM-FF: REL99 
//   U8                        v_ra_cap_r;               /*<  0:  0> valid-flag                                         */
// //   U8                        c_ra_cap_r;               /*<  0:  0> counter                                            */
// //   T_ra_cap_r                ra_cap_r[MAX_ADD_RA_CAP]; /*<  0:  0> Recursive MS RA capability value part              */
// ELEM-FF: !REL99 
  U8                        acc_tech_typ;             /*<  0:  1> Access Technology Type                             */
// ELEM-FF: !REL99 
  U8                        _align0;                  /*<  1:  1> alignment                                          */
  U8                        _align1;                  /*<  2:  1> alignment                                          */
  U8                        _align2;                  /*<  3:  1> alignment                                          */
  T_acc_cap                 acc_cap;                  /*<  4: 36> Access capabilities                                */
// ELEM-FF: !REL99 
  U8                        flag_ra_cap2;             /*< 40:  1> Valid flag for MS RA capability value part II; Second part of MS RA capability is available (1) or not (1) */
// ELEM-FF: !REL99 
  U8                        _align3;                  /*< 41:  1> alignment                                          */
  U8                        _align4;                  /*< 42:  1> alignment                                          */
  U8                        v_ra_cap2;                /*< 43:  1> valid-flag                                         */
  T_ra_cap2                 ra_cap2;                  /*< 44: 40> RAC structure for R97                              */
} T_ra_cap;
#endif

#ifndef __T_rf_power__
#define __T_rf_power__
/*
 * MS RF Power Classes
 * CCDGEN:WriteStruct_Count==41
 */
typedef struct
{
  T_pow_class4              pow_class4[5];            /*<  0: 20> RF Power Capability (4 bits); Power Class of GSM 400, GSM 850, GSM 900, DCS 1800, PCS 1900 */
  U8                        egde_pow1;                /*< 20:  1> EGDE RF Power Capability 1                         */
  U8                        egde_pow2;                /*< 21:  1> EGDE RF Power Capability 2                         */
  U8                        _align0;                  /*< 22:  1> alignment                                          */
  U8                        _align1;                  /*< 23:  1> alignment                                          */
} T_rf_power;
#endif

#ifndef __T_rf_cap__
#define __T_rf_cap__
/*
 * MS RF Capability
 * CCDGEN:WriteStruct_Count==42
 */
typedef struct
{
  U8                        setbands;                 /*<  0:  1> Set Frequency Bands; bitmask of set frequency bands */
  U8                        bands;                    /*<  1:  1> Supported Frequency Bands; bitmask of all available frequency bands */
  U8                        _align0;                  /*<  2:  1> alignment                                          */
  U8                        _align1;                  /*<  3:  1> alignment                                          */
  T_rf_power                rf_power;                 /*<  4: 24> MS RF Power Classes                                */
  T_rf_ms                   rf_ms;                    /*< 28: 12> MS RF Multi Slot Capability                        */
  U8                        es_ind;                   /*< 40:  1> Early Classmark Sending; 'controlled early classmark sending' option is implemented (1) or not (0) in the MS */
  U8                        ps;                       /*< 41:  1> Pseudo Synchronisation capability; Pseudo synchronisation capabilty is present (1) or not (0) */
  U8                        mt_pp_sms;                /*< 42:  1> Short Message capability; MS does supports (1) MT point to point SMS or not (0) */
  U8                        lcsva;                    /*< 43:  1> LCSVA capability; LCS value added location request notification supported (1) or not (0) */
  U8                        solsa;                    /*< 44:  1> SoLSA Supported; MS does supports SoLSA (1) or not (0) */
  U8                        cmsp;                     /*< 45:  1> CMSP Supported; MS does supports (1) CM service Prompt (network initiated MO CM connection request) or not (0) */
  U8                        mod;                      /*< 46:  1> Modulation Capability; MS does supports 8-PSK modulation for uplink and downlink (1) or only for downlink (0) in addition to GSMK */
  U8                        mac_support;              /*< 47:  1> MAC Mode support; MS does supports dynamice and fixed allocation (1) or only exclusive allocation (0) */
  U8                        meas;                     /*< 48:  1> Measurement Capability; Indicates whether the IE contains any value about the measurement capabilities or not */
  U8                        ext_meas;                 /*< 49:  1> Extended Measurement Capability; MS does supports 'extended measurements`(1) or not (0) */
  U8                        compact;                  /*< 50:  1> COMPACT Interference Measurement Capability; COMPACT Interference Measurement Capability is implemented (1) or not (0) */
  U8                        vbs;                      /*< 51:  1> Voice Broadcast Service; VBS capability and notification wanted (1) or not (0) */
  U8                        vgcs;                     /*< 52:  1> Voice Group Call Service; VGCS capability and notification wanted (1) or not (0) */
  U8                        ucs2_treat;               /*< 53:  1> UCS2 treatment                                     */
  U8                        ss_screen;                /*< 54:  1> SS Screening Indicator                             */
  U8                        sms_val;                  /*< 55:  1> Switch-Measure-Switch-Value                        */
  U8                        sm_val;                   /*< 56:  1> Switch-Measure-Value                               */
  U8                        _align2;                  /*< 57:  1> alignment                                          */
  U8                        _align3;                  /*< 58:  1> alignment                                          */
  U8                        _align4;                  /*< 59:  1> alignment                                          */
  T_a5_bits                 a5_bits;                  /*< 60:  8> A5 bits                                            */
  U8                        assist_eotd;              /*< 68:  1> MS assisted E-OTD; MS does supports assisted E-OTD (1) or not (0) */
  U8                        based_eotd;               /*< 69:  1> MS based E-OTD; MS does supports based E-OTD (1) or not (0) */
  U8                        assist_gps;               /*< 70:  1> MS assisted GPS; MS does supports assisted GPS (1) or not (0) */
  U8                        based_gps;                /*< 71:  1> MS based GPS; MS does supports based GPS (1) or not (0) */
  U8                        conv_gps;                 /*< 72:  1> MS conventional GPS; MS does supports conventional GPS (1) or not (0) */
  U8                        gprs_eda;                 /*< 73:  1> GPRS Extended Dynamic Allocation Capability; MS does supports dynamice and fixed allocation (1) or only exclusive allocation (0) */
  U8                        egprs_eda;                /*< 74:  1> EGPRS Extended Dynamic Allocation Capability; MS does supports dynamice and fixed allocation (1) or only exclusive allocation (0) */
  U8                        _align5;                  /*< 75:  1> alignment                                          */
} T_rf_cap;
#endif

#ifndef __T_pan_struct__
#define __T_pan_struct__
/*
 * PAN Structure
 * CCDGEN:WriteStruct_Count==43
 */
typedef struct
{
  U8                        dec;                      /*<  0:  1> PAN_DEC                                            */
  U8                        inc;                      /*<  1:  1> PAN_INC                                            */
  U8                        pmax;                     /*<  2:  1> PAN_MAX                                            */
  U8                        _align0;                  /*<  3:  1> alignment                                          */
} T_pan_struct;
#endif


// STRUCT-FF: REL99 
// #ifndef __T_ccn_support_description__
// #define __T_ccn_support_description__
// 
//  ccn support description towards all neighbour
// CCDGEN:WriteStruct_Count==44
// 
// typedef struct
// {
//   U8                        num_cells;                /*<  0:  1> Number of Cells                                    */
//   U8                        c_ccn_support;            /*<  0:  0> counter                                            */
// //   U8                        ccn_support[BIT7_MAX];    /*<  0:  0> CCN is supported towards the corresponding cell    */
//   U8                        _align0;                  /*<  1:  1> alignment                                          */
//   U8                        _align1;                  /*<  2:  1> alignment                                          */
//   U8                        _align2;                  /*<  3:  1> alignment                                          */
// } T_ccn_support_description;
// #endif
// 

// STRUCT-FF: REL99 OR TI_PS_FF_REL99_AND_ABOVE 
// #ifndef __T_ext_dtm_ms__
// #define __T_ext_dtm_ms__
// 
//  Extended DTM Multislot Structure 
// CCDGEN:WriteStruct_Count==45
// 
// typedef struct
// {
//   U8                        ext_dtm_g_ms_class;       /*<  0:  0> Extended DTM GPRS Multi Slot Sub-Class             */
//   U8                        ext_dtm_e_ms_class;       /*<  0:  0> Extended DTM EGPRS Multi Slot Sub-Class            */
// } T_ext_dtm_ms;
// #endif
// 
#ifndef __T_mob_class_3__
#define __T_mob_class_3__
/*
 * Mobile Station Classmark 3
 * CCDGEN:WriteStruct_Count==46
 */
typedef struct
{
  U8                        mb_value;                 /*<  0:  1> Multiband Support                                  */
  U8                        a5_7;                     /*<  1:  1> A5/7; Encryption algorithm A5/7 available (1) or not (0) */
  U8                        a5_6;                     /*<  2:  1> A5/6; Encryption algorithm A5/6 available (1) or not (0) */
  U8                        a5_5;                     /*<  3:  1> A5/5; Encryption algorithm A5/5 available (1) or not (0) */
  U8                        a5_4;                     /*<  4:  1> A5/4; Encryption algorithm A5/4 available (1) or not (0) */
  U8                        v_radio_cap_2;            /*<  5:  1> valid-flag                                         */
  U8                        radio_cap_2;              /*<  6:  1> Associated Radio Capability 2                      */
  U8                        v_radio_cap_1;            /*<  7:  1> valid-flag                                         */
  U8                        radio_cap_1;              /*<  8:  1> Associated Radio Capability 1                      */
  U8                        v_rgsm_class;             /*<  9:  1> valid-flag                                         */
  U8                        rgsm_class;               /*< 10:  1> R Support (R-GSM Class)                            */
  U8                        v_ms_class;               /*< 11:  1> valid-flag                                         */
  U8                        ms_class;                 /*< 12:  1> Multi Slot Class                                   */
  U8                        ucs2_treat;               /*< 13:  1> UCS2 treatment                                     */
  U8                        ext_meas;                 /*< 14:  1> Extended Measurement Capability; MS does supports 'extended measurements`(1) or not (0) */
  U8                        v_measurement;            /*< 15:  1> valid-flag                                         */
  T_measurement             measurement;              /*< 16:  4> Measurement Capability                             */
  U8                        _align0;                  /*< 20:  1> alignment                                          */
  U8                        _align1;                  /*< 21:  1> alignment                                          */
  U8                        _align2;                  /*< 22:  1> alignment                                          */
  U8                        v_pos_method;             /*< 23:  1> valid-flag                                         */
  T_pos_method              pos_method;               /*< 24:  8> MS Positioning Method                              */
  U8                        v_edge_ms_class;          /*< 32:  1> valid-flag                                         */
  U8                        edge_ms_class;            /*< 33:  1> EDGE Multi Slot Class                              */
  U8                        _align3;                  /*< 34:  1> alignment                                          */
  U8                        v_egde_struct;            /*< 35:  1> valid-flag                                         */
  T_egde_struct             egde_struct;              /*< 36:  8> EGDE Structure                                     */
  U8                        _align4;                  /*< 44:  1> alignment                                          */
  U8                        _align5;                  /*< 45:  1> alignment                                          */
  U8                        _align6;                  /*< 46:  1> alignment                                          */
  U8                        v_gsm400_struct;          /*< 47:  1> valid-flag                                         */
  T_gsm400_struct           gsm400_struct;            /*< 48:  4> GSM 400 Bands Supported Structure                  */
  U8                        v_gsm850_cap;             /*< 52:  1> valid-flag                                         */
  U8                        gsm850_cap;               /*< 53:  1> GSM 850 Associated Radio Capability                */
  U8                        v_pcs1900_cap;            /*< 54:  1> valid-flag                                         */
  U8                        pcs1900_cap;              /*< 55:  1> PCS 1900 Associated Radio Cap.                     */
  U8                        umts_fdd;                 /*< 56:  1> UMTS FDD Radio Access Technology; MS does supports  UMTS FDD (1) or not (0) */
  U8                        umts_tdd;                 /*< 57:  1> UMTS 3.84 Mcps TDD Radio Access Technology; MS does supports UMTS TDD (1) or not (0) */
  U8                        cdma2000;                 /*< 58:  1> CDMA 2000 Radio Access Technology; MS does supports CDMA 2000 (1) or not (0) */
  U8                        v_dtm_ms;                 /*< 59:  1> valid-flag                                         */
  T_dtm_ms                  dtm_ms;                   /*< 60:  4> DTM Multislot Structure                            */
  U8                        v_single_band;            /*< 64:  1> valid-flag                                         */
  U8                        single_band;              /*< 65:  1> Single GSM Band Support                            */
  U8                        v_gsm700_cap;             /*< 66:  1> valid-flag                                         */
  U8                        gsm700_cap;               /*< 67:  1> GSM 700 Associated Radio Capability                */
// VAR-FF: REL99 OR TI_PS_FF_REL99_AND_ABOVE 
//   U8                        umts_tdd_128;             /*<  0:  0> UMTS 1.28 Mcps TDD Radio Access Technology; MS does supports UMTS TDD (1) or not (0) */
// VAR-FF: REL99 OR TI_PS_FF_REL99_AND_ABOVE 
//   U8                        geran_feat_pack_1;        /*<  0:  0> Network Support for GERAN Feature 1 Package        */
// STRUCT-FF: REL99 OR TI_PS_FF_REL99_AND_ABOVE 
//   U8                        v_ext_dtm_ms;             /*<  0:  0> valid-flag                                         */
// //   T_ext_dtm_ms              ext_dtm_ms;               /*<  0:  0> Extended DTM Multislot Structure                   */
// VAR-FF: TI_PS_FF_REL99_AND_ABOVE 
//   U8                        v_high_ms_cap;            /*< 68:  1> valid-flag                                         */
//   U8                        high_ms_cap;              /*<  0:  0> High Multislot Capability                          */
// VAR-FF: TI_PS_FF_REL99_AND_ABOVE 
//   U8                        v_geran_iu_mod_cap;       /*< 68:  1> valid-flag                                         */
//   U8                        geran_iu_mod_cap;         /*<  0:  0> GERAN Iu Mode Capabilities                         */
// VAR-FF: TI_PS_FF_REL99_AND_ABOVE 
//   U8                        geran_feat_pack_2;        /*<  0:  0> GERAN Feature Package 2                            */
// VAR-FF: TI_PS_FF_REL99_AND_ABOVE 
//   U8                        gmsk_ms_pwr_prof;         /*<  0:  0> GMSK Multislot Power Profile                       */
// VAR-FF: TI_PS_FF_REL99_AND_ABOVE 
//   U8                        psk8_ms_pwr_prof;         /*<  0:  0> 8-PSK Multislot Power Profile                      */
// STRUCT-FF: TI_PS_FF_REL99_AND_ABOVE 
//   U8                        v_t_gsm400_struct;        /*<  0:  0> valid-flag                                         */
// //   T_t_gsm400_struct         t_gsm400_struct;          /*<  0:  0> GSM 400 Bands Supported Structure                  */
// VAR-FF: TI_PS_FF_REL99_AND_ABOVE 
//   U8                        v_t_gsm900_cap;           /*< 68:  1> valid-flag                                         */
//   U8                        t_gsm900_cap;             /*<  0:  0> T-GSM 400 Associated Radio Capability              */
// VAR-FF: TI_PS_FF_REL99_AND_ABOVE 
//   U8                        dl_adv_rx_per;            /*<  0:  0> Downlink Advanced Receiver Performance             */
// VAR-FF: TI_PS_FF_REL99_AND_ABOVE 
//   U8                        dtm_enhance_cap;          /*<  0:  0> DTM Enhancements Capability                        */
// STRUCT-FF: TI_PS_FF_REL99_AND_ABOVE 
//   U8                        v_dtm_high_ms;            /*<  0:  0> valid-flag                                         */
// //   T_dtm_high_ms             dtm_high_ms;              /*<  0:  0> DTM High Multislot Structure                       */
// VAR-FF: TI_PS_FF_REL99_AND_ABOVE 
//   U8                        rep_acch_cap;             /*<  0:  0> Indicates whether the MS supports Repeated SACCH and Repeated FACCH */
} T_mob_class_3;
#endif


// STRUCT-FF: REL99 AND ( TI_PS_FF_EMR OR TI_PS_FF_RTD ) 
// #ifndef __T_tdd_ci_struct__
// #define __T_tdd_ci_struct__
// 
//  TDD Neighbour cell information
// CCDGEN:WriteStruct_Count==47
// 
// typedef struct
// {
//   U8                        tdd_indic0;               /*<  0:  0> TDD_Indic0                                         */
//   U8                        _align0;                  /*<  0:  1> alignment                                          */
//   U8                        c_tdd_ncell_data;         /*<  0:  0> counter                                            */
// //   U16                       tdd_ncell_data[MAX_TDD_CELLS]; /*<  0:  0> bits 1-7 are the Cell Parameter, bit 8 is the Sync Case and bit 9 is the Diversity bit.  */
//   U8                        _align1;                  /*<  1:  1> alignment                                          */
//   U8                        _align2;                  /*<  2:  1> alignment                                          */
//   U8                        _align3;                  /*<  3:  1> alignment                                          */
// } T_tdd_ci_struct;
// #endif
// 

// STRUCT-FF: REL99 AND ( TI_PS_FF_EMR OR TI_PS_FF_RTD ) 
// #ifndef __T_fdd_ci_struct__
// #define __T_fdd_ci_struct__
// 
//  FDD Neighbour cell information
// CCDGEN:WriteStruct_Count==48
// 
// typedef struct
// {
//   U8                        fdd_indic0;               /*<  0:  0> FDD_Indic0                                         */
//   U8                        _align0;                  /*<  0:  1> alignment                                          */
//   U8                        c_fdd_ncell_data;         /*<  0:  0> counter                                            */
// //   U16                       fdd_ncell_data[MAX_FDD_CELLS]; /*<  0:  0> bits 1-9 are the Scrambling Code and bit 10 is the corresponding Diversity Parameter */
//   U8                        _align1;                  /*<  1:  1> alignment                                          */
//   U8                        _align2;                  /*<  2:  1> alignment                                          */
//   U8                        _align3;                  /*<  3:  1> alignment                                          */
// } T_fdd_ci_struct;
// #endif
// 

// STRUCT-FF: REL99 AND ( TI_PS_FF_EMR OR TI_PS_FF_RTD ) 
// #ifndef __T_rep_u_tdd_cells__
// #define __T_rep_u_tdd_cells__
// 
//  Repeated UTRAN TDD Neighbour cells
// CCDGEN:WriteStruct_Count==49
// 
// typedef struct
// {
//   U8                        flag;                     /*<  0:  1> Flag                                               */
//   U8                        v_tdd_arfcn;              /*<  1:  1> valid-flag                                         */
//   U16                       tdd_arfcn;                /*<  0:  0> TDD_ARFCN                                          */
//   U8                        v_tdd_arfcn_index;        /*<  1:  1> valid-flag                                         */
//   U8                        tdd_arfcn_index;          /*<  0:  0> TDD ARFCN index                                    */
//   T_tdd_ci_struct           tdd_ci_struct;            /*<  0:  0> TDD Neighbour cell information                     */
//   U8                        _align0;                  /*<  1:  1> alignment                                          */
//   U8                        _align1;                  /*<  2:  1> alignment                                          */
//   U8                        _align2;                  /*<  3:  1> alignment                                          */
// } T_rep_u_tdd_cells;
// #endif
// 

// STRUCT-FF: REL99 AND ( TI_PS_FF_EMR OR TI_PS_FF_RTD ) 
// #ifndef __T_rep_u_fdd_cells__
// #define __T_rep_u_fdd_cells__
// 
//  Repeated UTRAN FDD Neighbour cells
// CCDGEN:WriteStruct_Count==50
// 
// typedef struct
// {
//   U8                        flag;                     /*<  0:  1> Flag                                               */
//   U8                        v_fdd_arfcn;              /*<  1:  1> valid-flag                                         */
//   U16                       fdd_arfcn;                /*<  0:  0> FDD_ARFCN                                          */
//   U8                        v_fdd_arfcn_index;        /*<  1:  1> valid-flag                                         */
//   U8                        fdd_arfcn_index;          /*<  0:  0> FDD ARFCN index                                    */
//   T_fdd_ci_struct           fdd_ci_struct;            /*<  0:  0> FDD Neighbour cell information                     */
//   U8                        _align0;                  /*<  1:  1> alignment                                          */
//   U8                        _align1;                  /*<  2:  1> alignment                                          */
//   U8                        _align2;                  /*<  3:  1> alignment                                          */
// } T_rep_u_fdd_cells;
// #endif
// 

// STRUCT-FF: REL99 AND ( TI_PS_FF_EMR OR TI_PS_FF_RTD ) 
// #ifndef __T_utran_tdd__
// #define __T_utran_tdd__
// 
//  UTRAN TDD description
// CCDGEN:WriteStruct_Count==51
// 
// typedef struct
// {
//   U8                        v_bw_tdd;                 /*<  0:  1> valid-flag                                         */
//   U8                        bw_tdd;                   /*<  0:  0> Bandwidth TDD                                      */
//   U8                        v_rep_u_tdd_cells;        /*<  0:  0> valid-flag                                         */
// //   U8                        c_rep_u_tdd_cells;        /*<  0:  0> counter                                            */
// //   T_rep_u_tdd_cells         rep_u_tdd_cells[MAX_TDD]; /*<  0:  0> Repeated UTRAN TDD Neighbour cells                 */
// } T_utran_tdd;
// #endif
// 

// STRUCT-FF: REL99 AND ( TI_PS_FF_EMR OR TI_PS_FF_RTD ) 
// #ifndef __T_utran_fdd__
// #define __T_utran_fdd__
// 
//  UTRAN FDD description
// CCDGEN:WriteStruct_Count==52
// 
// typedef struct
// {
//   U8                        v_bw_fdd;                 /*<  0:  1> valid-flag                                         */
//   U8                        bw_fdd;                   /*<  0:  0> Bandwidth FDD                                      */
//   U8                        v_rep_u_fdd_cells;        /*<  0:  0> valid-flag                                         */
// //   U8                        c_rep_u_fdd_cells;        /*<  0:  0> counter                                            */
// //   T_rep_u_fdd_cells         rep_u_fdd_cells[MAX_FDD]; /*<  0:  0> Repeated UTRAN FDD Neighbour cells                 */
// } T_utran_fdd;
// #endif
// 

// STRUCT-FF: REL99 AND ( TI_PS_FF_EMR OR TI_PS_FF_RTD ) 
// #ifndef __T_threeg_cells__
// #define __T_threeg_cells__
// 
//  3G Neighbour Cell Description
// CCDGEN:WriteStruct_Count==53
// 
// typedef struct
// {
//   U8                        v_index_start_3g;         /*<  0:  1> valid-flag                                         */
//   U8                        index_start_3g;           /*<  0:  0> Index Start 3G                                     */
//   U8                        v_abs_index_emr;          /*<  0:  1> valid-flag                                         */
//   U8                        abs_index_emr;            /*<  0:  0> Absolute Index start EMR                           */
//   U8                        v_utran_fdd;              /*<  0:  0> valid-flag                                         */
// //   T_utran_fdd               utran_fdd;                /*<  0:  0> UTRAN FDD description                              */
//   U8                        v_utran_tdd;              /*<  0:  0> valid-flag                                         */
// //   T_utran_tdd               utran_tdd;                /*<  0:  0> UTRAN TDD description                              */
// } T_threeg_cells;
// #endif
// 

// STRUCT-FF: REL99 AND ( TI_PS_FF_EMR OR TI_PS_FF_RTD ) 
// #ifndef __T_cd2k_str_000__
// #define __T_cd2k_str_000__
// 
//  Structured Element
// CCDGEN:WriteStruct_Count==54
// 
// typedef struct
// {
//   U8                        td_mode;                  /*<  0:  1> TD_MODE                                            */
//   U8                        td_power_level;           /*<  1:  1> TD_POWER_LEVEL                                     */
//   U8                        _align0;                  /*<  2:  1> alignment                                          */
//   U8                        _align1;                  /*<  3:  1> alignment                                          */
// } T_cd2k_str_000;
// #endif
// 

// STRUCT-FF: REL99 AND ( TI_PS_FF_EMR OR TI_PS_FF_RTD ) 
// #ifndef __T_cd2k_str_001__
// #define __T_cd2k_str_001__
// 
//  Structured Element
// CCDGEN:WriteStruct_Count==55
// 
// typedef struct
// {
//   U8                        qof;                      /*<  0:  1> QOF                                                */
//   U8                        walsh_len_a;              /*<  1:  1> WALSH_LEN_A                                        */
//   U8                        aux_pilot_walsh;          /*<  2:  1> AUX_PILOT_WALSH                                    */
//   U8                        _align0;                  /*<  3:  1> alignment                                          */
// } T_cd2k_str_001;
// #endif
// 

// STRUCT-FF: REL99 AND ( TI_PS_FF_EMR OR TI_PS_FF_RTD ) 
// #ifndef __T_cd2k_str_010__
// #define __T_cd2k_str_010__
// 
//  Structured Element
// CCDGEN:WriteStruct_Count==56
// 
// typedef struct
// {
//   U8                        qof;                      /*<  0:  1> QOF                                                */
//   U8                        walsh_len_b;              /*<  1:  1> WALSH_LEN_B                                        */
//   U8                        aux_td_walsh;             /*<  2:  1> AUX_TD_WALSH                                       */
//   U8                        aux_td_power_level;       /*<  3:  1> AUX_TD_POWER_LEVEL                                 */
//   U8                        td_mode;                  /*<  4:  1> TD_MODE                                            */
//   U8                        _align0;                  /*<  5:  1> alignment                                          */
//   U8                        _align1;                  /*<  6:  1> alignment                                          */
//   U8                        _align2;                  /*<  7:  1> alignment                                          */
// } T_cd2k_str_010;
// #endif
// 

// STRUCT-FF: REL99 AND ( TI_PS_FF_EMR OR TI_PS_FF_RTD ) 
// #ifndef __T_cd2k_str_011__
// #define __T_cd2k_str_011__
// 
//  Structured Element
// CCDGEN:WriteStruct_Count==57
// 
// typedef struct
// {
//   U8                        sr3_prim_pilot;           /*<  0:  1> SR3_PRIM_PILOT                                     */
//   U8                        sr3_pilot_power1;         /*<  1:  1> SR3_PILOT_POWER1                                   */
//   U8                        sr3_pilot_power2;         /*<  2:  1> SR3_PILOT_POWER2                                   */
//   U8                        _align0;                  /*<  3:  1> alignment                                          */
// } T_cd2k_str_011;
// #endif
// 

// STRUCT-FF: REL99 AND ( TI_PS_FF_EMR OR TI_PS_FF_RTD ) 
// #ifndef __T_cd2k_str_110_1__
// #define __T_cd2k_str_110_1__
// 
//  Structured Element
// CCDGEN:WriteStruct_Count==58
// 
// typedef struct
// {
//   U8                        qof1;                     /*<  0:  1> QOF1                                               */
//   U8                        walsh_length1;            /*<  1:  1> WALSH_LENGTH1                                      */
//   U8                        aux_pilot_walsh1;         /*<  2:  1> AUX_PILOT_WALSH1                                   */
//   U8                        _align0;                  /*<  3:  1> alignment                                          */
// } T_cd2k_str_110_1;
// #endif
// 

// STRUCT-FF: REL99 AND ( TI_PS_FF_EMR OR TI_PS_FF_RTD ) 
// #ifndef __T_cd2k_str_110_2__
// #define __T_cd2k_str_110_2__
// 
//  Structured Element
// CCDGEN:WriteStruct_Count==59
// 
// typedef struct
// {
//   U8                        qof2;                     /*<  0:  1> QOF2                                               */
//   U8                        walsh_length2;            /*<  1:  1> WALSH_LENGTH2                                      */
//   U8                        aux_pilot_walsh2;         /*<  2:  1> AUX_PILOT_WALSH2                                   */
//   U8                        _align0;                  /*<  3:  1> alignment                                          */
// } T_cd2k_str_110_2;
// #endif
// 

// STRUCT-FF: REL99 AND ( TI_PS_FF_EMR OR TI_PS_FF_RTD ) 
// #ifndef __T_cd2k_str_110__
// #define __T_cd2k_str_110__
// 
//  Structured Element
// CCDGEN:WriteStruct_Count==60
// 
// typedef struct
// {
//   T_cd2k_str_011            cd2k_str_011;             /*<  0:  0> Structured Element                                 */
//   U8                        qof;                      /*<  0:  1> QOF                                                */
//   U8                        walsh_len_c;              /*<  1:  1> WALSH_LEN_C                                        */
//   U8                        aux_walsh_len;            /*<  2:  1> AUX_WALSH_LEN                                      */
//   T_cd2k_str_110_1          cd2k_str_110_1;           /*<  0:  0> Structured Element                                 */
//   T_cd2k_str_110_2          cd2k_str_110_2;           /*<  0:  0> Structured Element                                 */
//   U8                        _align0;                  /*<  3:  1> alignment                                          */
// } T_cd2k_str_110;
// #endif
// 

// STRUCT-FF: REL99 AND ( TI_PS_FF_EMR OR TI_PS_FF_RTD ) 
// #ifndef __T_cd2k_str_all__
// #define __T_cd2k_str_all__
// 
//  Structured Element
// CCDGEN:WriteStruct_Count==61
// 
// typedef struct
// {
//   U8                        flag_3bit;                /*<  0:  1> FLAG 3 bits                                        */
//   U8                        v_cd2k_str_000;           /*<  0:  0> valid-flag                                         */
// //   T_cd2k_str_000            cd2k_str_000;             /*<  0:  0> Structured Element                                 */
//   U8                        v_cd2k_str_001;           /*<  0:  0> valid-flag                                         */
// //   T_cd2k_str_001            cd2k_str_001;             /*<  0:  0> Structured Element                                 */
//   U8                        v_cd2k_str_010;           /*<  0:  0> valid-flag                                         */
// //   T_cd2k_str_010            cd2k_str_010;             /*<  0:  0> Structured Element                                 */
//   U8                        v_cd2k_str_011;           /*<  0:  0> valid-flag                                         */
// //   T_cd2k_str_011            cd2k_str_011;             /*<  0:  0> Structured Element                                 */
//   U8                        v_cd2k_str_110;           /*<  0:  0> valid-flag                                         */
// //   T_cd2k_str_110            cd2k_str_110;             /*<  0:  0> Structured Element                                 */
//   U8                        _align0;                  /*<  1:  1> alignment                                          */
//   U8                        _align1;                  /*<  2:  1> alignment                                          */
//   U8                        _align2;                  /*<  3:  1> alignment                                          */
// } T_cd2k_str_all;
// #endif
// 

// STRUCT-FF: REL99 AND ( TI_PS_FF_EMR OR TI_PS_FF_RTD ) 
// #ifndef __T_cd2k_cell_str__
// #define __T_cd2k_cell_str__
// 
//  Structured Element
// CCDGEN:WriteStruct_Count==62
// 
// typedef struct
// {
//   U16                       pilot_PN_offset;          /*<  0:  2> Pilot PN offset                                    */
//   U8                        v_cd2k_str_all;           /*<  0:  0> valid-flag                                         */
// //   T_cd2k_str_all            cd2k_str_all;             /*<  0:  0> Structured Element                                 */
//   U8                        _align0;                  /*<  2:  1> alignment                                          */
//   U8                        _align1;                  /*<  3:  1> alignment                                          */
// } T_cd2k_cell_str;
// #endif
// 

// STRUCT-FF: REL99 AND ( TI_PS_FF_EMR OR TI_PS_FF_RTD ) 
// #ifndef __T_cdma2000_cell_desc__
// #define __T_cdma2000_cell_desc__
// 
//  CDMA2000 neighbour cell description structure
// CCDGEN:WriteStruct_Count==63
// 
// typedef struct
// {
//   U8                        cdma2000_frequency_band;  /*<  0:  1> cdma2000 frequency band                            */
//   U8                        _align0;                  /*<  1:  1> alignment                                          */
//   U16                       cdma2000_frequency;       /*<  2:  2> cdma2000 frequency                                 */
//   U8                        number_cdma2000_cells;    /*<  4:  1> number_cdma2000_cells                              */
//   U8                        c_cd2k_cell_str;          /*<  0:  0> counter                                            */
// //   T_cd2k_cell_str           cd2k_cell_str[MAX_CDMA2K_NEIGH_CELLS]; /*<  0:  0> Structured Element                                 */
//   U8                        _align1;                  /*<  5:  1> alignment                                          */
//   U8                        _align2;                  /*<  6:  1> alignment                                          */
//   U8                        _align3;                  /*<  7:  1> alignment                                          */
// } T_cdma2000_cell_desc;
// #endif
// 

// STRUCT-FF: REL99 AND ( TI_PS_FF_EMR OR TI_PS_FF_RTD ) 
// #ifndef __T_fdd_report__
// #define __T_fdd_report__
// 
//  FDD Reporting
// CCDGEN:WriteStruct_Count==64
// 
// typedef struct
// {
//   U8                        fdd_rep_offset;           /*<  0:  0> FDD Reporting Offset                               */
//   U8                        fdd_rep_thres;            /*<  0:  0> FDD Reporting Threshold                            */
// } T_fdd_report;
// #endif
// 

// STRUCT-FF: REL99 AND ( TI_PS_FF_EMR OR TI_PS_FF_RTD ) 
// #ifndef __T_tdd_rep__
// #define __T_tdd_rep__
// 
//  TDD Reporting
// CCDGEN:WriteStruct_Count==65
// 
// typedef struct
// {
//   U8                        tdd_rep_offset;           /*<  0:  0> TDD Reporting Offset                               */
//   U8                        tdd_rep_thres;            /*<  0:  0> TDD Reporting Threshold                            */
// } T_tdd_rep;
// #endif
// 

// STRUCT-FF: REL99 AND ( TI_PS_FF_EMR OR TI_PS_FF_RTD ) 
// #ifndef __T_cdma2000_rep__
// #define __T_cdma2000_rep__
// 
//  Structured Element
// CCDGEN:WriteStruct_Count==66
// 
// typedef struct
// {
//   U8                        cdma2000_rep_offset;      /*<  0:  0> CDMA2000 Reporting Offset                          */
//   U8                        cdma2000_rep_thres;       /*<  0:  0> CDMA2000 Reporting Threshold                       */
// } T_cdma2000_rep;
// #endif
// 

// STRUCT-FF: REL99 
// #ifndef __T_egprs_pck_ch_req_bep_per__
// #define __T_egprs_pck_ch_req_bep_per__
// 
//  EGPRS packet channel and BEP period structure
// CCDGEN:WriteStruct_Count==67
// 
// typedef struct
// {
//   U8                        egprs_packet_channel_request; /*<  0:  1> EGPRS packet channel request message sent          */
//   U8                        bep_period;               /*<  1:  1> BEP Period                                         */
//   U8                        _align0;                  /*<  2:  1> alignment                                          */
//   U8                        _align1;                  /*<  3:  1> alignment                                          */
// } T_egprs_pck_ch_req_bep_per;
// #endif
// 

// STRUCT-FF: REL99 
// #ifndef __T_gprs_ext_info__
// #define __T_gprs_ext_info__
// 
//  GPRS cell options Extension Information
// CCDGEN:WriteStruct_Count==68
// 
// typedef struct
// {
//   U8                        flag;                     /*<  0:  1> Flag                                               */
//   U8                        v_egprs_pck_ch_req_bep_per; /*<  0:  0> valid-flag                                         */
// //   T_egprs_pck_ch_req_bep_per egprs_pck_ch_req_bep_per; /*<  0:  0> EGPRS packet channel and BEP period structure      */
//   U8                        v_pfc_feature_mode;       /*<  1:  1> valid-flag                                         */
//   U8                        pfc_feature_mode;         /*<  2:  1> PFC feature support by the N/W                     */
//   U8                        v_dtm_support;            /*<  3:  1> valid-flag                                         */
//   U8                        dtm_support;              /*<  4:  1> DTM support by the cell                            */
//   U8                        v_bss_paging_coord;       /*<  5:  1> valid-flag                                         */
//   U8                        bss_paging_coord;         /*<  6:  1> BSS paging co-ordination                           */
//   U8                        v_ccn_active;             /*<  7:  1> valid-flag                                         */
//   U8                        ccn_active;               /*<  8:  1> Indicates NACC support by rel 4 network            */
//   U8                        v_nw_ext_ul_tbf;          /*<  9:  1> valid-flag                                         */
//   U8                        nw_ext_ul_tbf;            /*< 10:  1> Indicates Extended UL TBF support by rel 4 network */
//   U8                        _align0;                  /*< 11:  1> alignment                                          */
// } T_gprs_ext_info;
// #endif
// 
#ifndef __T_gprs_ext_bits__
#define __T_gprs_ext_bits__
/*
 * GPRS cell options extensions Bits IE
 * CCDGEN:WriteStruct_Count==69
 */
typedef struct
{
// ELEM-FF: REL99 
//   U8                        ext_len;                  /*<  0:  0> Extension Length                                   */
// ELEM-FF: REL99 
//   T_gprs_ext_info           gprs_ext_info;            /*<  0:  0> BIT STRING: GPRS cell options Extension Information */
// ELEM-FF: !REL99 
  U8                        ext_len;                  /*<  0:  1> Extension Length                                   */
// ELEM-FF: !REL99 
  U8                        c_spare_ext;              /*<  1:  1> counter                                            */
  U8                        spare_ext[64];            /*<  2: 64> Spare bits(s)                                      */
  U8                        _align0;                  /*< 66:  1> alignment                                          */
  U8                        _align1;                  /*< 67:  1> alignment                                          */
} T_gprs_ext_bits;
#endif

#ifndef __T_gprs_cell_opt__
#define __T_gprs_cell_opt__
/*
 * GPRS Cell Options
 * CCDGEN:WriteStruct_Count==70
 */
typedef struct
{
  U8                        nmo;                      /*<  0:  1> NMO                                                */
  U8                        t3168;                    /*<  1:  1> T3168                                              */
  U8                        t3192;                    /*<  2:  1> T3192                                              */
  U8                        drx_t_max;                /*<  3:  1> DRX_TIMER_MAX                                      */
  U8                        ab_type;                  /*<  4:  1> Access Burst Type                                  */
  U8                        ctrl_ack_type;            /*<  5:  1> CONTROL_ACK_TYPE                                   */
  U8                        bs_cv_max;                /*<  6:  1> BS_CV_MAX                                          */
  U8                        v_pan_struct;             /*<  7:  1> valid-flag                                         */
  T_pan_struct              pan_struct;               /*<  8:  4> PAN Structure                                      */
  U8                        _align0;                  /*< 12:  1> alignment                                          */
  U8                        _align1;                  /*< 13:  1> alignment                                          */
  U8                        _align2;                  /*< 14:  1> alignment                                          */
  U8                        v_gprs_ext_bits;          /*< 15:  1> valid-flag                                         */
  T_gprs_ext_bits           gprs_ext_bits;            /*< 16: 68> GPRS cell options extensions Bits IE               */
} T_gprs_cell_opt;
#endif


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

#ifndef __T_MS_RF_CAPABILITY__
#define __T_MS_RF_CAPABILITY__
/*
 * 
 * CCDGEN:WriteStruct_Count==71
 */
typedef struct
{
  U8                        msg_type;                 /*<  0:  1> Message Type                                       */
  U8                        _align0;                  /*<  1:  1> alignment                                          */
  U8                        _align1;                  /*<  2:  1> alignment                                          */
  U8                        _align2;                  /*<  3:  1> alignment                                          */
  T_rf_cap                  rf_cap;                   /*<  4: 76> MS RF Capability                                   */
} T_MS_RF_CAPABILITY;
#endif


#include "CDG_LEAVE.h"


#endif