Example #1
0
 private void BinCalc()
 {
     if (!CellSearchSuite.CAL_SUCCESS)
     {
         this.m_Interfaces.EventViewService.WriteLog(LTEPredictionResource.PREDICTION_EVENT_ERROR + LTEPredictionResource.PREDICTION_CALCULATE_ERROR, Huawei.UNet.Frame.Interface.LogLevel.Error);
         WriteLog.Logger.Error(LTEPredictionResource.PREDICTION_EVENT_ERROR + "CellSearchSuite");
     }
     this.CalcBinSuit();
     this.m_CalcStep = CalcStep.BinCalcStep;
 }
Example #2
0
 private void BinCalc()
 {
     if (!this.m_BestServerSuite.CalSuccess)
     {
         this.m_EventViewService.WriteLog(PredictionResource.PREDICTION_EVENT_ERROR + PredictionResource.PREDICTION_CALCULATE_ERROR, Huawei.UNet.Frame.Interface.LogLevel.Error);
         WriteLog.Logger.Error(PredictionResource.PREDICTION_EVENT_ERROR + "CellSearchSuite");
     }
     this.CalcBinSuit();
     this.m_CalcStep = CalcStep.BinCalcStep;
 }
Example #3
0
 /// <summary>
 /// 初始化链路损耗、计算等级、PredictionDataMgr、小区
 /// </summary>
 /// <param name="pg"></param>
 /// <param name="transceiverList"></param>
 /// <param name="savepath"></param>
 private void InitialMember(LtePredictionGroup pg, List<Transceiver> transceiverList, string savepath)
 {
     this.m_Group = pg;
     this.m_LinkPrediction = ServiceHelper.Lookup<ILTELinkLossCalculatorBuilder>(this.m_AppContext).GetCalculator(pg.CellEdgeCoverageProbability);
     this.m_CalcStep = CalcStep.BestServerCalcStep;
     this.m_LinkPrediction.SetPareForPrediction((this.m_Group.TrafficService as UnionPsService).BodyLoss, this.m_Group.TrafficTerminal.NetTerminalList[0].Loss, this.m_Group.TrafficTerminal.Attenuation, this.m_Group.TrafficTerminal.Gain, this.m_Group.CellEdgeCoverageProbability, this.m_Group.IsShadowdowAccout, this.m_Group.IsIndoorCoverage);
     this.m_DataManager = new PredictionDataManager(this.m_Group, this.m_AppContext, savepath);
     this.m_TransceiverList = transceiverList;
 }
Example #4
0
 private void CalculateStart(bool isRF)
 {
     this.m_Group.IsCalSuccess = false;
     this.m_Group.IsContinue = true;
     this.m_Group.NotContinueReason = string.Empty;
     List<GeoPolygonRegion> list = this.AnalysePolygonRegions();
     this.m_ProgressHandle.SetScope(0, 100);
     bool flag = false;
     foreach (GeoPolygonRegion region in list)
     {
         if (!this.m_DataManager.DataPrepare(this.m_BestServerSuite, this.m_BinSuite, this.m_LinkPrediction, region, isRF))
         {
             this.RecordCalcError();
             break;
         }
         flag = true;
         this.m_ProgressHandle.SetProgress(LTEPredictionResource.PREDICTION_PROGRESS_DATAPREPARE_END, 10);
         this.m_ProgressHandle.SetProgress(LTEPredictionResource.PREDICTION_PROGRESS_CALCSTUDYS, 15);
         this.CalculateAllCases();
     }
     if (!flag)
     {
         this.m_CalcStep = CalcStep.FinishCalcStep;
         this.StopRun();
         this.EndClear();
         this.m_CalcStateCallBack();
         if (this.m_Notify != null)
         {
             this.m_Notify();
         }
         this.m_Interfaces.EventViewService.WriteLog(LTEPredictionResource.PREDICTION_END, Huawei.UNet.Frame.Interface.LogLevel.Info);
     }
 }
Example #5
0
 public void UpdateCalc()
 {
     if (CalcStep.BestServerCalcStep == this.m_CalcStep)
     {
         if (!this.m_BestServerSuite.IsCalcCompleted())
         {
             this.m_BestServerSuite.UpdateTime(this.m_binStudiesCount);
         }
         else
         {
             this.BinCalc();
         }
     }
     else if (CalcStep.BinCalcStep == this.m_CalcStep)
     {
         this.m_BinSuite.EclipseTime = this.m_BestServerSuite.EclipseTime;
         if (!((this.m_BinSuite.NeedCalStudyCount == 0) || this.m_BinSuite.IsCalcCompleted()))
         {
             double num;
             this.m_BinSuite.EclipseTime = (num = this.m_BinSuite.EclipseTime) - 1.0;
             this.m_BinSuite.UpdateTime((int) num);
         }
         else
         {
             this.SaveData();
         }
     }
     else if (CalcStep.SaveData == this.m_CalcStep)
     {
         if (!this.m_DataManager.CaseDataMgr.IsCompleted)
         {
             PredictionConst.Progress_StartLength = 90f + (PredictionConst.Progress_Step * this.m_DataManager.CaseDataMgr.SavedCount);
             if (PredictionConst.Progress_StartLength > 100f)
             {
                 PredictionConst.Progress_StartLength = 100f;
             }
             this.m_ProgressHandle.SetTime(LTEPredictionResource.PREDICTION_PROGRESS_CALCSTUDYS + ((int) PredictionConst.Progress_StartLength) + "%", Convert.ToInt32(PredictionConst.Progress_StartLength), 1);
         }
         else
         {
             this.m_CalcStep = CalcStep.FinishCalcStep;
             this.EndCalculate();
         }
     }
 }
Example #6
0
 public void SaveData()
 {
     if (!BinSearchSuite.CAL_SUCCESS)
     {
         this.m_Interfaces.EventViewService.WriteLog(LTEPredictionResource.PREDICTION_EVENT_ERROR + LTEPredictionResource.PREDICTION_CALCULATE_ERROR, Huawei.UNet.Frame.Interface.LogLevel.Error);
         WriteLog.Logger.Error(LTEPredictionResource.PREDICTION_EVENT_ERROR + "BinSearchSuite");
     }
     if (!this.m_Group.IsContinue)
     {
         this.RecordCalcError();
     }
     this.m_CalcStep = CalcStep.SaveData;
     new Thread(new ParameterizedThreadStart(this.EndOneRegionCalculate)).Start(this.m_BinSuite.IsRf);
 }
Example #7
0
 private void InitialMember(PredictionGroup pg, PredictionConfig predictioncfg, OtherSubSysInterface interfaces, string savepath, string projectName, bool isRF)
 {
     this.m_Interfaces = interfaces;
     this.m_Group = pg;
     this.m_CalcStep = CalcStep.BestServerCalcStep;
     if (isRF)
     {
         this.m_ProgressHandle = new ProgressHandle(projectName);
     }
     else
     {
         this.m_ProgressHandle = new ProgressHandle(projectName + pg.Name);
     }
     this.m_LinkPrediction = this.m_Interfaces.LossCalculatorBuilder.GetCalculator(this.m_Group.CellEdgeCoverageProbability);
     this.m_LinkPrediction.SetPareForPrediction((this.m_Group.TrafficService as UnionPsService).BodyLoss, this.m_Group.TrafficTerminal.NetTerminalList[0].Loss, this.m_Group.TrafficTerminal.Attenuation, this.m_Group.TrafficTerminal.Gain, this.m_Group.CellEdgeCoverageProbability, this.m_Group.IsShadowdowAccout, this.m_Group.IsIndoorCoverage);
     this.m_DataManager = new PredictionDataManager(this.m_Group, predictioncfg, this.m_Interfaces, this.m_ProgressHandle, savepath, projectName);
     this.InitialSuite();
 }