?? systemsim.h
字號:
float fMeanSNR; //平均SNR
float fStdSNR; //SNR的方差
float fBLER;
}SNR2BLER1_TYPE;
//速率到 BLER 的映射結構體
typedef struct stRate2BLER1
{
float fEffectiveCodeRate; //等效編碼速率
SNR2BLER1_TYPE* pstAddrOfSNR2BLER; //SNR2BLER 表的首地址
int iSNR2BLER1Length; //SNR2BLER 表的長度
}RATE2BLER1_TYPE;
//ENCODER PACKET SIZE 到 BLER 的映射結構體
typedef struct stEPS2BLER1
{
int iEncoderPacketSize; //編碼數據包長度
RATE2BLER1_TYPE* pstAddrOfRate2BLER; //Rate2BLER 結構體數組的首地址
int iRATE2BLER1Length; //Rate2BLER 結構體數組的長度
}EPS2BLER1_TYPE;
/* BLER 估計數據表(2)*/
//SNR的均值到 BLER 的映射結構體
typedef struct stSNR2BLER2
{
float fMeanSNR; //平均SNR
float fBLER;
}SNR2BLER2_TYPE;
//SNR的方差到 BLER 修正值的映射結構體
typedef struct stStd2BLER
{
float fStdSNR; //SNR的方差
float fAdjustOfBLER; //BLER 修正值
}STD2BLER_TYPE;
//速率到 BLER 的映射結構體
typedef struct stRate2BLER2
{
float fEffectiveCodeRate; //等效編碼速率
SNR2BLER2_TYPE* pstAddrOfSNR2BLER; //SNR2BLER 表的首地址
STD2BLER_TYPE* pstAddrOfStd2BLER; //Std2BLER 表的首地址
}RATE2BLER2_TYPE;
//ENCODER PACKET SIZE 到 BLER 的映射結構體
typedef struct stEPS2BLER2
{
int iEncoderPacketSize; //編碼數據包長度
RATE2BLER2_TYPE* pstAddrOfRate2BLER; //Rate2BLER 結構體數組的首地址
}EPS2BLER_TYPE;
//軟切換消息結構體
typedef struct stSoftHandoffMessage
{
int iMonitorIndex; //目標扇區在候選集數組中的下標
SECTORID_TYPE stTargetSector; //目標扇區的扇區標號
int iWaitTime; //需要等待的時間長度,以時隙為單位
bool bIsAdd; //是否加入到激活集中,true: add,false: drop
}SOFTHANDOFFMESSAGE_TYPE;
//小區交換消息結構體
typedef struct stCellSwitchMessage
{
int iCandidateIndex; //目標扇區在候選集數組中的下標
SECTORID_TYPE stTargetSector; //目標扇區的扇區標號
int iWaitTime; //需要等待的時間長度,以時隙為單位
}CELLSWITCHMESSAGE_TYPE;
//Packet到達消息結構體
typedef struct stPacketArrivalMessage
{
int iGeneratedPacketSize; //生成時的分組大小,固定值生成分組時賦值
int iTimeOfGeneratePacket; //此Packet生成的時候的時隙數
int iObjectIndicator; //分組屬于主從對象的標識
int iPacketSize; //當前Packet的大小
int iPacketIndex; //此Packet是其所屬的PC的第幾個Packet,暫時沒用到
bool bIsPacketCallEnd; //表示此Packet是否是其所屬的Packet Call的最后一個Packet
bool bIsSucfulTrans; //分組是否正確傳輸的標志,初始值為true
}PACKETARRIVALMESSAGE_TYPE;
//PacketCall到達消息結構體
typedef struct stPacketCallArrivalMessage
{
int iTimeOfPCArrival; //此PacketCall生成的時候的時隙數
int iMainObjectSize; //分組呼叫中主對象的大小,生成分組呼叫時賦值
long lDataBitsOfPC; //分組呼叫包含比特總數
long lSucfulBitNum; //記錄當前的PC的成功傳輸的比特數
bool bIsMOSucfulTrans; //分組主對象是否正確傳輸的標志,初始值為true
}PACKETCALLARRIVALMESSAGE_TYPE;
enum OBJECTTYPE{MAINOBJECT,PLAGIN};
const double ProcessGain[4]={17.2,20.2,23.2,23.2};
class CNetworkDrive;
class CServiceArea;
class CMsManager;
class CLinkPrediction;
class CCell;
class CSector;
class CMobile;
class CChannelModel;
class CVoiceMs;
class CDataMs;
class CHttpDataMs;
class CFtpDataMs;
class CVideoDataMs; //20060116
#define FastFadingValueLength 90000
const float fConstTc=1000.; //zx20010813,
//計算一定時間內數據用戶平均速率的時間窗口常量, 單位為slot,
//具體情況見Proportional Fair調度算法的說明
typedef struct stC2IFeedbackDelay
{
float fDelayedC2IValue;
int iDelayTime;
}C2IFEEDBACKDELAY_TYPE;
//N信道停等時延 by zl
#define SAWFEEDBACKDELAY 0 //反向鏈路反饋時延,包括三個部分:
//UE處理ack/nack和計算C/I的時延+
//反饋信息從UE反饋到到NodeB時延+
//NodeB處理反饋信息的時延 by zl
//C/I反饋時延 by zl
#define C2IFEEDBACKDELAY 0 //反向鏈路反饋時延,3個時隙
//鏈路預測接口 by slj 20050408
//速率預測表
typedef struct stHSRate2CI
{
float fOriginalTargetC2I; //最初的目標值
int iRateOrder; //代表當前速率等級
float fCurEPR; //代表當前傳輸塊殘余錯誤率
float fTargetC2I; //目標C/I(dB)
float fDataRate; //數據速率(kbps)
int iModulationOrder; //調制階數
float fCodeRate; //編碼速率
int iTTISize; //一個Block的大小,bit
int iMCSMode; //MCS類型
int iCodeNum; //用于仿多碼情況下傳輸速率的計算
}HSRATE2CI_TYPE;
typedef struct stHSChannel2CI
{
int iChannelMode; //信道類型
HSRATE2CI_TYPE *pstAddrOfRate2CI; //Rate2CI 結構體數組的首地址
int iRATE2CILength; //Rate2CI 結構體數組的長度
}HSChannel2CI_TYPE;
//FER表
//當前TTI平均C/I到 FER 的映射結構體
typedef struct stHSCI2FER
{
float fC2I; //平均C2I,dB
float fFER; //對應誤幀率
}HSCI2FER_TYPE;
//MCS級別到 FER 的映射結構體
typedef struct stHSMCS2FER
{
int iMCSMode; //MCS類型
HSCI2FER_TYPE *pstAddrOfCI2FER; //CI2FER 表的首地址
int iCI2FERLength; //CI2FER 表的長度
}HSMCS2FER_TYPE;
//信道類型到 FER 的映射結構體
typedef struct stHSChannel2FER
{
int iChannelMode; //信道類型
HSMCS2FER_TYPE *pstAddrOfMCS2FER; // MCS2FER結構體數組的首地址
int iMCS2FERLength; // MCS2FER結構體數組的長度
}HSChannel2FER_TYPE;
//當前系統碼字個數到MCS與CI2FER曲線映射結構體
typedef struct stHSCodeNum2FER
{
int iCodeNum; //碼字個數
HSChannel2FER_TYPE *pstAddrOfChannel2FER; // Channel2FER結構體數組的首地址
int iChannel2FERLength; // Channel2FER結構體數組的長度
}HSCodeNum2FER_TYPE;
//子信道結構體 by zl
typedef struct stNChannelSAW
{
//int iSAWProcessNum; //用數組下標代替
bool bNewDataIndicator; //新數據指示符
bool bIsTTIGood; //ACK/NACK指示符
int iFeedbackTimer; //反饋定時器
int iTransCounter; //記錄傳輸次數
float fChannelC2I; //合并的C/I
HSRATE2CI_TYPE* pstRate2CI; //速率預測結構體,重傳與首次傳輸的相同
}NCHANNELSAW_TYPE;
//long-range prediction 20051214
#define DelayedSlot 0 //單位為TTI
#define mu 0.02
#define orders 50
#define IsPredict false
//for Video
#define DelayLimit 5 //單位為秒
#define PacketDropLimit 0.4 //單位為秒zl 20060328
#define QoSWeight 4.247425 //by huangfan 20060405
//weight for M_LWDF schedule algorithm
//which define the required level of QoS
//前向Video業務packet消息結構體 20060116
typedef struct stFLVideoPacketArrivalMessage
{
int iPacketSize; //記錄此packet的大小
int iPacketIndex; //記錄此packet在trace中的序號 zl20060404
int iTimeOfGeneratePacket; //記錄此packet到達的時隙號
int iPacketDropLimit; //記錄此packet的最大丟包時延 zl20060328
bool bIsSucfulTrans; //分組是否正確傳輸的標志,初始值為true
}FLVIDEOPACKETARRIVALMESSAGE_TYPE;
//前向Video業務packetcall(即frame)結構體 20060116
typedef struct stFLVideoPacketCallArrivalMessage
{
int iTimeOfGenerateFrame; //記錄當前幀的到達時刻
long lDataBitsOfFrame; //記錄當前幀的總比特數
}FLVIDEOPACKETCALLARRIVALMESSAGE_TYPE;
#endif
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -