git-svn-id: http://svn.eurecom.fr/openair4G/trunk@4167 818b1a75-f10b-46b9-bf7c-635c3b92a50f
116 lines
3.7 KiB
C
Executable File
116 lines
3.7 KiB
C
Executable File
/***************************************************************************
|
|
rrc_rg_entity.h -
|
|
-------------------
|
|
begin : Someday 2001
|
|
copyright : (C) 2001, 2010 by Eurecom
|
|
created by : Lionel.Gauthier@eurecom.fr
|
|
modified by : Michelle.Wetterwald@eurecom.fr
|
|
**************************************************************************
|
|
Data structure with RRC RG protocol parameters
|
|
***************************************************************************/
|
|
|
|
#ifndef __RRC_RG_ENTITY_H__
|
|
#define __RRC_RG_ENTITY_H__
|
|
//-----------------------------------------------------------------------------
|
|
#include "rrc_platform_types.h"
|
|
#include "rrc_constant.h"
|
|
#include "rrc_rg_bch_variables.h"
|
|
#include "rrc_rg_variables.h"
|
|
#include "rrc_rg_rrm_variables.h"
|
|
#include "rrc_rg_mbms_variables.h"
|
|
#include "rrc_rg_L2_intf_variables.h"
|
|
//-----------------------------------------------------------------------------
|
|
#include "rrm_config_structs.h"
|
|
// #include "rrc_rg_data.h"
|
|
// #include "rrc_rg_rrm_intf.h"
|
|
|
|
/******************************************************************************
|
|
* Protocol variables *
|
|
******************************************************************************/
|
|
struct rrc_rg_entity {
|
|
//-----------------------------------------------------------------------------
|
|
int current_SFN;
|
|
|
|
u8 protocol_state[maxUsers];
|
|
// Table to be changed into a list??
|
|
struct Mobile_Node Mobile_List[maxUsers];
|
|
u8 establishment_cause; // For NAS - A Revoir
|
|
// u8 release_cause;
|
|
u32 next_MUI; // for RLC AM
|
|
|
|
//External missing components simulation (debug)
|
|
int simulator;
|
|
int sim_counter;
|
|
|
|
// platform configuration
|
|
RRM_VARS saved_configuration;
|
|
int curr_transaction_id;
|
|
//rrc_md_qos_table md_qos_table;
|
|
|
|
int rrc_currently_updating; // RRC is updating rb configuration
|
|
int rrc_UE_updating;
|
|
int rrc_multicast_bearer;
|
|
u8 curr_config_action;
|
|
int curr_rb_failure_code;
|
|
|
|
// link to L1
|
|
int rrc_rg_pending_UE;
|
|
u8 rrc_rg_synch_ind;
|
|
u8 rrc_rg_cctrch_synch[maxCCTrCH_rg];
|
|
u8 rrc_rg_outsynch_ind;
|
|
u8 rrc_rg_cctrch_outsynch[maxCCTrCH_rg];
|
|
int rrc_rg_cctrch_crnti[maxCCTrCH_rg];
|
|
|
|
/* ** OAI compatible part - begin **/
|
|
// Control block for Broadcast asn1-compliant
|
|
struct rrc_rg_bch_asn1 rg_bch_asn1;
|
|
|
|
// Control block for srb-drb asn1-compliant
|
|
struct rrc_srb_drb_asn1 rg_rb_asn1;
|
|
int mod_id;
|
|
int ccch_current_UE_Id; //incremented each time a new UE sends ConnReq through CCH
|
|
/* ** OAI compatible part - end **/
|
|
|
|
// Control block for Broadcast
|
|
struct rrc_rg_bch_blocks rg_bch_blocks;
|
|
int rg_broadcast_counter;
|
|
|
|
// pointer to next message to transmit to NAS
|
|
// this is actually the start of a linked list
|
|
mem_block_t *NASMessageToXmit;
|
|
int ip_rx_irq;
|
|
// RG configuration
|
|
u16 rg_cell_id;
|
|
int num_cells;
|
|
char ccch_buffer[100];
|
|
int ccch_buffer_size;
|
|
|
|
// RG measures
|
|
struct rrc_rg_meas_blocks rg_meas_blocks;
|
|
|
|
// Control block for MBMS
|
|
struct rrc_rg_mbms_variables mbms;
|
|
|
|
// RT-fifo descriptors
|
|
int rrc_rg_GC_fifo;
|
|
int rrc_rg_NT_fifo;
|
|
int rrc_rg_DCIn_fifo[maxUsers];
|
|
int rrc_rg_DCOut_fifo[maxUsers];
|
|
|
|
// Control Block RRM interface
|
|
struct rrc_rg_rrm_variables rc_rrm;
|
|
//Added for Medieval demo 3 - MW
|
|
int eNB_measures_flag;
|
|
// hard-coded values for testing demo3 (set in main)
|
|
int conf_rlcBufferOccupancy[maxUsers];
|
|
int conf_scheduledPRB[maxUsers];
|
|
int conf_totalDataVolume[maxUsers];
|
|
// storage of last values measured
|
|
int num_connected_UEs;
|
|
int current_rlcBufferOccupancy[maxUsers];
|
|
int current_scheduledPRB[maxUsers];
|
|
int current_totalDataVolume[maxUsers];
|
|
int current_totalNumPRBs;
|
|
};
|
|
#endif
|