예제 #1
0
 public void Init()
 {
     cellList = new List<UMTSSimCell>();
     access = new HSUPA_Access();
     context = MockContext.CreatContext();
     commonParam = new HSUPA_CommonParam(context);
     bearerSelector = new HSUPA_BearerSelector(commonParam);
     UMTSSimCell cell = MockCell.CreatUMTSSimCell(0, 0);
     UMTSSimCell cell2 = MockCell.CreatUMTSSimCell(100, 100);
     List<UMTSSimUser> userList = new List<UMTSSimUser>();
     UMTSSimUser user1 = MockUser.CreatUMTSPSUser();
     UMTSSimUser user2 = MockUser.CreatUMTSPSUser();
     UMTSSimUser user3 = MockUser.CreatUMTSPSUser();
     user1.IsAccess = true;
     user2.ServedLinkSet.Add(0, new LinkParam(cell));
     user2.ServedLinkSet.Add(1, new LinkParam(cell2));
     user2.AveTrafficRate = 500;
     
     userList.Add(user1);
     userList.Add(user2);
     userList.Add(user3);
     cell.ServerdHSUPAUser = userList;
    
     cellList.Add(cell);
     commonParam.CellList = cellList;
     commonParam.UserCol.PreAccessedUser.AddRange(userList);
     access.CommonParam = commonParam;
     CalcSource.GetBear += bearerSelector.GetBearByRate;
     
 }
예제 #2
0
 public void Init()
 {
     context = MockContext.CreatContext();
     commonParam = new HSUPA_CommonParam(context);
     bearerSelector = new HSUPA_BearerSelector(commonParam);
     user = MockUser.CreatUMTSPSUser();
     user.HSUPABearer = bearerSelector.GetBearByRate(100000, 0.002f);
 }
예제 #3
0
        /// <summary>
        /// 仿真前的数据初始化 Todo。。。(将其放在哪里比较合适?)
        /// </summary>
        private void InitParam()
        {            
            //m_CommonMethod.UMTSServiceProvide = m_ServiceProvider;
            //m_CommonMethod.CommonParams = m_CommonParams;            
            //Todo...
            m_HSUPA_CalcIo.CommonParams = m_CommonParams;
            //m_HSUPA_CalcIo.CommonMethod = m_CommonMethod;
            m_UMTSInterfCalc = new UMTSInterfCalc(m_CommonParams.ServiceProvider.InterfCalc, m_CommonParams.ServiceProvider.LinkLossCalc);
            m_HSUPA_CalcIo.UMTSInterfCalc = m_UMTSInterfCalc;
            m_HARQCtrl.CommonParams = m_CommonParams;
            m_HARQCtrl.CalcIo = m_HSUPA_CalcIo;
            //m_HARQCtrl.CommonMethod = m_CommonMethod;
            m_BearerSelector = new HSUPA_BearerSelector(m_CommonParams);
            m_BearerSelector.CommonParams = m_CommonParams;
            m_HSUPA_Scheduler.CommonParams = m_CommonParams;
            m_HSUPA_Scheduler.HSUPA_CalcIo = m_HSUPA_CalcIo;
            m_HSUPA_Scheduler.RateCtrl = m_RateCtrl;
            //m_HSUPA_Scheduler.CommonMethod = m_CommonMethod;
            m_HSUPA_Scheduler.HSUPA_BearerSelector = m_BearerSelector;
            
            //m_HSUPA_Scheduler.BearerSelector = m_BearerSelector;
            m_RateCtrl.BearerSelector = m_BearerSelector;
            //m_RateCtrl.CommonMethod = m_CommonMethod;
            m_RateCtrl.CommonParams = m_CommonParams;
            m_CellResultUpdater.CommonParams = m_CommonParams;
            //m_OutTTIResult.CommonParams = m_CommonParams;
            //m_CellResultUpdater.CalcIo = m_HSUPA_CalcIo;
            m_HSUPA_ScheduleCtrl.CommonParams = m_CommonParams;
            //m_HSUPA_ScheduleCtrl.CommonMethod = m_CommonMethod;
            m_HSUPA_ScheduleCtrl.HSUPA_CalcIo = m_HSUPA_CalcIo;
            m_HSUPA_ScheduleCtrl.HSUPA_Scheduler = m_HSUPA_Scheduler;
            m_HSUPA_ScheduleCtrl.CellResultUpdater = m_CellResultUpdater;
            m_HSUPA_ScheduleCtrl.BearerSelector = m_BearerSelector;
            m_HSUPA_ScheduleCtrl.HARQCtrl = m_HARQCtrl;
            m_HSUPA_ScheduleCtrl.OutTTIResult = m_OutTTIResult;
            //m_cellResult.CommonParam = m_CommonParams;
            m_HSUPA_AccessControl.CommonParam = m_CommonParams;

            //m_cellResult.CommonParam = m_CommonParams;
            //m_userResult.CommonParam = m_CommonParams;

           
            CalcSource.GetBear += m_BearerSelector.GetBearByRate;         
            
            m_HSUPA_AccessControl.Execute();

            m_HSUPACellList = m_CommonParams.CellList;//UPA小区

            InitSimData();
        }
예제 #4
0
        public void Init()
        {
            calcIo = new HSUPA_CalcIo();
            context = MockContext.CreatContext();
            commonParam = new HSUPA_CommonParam(context);
            interfCalc = new MockInterfCalc();
            getLinkLoss = new MockGetLinkloss();
            bearerSelector = new HSUPA_BearerSelector(commonParam);
            calcIo.UMTSInterfCalc = new UMTSInterfCalc(interfCalc, getLinkLoss);
            cell = MockCell.CreatUMTSSimCell(0, 0);
            cell.CellType = CarrierTypeOfUMTS.HSUPA;

            user1 = MockUser.CreatUMTSPSUser();
            user1.MaxRSCPCell = cell;
            user1.MaxRSCPCell.UMTSInterfCells = new List<ISimCellBase>();
            user1.MaxRSCPCell.HSUPA_CurRxPower = 10;
            user1.MaxRSCPCell.HSUPA_UsedRxPower = 10;
            user1.IsScheduledInTTI = true;


            calcIo.CommonParams = commonParam;
        }
예제 #5
0
 public void Init()
 {
     scheduler = new HSUPA_Scheduler();
     context = MockContext.CreatContext();
     commonParam = new HSUPA_CommonParam(context);
     commonParam.NewSimTTIStart(commonParam.TTILength);
     rateCtrl = new HSUPA_UserScheduleRateCtrl();
     calcIo = new HSUPA_CalcIo();
     interfCalc = new MockInterfCalc();
     getLinkLoss = new MockGetLinkloss();
     bearerSelector = new HSUPA_BearerSelector(commonParam);
     rateCtrl.CommonParams = commonParam;
     scheduler.CommonParams = commonParam;
     calcIo.CommonParams = commonParam;
     calcIo.UMTSInterfCalc = new UMTSInterfCalc(interfCalc, getLinkLoss);
     scheduler.HSUPA_CalcIo = calcIo;
     scheduler.RateCtrl = rateCtrl;
     cell = MockCell.CreatUMTSSimCell(0,0);
     user = MockUser.CreatUMTSPSUser();
     user.MaxRSCPCell = cell;
     rateCtrl.BearerSelector = bearerSelector;
     scheduler.HSUPA_BearerSelector = bearerSelector;
 }