⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 csector.h

📁 这是cdma2000的一个分组调度算法实例
💻 H
字号:
//CSector.h
//The head file of CSector class
///////////////////////////////////////////////////////////////////
#if !defined(CSECTOR_H_INCLUDED)
#define  CSECTOR_H_INCLUDED

#include "systemsim.h"
#include "CCell.h"
class CDataMs;

class CSector
{
//attribute
private:    
	int	    m_iSectorIndex;	                  //扇区标号
	CELLID_TYPE	m_stParentCellID;             //父小区标号	
	CCell*	m_pParentCell;                    //父小区指针
	int	    m_iSectorOrientation;             // 扇区朝向 取值范围0-359
	float	m_fMaxPower;                      //最大发射功率 
	float	m_fTxPower;                       //实际发射功率
//wgt
	float	m_fTxPower1;

	float	m_fPilotPower;                    //导频功率	
	float	m_fCommonPower;                   //公共信道功率
	float	m_fMaxPacketPower;                //分组数据信道的最大功率
	float	m_fTotalVoicePower;               //实际的话音业务总功率
//	float	m_fTotalVoicePower1;
	float	m_fPacketPower;                   //实际的分组数据信道功率
	bool	m_bIsTransmiting;                 //当前时隙是否正在传送分组 
	                                          //若本时隙由数据传输则置为真,否则置为假
	CDataMs* m_pCurrentDataMs;                //当前分组数据用户的指针 
	float	m_fPriorityFactor;                //当前的最佳用户的优先级指标
	                                          //用来记录本扇区对应的最佳分组用户的优先级,
								              //供调度算法函数循环处理时使用。

//////////////////////////////    oyh新增变量,统计用    //////////////////////////////////
	int m_iTotalDataMsNum;                      //本扇区总的分组用户数   
	long m_lGoodBitNum;                          //本扇区中到目前为止成功传输的bit数  
//////////////////////////////////////////////////////////////////////////////////////////

/////////////////////////////    zdy新增变量,统计用   ////////////////////////////////
	float m_fTotalPacketDelay;					//本扇区所传分组的总的时延
	int m_iTotalSuccessfulPacketNum;			//本扇区成功传输的分组数目
///////////////////////////////////////////////////////////////////////////////////////////
	
/////////////////////////////    wyf新增变量,调度算法用   ////////////////////////////////
	bool m_bIsExistHighestPriority;             //本扇区是否有最高优先权分组用户存在
///////////////////////////////////////////////////////////////////////////////////////////
public:
	int m_iNumOfSector;


//operation
public:
	void Initialization(int, CELLID_TYPE, CCell*, int);  //初始化函数
	void ResetPower();                                   //功率复位函数     
	void VoicePowerCumulate(float);                      //话音功率的累加函数
	void PacketPowerCalculte();                     //分组数据信道的功率计算函数 
    void TxPowerCalculte();                         //实际发射功率计算函数,应oyh要求新增 
	
	int         GetSectorIndex();                        //返回扇区标号 
	CELLID_TYPE	GetParentCellID();                       //返回父小区标号	
	CCell*	    GetParentCell();                         //返回父小区指针
	                                                     //设置值在范围内返TRUE,否则返FALSE 
	int	        GetSectorOrientation();        	         //返回扇区朝向 取值范围0-359
	void        SetMaxPower(float);                      //设置最大发射功率 
	float	    GetMaxPower();                           //返回最大发射功率 
	void        SetTxPower(float);                       //设置实际发射功率
	float	    GetTxPower();                            //返回实际发射功率
//wgt
	void		SetTxPower1(float);
	float		GetTxPower1();

	float	    GetPilotPower();                         //返回导频功率	
	float 	    GetCommonPower();    	                 //返回公共信道功率
	void        SetMaxPacketPower(float); 	             //设置分组数据信道的最大功率
	float	    GetTotalVoicePower();   	             //返回实际的话音业务总功率  
	void        SetPacketPower(float); 	                 //设置实际的分组数据信道功率
	float	    GetPacketPower();    	                 //返回实际的分组数据信道功率
	void        SetIsTransmiting(bool);                  //设置当前时隙是否正在传送分组
	bool 	    IsTransmiting();	                     //返回当前时隙是否正在传送分组 	                                         
    void        SetCurrentDataMs(CDataMs*); 	             //设置当前分组数据用户的指针  	
	CDataMs*    GetCurrentDataMs();     	             //返回当前分组数据用户的指针 
	void        SetPriorityFactor(float);  	             //设置当前的最佳用户的优先级指标 
	float	    GetPriorityFactor();     	             //返回当前的最佳用户的优先级指标


/////////////////////////////////  wyf新增成员变量接口函数      ////////////////////////////
	void        SetIsExistHighestPriority(bool);         //设置是否存在最高优先权分组用户 
	bool        IsExistHighestPriority();                //返回是否存在最高优先权分组用户 
	
/////////////////////////////////  oyh新增成员变量的接口函数    ////////////////////////////
	void        SetGoodBitNum(long);                        //设置本扇区到目前为止成功传输bit数
    long        GetGoodBitNum();                           //返回本扇区到目前为止成功传输bit数   
/////////////////////////////////////////////////////////////////////////////////////////////

/////////////////////////////////  zdy新增成员变量的接口函数    ////////////////////////////
	void		SetTotalPacketDelay(float);				//设置本扇区所传分组的总的时延
	float		GetTotalPacketDelay();					//返回本扇区所传分组的总的时延
	void		SetTotalSuccessfulPacketNum(int);		//设置本扇区成功传输的分组数目	
	int			GetTotalSuccessfulPacketNum();			//返回本扇区成功传输的分组数目
};	                                         
#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -