Pre-ci test passed git-svn-id: http://svn.eurecom.fr/openair4G/trunk@4000 818b1a75-f10b-46b9-bf7c-635c3b92a50f
185 lines
4.6 KiB
C
Executable File
185 lines
4.6 KiB
C
Executable File
/***************************************************************************
|
|
rrc_rg_variables.h - description
|
|
-------------------
|
|
begin : Jan 6, 2003
|
|
copyright : (C) 2003, 2010 by Eurecom
|
|
email : Michelle.Wetterwald@eurecom.fr
|
|
**************************************************************************
|
|
Some additional definitions for RG variables
|
|
***************************************************************************/
|
|
#ifndef __RRC_RG_VARIABLES_H__
|
|
#define __RRC_RG_VARIABLES_H__
|
|
|
|
#include "rrc_platform_types.h"
|
|
#include "rrc_msg_class.h"
|
|
#include "rrc_mbms_constant.h"
|
|
|
|
struct rrc_rg_msg_infos {
|
|
int msg_Id;
|
|
int msg_length;
|
|
void *msg_ptr;
|
|
mem_block_t *mem_block_ptr;
|
|
};
|
|
|
|
struct rrc_rg_trans {
|
|
int msg_type;
|
|
int transaction_Id;
|
|
};
|
|
|
|
struct rrc_rg_rb_information {
|
|
u16 rb_identity;
|
|
u16 rb_started;
|
|
u16 qos_class;
|
|
u16 dscp_code;
|
|
u16 sap_id;
|
|
u8 rbsetup_status;
|
|
};
|
|
|
|
//Structure for measurements in UE
|
|
struct rrc_rg_mt_meas_cmd {
|
|
u16 identity;
|
|
u16 command;
|
|
u16 xfer_mode;
|
|
u16 trigger;
|
|
u16 type;
|
|
u16 if_coeff;
|
|
u8 if_cellIdentity_ri;
|
|
u8 if_timeslotISCP_ri;
|
|
u8 if_BCH_RSCP_ri;
|
|
u8 if_pathloss_ri;
|
|
u16 if_validity;
|
|
u16 tv_validity;
|
|
u8 tv_payload_ri;
|
|
u8 tv_average_ri;
|
|
u8 tv_variance_ri;
|
|
u16 q_dl_trch_bler_ri;
|
|
u16 q_sir_TFCSid[MAXMEASTFCS];
|
|
u16 int_quantity;
|
|
u16 int_coeff;
|
|
u8 int_rep_ue_TransmittedPower;
|
|
u8 int_rep_appliedTA;
|
|
u16 criteria_type;
|
|
u16 rep_amount;
|
|
u16 rep_interval;
|
|
};
|
|
|
|
struct rrc_rg_mt_meas_rep {
|
|
u16 identity;
|
|
u16 meas_results_type;
|
|
u16 if_num_cells;
|
|
u16 if_cell_id[maxCells];
|
|
u16 if_cell_parms_id[maxCells];
|
|
u16 if_BCH_RSCP[maxCells];
|
|
u16 if_pathloss[maxCells];
|
|
u16 if_slot_iscp[maxCells][maxTS];
|
|
u16 tv_num_rbs;
|
|
u16 tv_rbid[MAXMEASRBS];
|
|
u16 tv_rb_payload[MAXMEASRBS];
|
|
u16 tv_rb_average[MAXMEASRBS];
|
|
u16 tv_rb_variance[MAXMEASRBS];
|
|
u16 q_num_TrCH;
|
|
u16 q_dl_TrCH_id[MAXMEASTRCH];
|
|
u16 q_dl_TrCH_BLER[MAXMEASTRCH];
|
|
u16 q_num_tfcs;
|
|
u16 q_tfcs_id[MAXMEASTFCS];
|
|
u16 q_sir[MAXMEASTFCS][maxTS];
|
|
u16 int_xmit_power[maxTS];
|
|
u16 int_timing_advance;
|
|
};
|
|
|
|
struct Mobile_Node {
|
|
int mt_id;
|
|
int state;
|
|
char IMEI[14];
|
|
int local_connection_ref;
|
|
int release_cause;
|
|
int u_rnti;
|
|
u8 establishment_cause;
|
|
u8 prot_error_indicator; // boolean
|
|
int conn_complete_timer;
|
|
struct rrc_rg_msg_infos rg_msg_infos;
|
|
struct rrc_rg_trans xmit_trans[MAXTRANS];
|
|
//Added MSG2
|
|
u8 am_RLC_ErrorIndicationRb2_3or4;
|
|
u8 am_RLC_ErrorIndicationRb5orAbove;
|
|
u8 cellUpdateCause;
|
|
u16 ul_nas_message_lgth;
|
|
u8 *ul_nas_message_ptr;
|
|
u16 dl_nas_message_lgth;
|
|
mem_block_t *dl_nas_message_ptr;
|
|
u16 paging_message_lgth;
|
|
mem_block_t *paging_message_ptr;
|
|
// int rb_id;
|
|
// u8 qos_classes[MAXURAB];
|
|
// u8 dscp_codes[MAXURAB];
|
|
struct rrc_rg_rb_information rg_established_rbs[maxRB];
|
|
u16 num_rb;
|
|
int established_background;
|
|
u16 requested_rbId;
|
|
u16 requested_MTrbId;
|
|
u16 requested_QoSclass;
|
|
u16 requested_dscp;
|
|
u16 requested_sapid;
|
|
// u8 rbsetup_status;
|
|
// Control blocks for measures
|
|
int rrc_rg_last_measurement;
|
|
struct rrc_rg_mt_meas_cmd rg_meas_cmd;
|
|
struct rrc_rg_mt_meas_rep rg_meas_rep[MAXMEASTYPES];
|
|
// UE Capability Information
|
|
u8 ind_accessStratumRelease;
|
|
u8 ind_eurecomKernelRelease; //An adaptation for Eurecom TD-CDMA
|
|
// List of services for MBMS
|
|
o3 act_serviceIdentity [maxMBMSServices]; /** OctetString(3), @see MBMS_ServiceIdentity */
|
|
u8 act_numService;
|
|
};
|
|
|
|
struct rrc_rg_nas_neighbor_list {
|
|
char sub_type;
|
|
int num_rg;
|
|
char *ng_list; // transparent to RRC
|
|
};
|
|
|
|
//Structure for measurements in BS
|
|
struct rrc_rg_bs_meas_cmd {
|
|
u16 identity;
|
|
u16 command;
|
|
u16 UE_Id;
|
|
u16 trigger;
|
|
u16 type;
|
|
u16 criteria_type;
|
|
u16 rep_amount;
|
|
u16 rep_interval;
|
|
};
|
|
|
|
struct rrc_rg_bs_meas_rep {
|
|
int meas_counter;
|
|
int meas_interval;
|
|
int meas_start;
|
|
u16 identity;
|
|
u16 meas_results_type;
|
|
u16 tv_num_rbs;
|
|
u16 tv_rbid[MAXMEASRBS];
|
|
u16 tv_rb_payload[MAXMEASRBS];
|
|
u16 tv_rb_average[MAXMEASRBS];
|
|
u16 tv_rb_variance[MAXMEASRBS];
|
|
u16 q_num_TrCH;
|
|
u16 q_dl_TrCH_id[MAXMEASTRCH];
|
|
u16 q_dl_TrCH_BLER[MAXMEASTRCH];
|
|
u16 q_num_tfcs;
|
|
u16 q_tfcs_id[MAXMEASTFCS];
|
|
u16 q_sir[MAXMEASTFCS][maxTS];
|
|
s32 int_xmit_power[numANTENNAS][maxTS];
|
|
s32 int_rscp[maxTS][MAXCH];
|
|
s32 int_rssi_rf[numANTENNAS][maxTS];
|
|
u16 int_spare[NUMSPARE];
|
|
};
|
|
|
|
//BS Measures
|
|
struct rrc_rg_meas_blocks {
|
|
struct rrc_rg_bs_meas_cmd bs_meas_cmd[2 * maxUsers + 1];
|
|
struct rrc_rg_bs_meas_rep bs_meas_rep[2 * maxUsers + 1];
|
|
int rrc_rg_bs_meas_next[2 * maxUsers + 1];
|
|
};
|
|
|
|
#endif
|