public PredictionDataManager(LtePredictionGroup pg, IApplicationContext appContext, string savepath) { this.m_ProgressHandle = ServiceHelper.Lookup<IEventViewService>(appContext); this.m_ICellFilterBuilder = ServiceHelper.Lookup<ICellFilterBuilder>(appContext); this.m_ITrafficMCS = ServiceHelper.Lookup<ITrafficMCS>(appContext); this.m_CellFilter = new CellFilter(); IGeoProvider provider = ServiceHelper.Lookup<IGeoProvider>(appContext); this.m_LteCellFilter = new LteCellFilter(provider.GetGeoInfo); this.m_IPLCalcVstr = ServiceHelper.Lookup<IPLCalcDataVstr>(appContext); //add by xujuan m_IGetRelayUEPathLoss = ServiceHelper.Lookup<IGetRelayUEPathLoss>(appContext); this.m_Group = pg; UnionPsService trafficService = this.m_Group.TrafficService as UnionPsService; LTEService service2 = trafficService.PSServiceDic[NetWorkType.LTE] as LTEService; this.m_DLBLER = service2.DLBLER; this.m_ULBLER = service2.ULBLER; this.m_CaseDataManager = new CaseDataManager(this.m_Group, savepath); this.m_NeedCalActualRxIntf = false; this.m_NeedCalMaxRxIntf = false; this.m_NeedCalHandOverArea = false; this.m_NeedCalSymbolRSRP = false; this.m_NeedCalOverlapping = false; this.m_NeedCalRSRQ = false; //add by huna 3.28 this.m_NeedLTEBestServerID = false; this.NeedCreateActualRxPowerValueMatrix(); this.NeedCreateMaxRxPowerValueMartix(); //add by huna 3.28 this.IsNeedLTEBestServerID(); //2011.3.17 this.IsCalcRPDCCHLevel(); //add by huna 3.17 this.IsCalcRPDSCHLevel(); this.IsCalcRPUCCHLevel(); this.IsNeedCalHandOverArea(); this.NeedCalSymbol_RSRP(); this.NeedCalOverlapping(); this.NeedCalRsrq(); this.NeedCreatePenetrationLossValueMatrix(); this.NeedCalULStudy(); //add by huna 3.18 this.NeedCalRULStudy(); this.m_CaseDataManager.NeedCalRSRQ = this.m_NeedCalRSRQ; this.m_CaseDataManager.NeedCalSymbolRSRP = this.m_NeedCalSymbolRSRP; this.SetSavingPath(savepath); //add by huna 3.28 this.m_CaseDataManager.NeedLTEBestServerID = this.m_NeedLTEBestServerID; this.m_CaseDataManager.NeedULLinkloss = this.m_NeedCalRULStudy; //add by huna 4.2 this.m_CaseDataManager.NeedRPDCCHLevel = this.m_NeedCalRPDCCH; this.m_CaseDataManager.NeedRPDSCHLevel = this.m_NeedCalRPDSCH; this.m_CaseDataManager.NeedRPUCCHLevel = this.m_NeedCalRPUCCH; }
public RPUSCH_SINRCase(PredictionDataManager datamanager, IApplicationContext appContext, CaseValueTemp oneBinValueTemp) { this.m_DataManager = datamanager; this.m_ULLinkBear = this.m_DataManager.Group.TrafficTerminal.UpLinkBearer; this.m_UlTxEff = (this.m_DataManager.Group.TrafficService as UnionPsService).UlTxEff;//?? this.m_OffSet = (this.m_DataManager.Group.TrafficService as UnionPsService).UlOffset;//?? this.m_ITrafficMCS = ServiceHelper.Lookup<ITrafficMCS>(appContext); this.m_OneBinValueTemp = oneBinValueTemp; this.m_MaxPower = this.m_DataManager.Group.TrafficTerminal.NetTerminalList[0].MaxTxPower; this.m_NeedPenetrationLoss = this.m_DataManager.NeedPenetrationLoss; this.m_IRCSwitch = Huawei.UNet.Application.Common.IRC.IRC.m_IsON; this.ReadXml(); this.m_isFDD = m_DataManager.Group.IsFDD; }
public static MIMO GetMIMOType(ITrafficMCS iTrafficMcs, SimulationUser user) { MIMO mimo; string str; LTETerminal terminal = user.LTEUser.Terminal.NetTerminalList[0] as LTETerminal; int txNum = GetTxNum(user.BestServiceCarrier); int rxNum = GetRxNum(user.BestServiceCarrier); if (user.LTEUser.LinkType == LinkType.Uplink) { mimo = iTrafficMcs.GetMIMO(terminal.TxAntNumber, rxNum, terminal.UlSmSupported); str = string.Concat(new object[] { terminal.TxAntNumber, "X", rxNum, " SmSupported = ", terminal.UlSmSupported }); } else { mimo = iTrafficMcs.GetMIMO(txNum, terminal.RxAntNumber, terminal.DlSmSupported); str = string.Concat(new object[] { txNum, "X", terminal.RxAntNumber, " SmSupported = ", terminal.DlSmSupported }); } if (mimo == null) { throw new Exception("Can not Get MIMO Configoure: " + str); } return mimo; }