Esempio n. 1
0
        /// <summary>
        /// 提供给联合仿真的整网结果
        /// </summary>
        /// <returns></returns>
        public SimuResultStruct GetNetworkResult(List<object> obj)
        {
            GetR4ResultList(obj);
            GetTotalNetResult();
            GetTotalUserNum();

            SimuResultStruct srs = new SimuResultStruct();
            srs.NetType = NetWorkType.TDSCDMA ;
            srs.FailedSingleModeUserCount = m_FailedSingleUserNum ;
            srs.SuccessSingleModeUserCount = m_SuccessSingleUserNum ;
            srs.SingleModeUserCount = m_SingleUserNum;
            srs.SuccessMultiModeUserCount = m_MultiUserNum ;
            srs.ULLoad = m_UlLoad ;
            srs.DLLoad = m_DlLoad ;
            srs.ULThroughput = m_ULThroughPut ;
            srs.DLThroughput = m_DLThroughPut ;
            return srs;
        }
Esempio n. 2
0
 public SimuResultStruct GetNetworkResult(List<object> obj)
 {
     CalcAverageCellResult();
     SimuResultStruct simResult = new SimuResultStruct();
     simResult.NetType = NetWorkType.UMTS;
     for (int i = 0; i < FailedAccessedSingleModelUserList.Count; i++)
     {
         simResult.FailedSingleModeUserCount += FailedAccessedSingleModelUserList[i] / snapShotCount;
         simResult.SuccessSingleModeUserCount += AccessedSingleModelUserList[i] / snapShotCount;
         simResult.SingleModeUserCount += SingleModelUserList[i] / snapShotCount;
         simResult.SuccessMultiModeUserCount += AccessedPolyModelUserList[i] / snapShotCount;
         simResult.DLLoad += DLLoadList[i] / snapShotCount;
         simResult.DLThroughput += ThroughPutList[i] / snapShotCount;
         simResult.ULLoad = 0;
         simResult.ULThroughput = 0;
     }
     simResult.DLLoad = simResult.DLLoad / DLLoadList.Count;
     return simResult;            
 }
 public SimuResultStruct GetNetworkResult(List<object> obj)
 {
     int shotTime = obj.Count;
     SimuResultStruct sms = new SimuResultStruct();
     sms.NetType = NetWorkType.UMTS;
     sms.SingleModeUserCount = singleModelUsers.Sum() / shotTime;
     sms.SuccessSingleModeUserCount = accessedSingleModelUsers.Sum() / shotTime;
     sms.FailedSingleModeUserCount = (sms.SingleModeUserCount - sms.SuccessSingleModeUserCount) / shotTime;
     sms.SuccessMultiModeUserCount = polyModelUsers.Sum() / shotTime;
     sms.ULLoad = ulLoad.Sum() / (shotTime * ulLoad.Count);
     sms.DLLoad = dlLoad.Sum() / (shotTime * dlLoad.Count);
     sms.ULThroughput = 0;
     sms.DLThroughput = 0;
     return sms;
 }
Esempio n. 4
0
       private void AddResult(SimuResultStruct verResult,SimuResultStruct result)
       {           
           result.FailedSingleModeUserCount += verResult.FailedSingleModeUserCount;
           result.SuccessMultiModeUserCount += verResult.SuccessMultiModeUserCount;
           result.SingleModeUserCount += verResult.SingleModeUserCount;
           result.SuccessSingleModeUserCount += verResult.SuccessSingleModeUserCount;
           result.ULThroughput += verResult.ULThroughput;
           result.DLThroughput += verResult.DLThroughput;
           result.DLLoad = CalcLoad(result.DLLoad, verResult.DLLoad);
           result.ULLoad = CalcLoad(result.ULLoad, verResult.ULLoad);
 
       }
Esempio n. 5
0
 private SimuResultStruct CalcAverageResult(NetWorkType netType)
 {
     SimuResultStruct result = new SimuResultStruct();
     result.NetType = netType;
     foreach (var version in m_CurrentNetworkDic[netType])
     {
         SimuResultStruct verResult = m_NetVersionDataDic[version];
         AddResult(verResult, result);
     }
     return result;
 }
Esempio n. 6
0
 /// <summary>
 /// 在DataTable里添加版本结果的DataRow
 /// </summary>
 /// <param name="versionType">版本类型</param>
 /// <param name="table">添加了DataRow的DataTable</param>
 private void GenerateNetVersionDataRow(SimuResultStruct resultToShow,DataTable table,NetVersion versionType,bool isAveRes)
 {           
     DataRow row = table.NewRow();
     SetNetVersionDisplay(isAveRes, row, versionType);
     
     Type simuResultType = typeof(SimuResultStruct);   
     FieldInfo[] fields = simuResultType.GetFields();
     
     
     foreach(var field in fields)
     {
         row[field.Name] = field.GetValue(resultToShow).ToString();               
     }
     SetNetVersionDisplay(isAveRes,row,versionType);
     table.Rows.Add(row);          
 }
Esempio n. 7
0
        public void GetNetworkResultTest()
        {
            HSUPAResultManager target = new HSUPAResultManager();

            SimuResultStruct actual = target.GetNetworkResult(objList);
            SimuResultStruct expected = new SimuResultStruct();

            expected.DLLoad = 0;
            expected.DLThroughput = 0;
            expected.FailedSingleModeUserCount = 2;
            expected.NetType = NetWorkType.TDSCDMA;
            expected.SingleModeUserCount = 4;
            expected.SuccessMultiModeUserCount = 2;
            expected.SuccessSingleModeUserCount = 2;
            expected.ULLoad = 0.9f;
            expected.ULThroughput = 180;



            Assert.AreEqual(expected.NetType, actual.NetType);

            Assert.AreEqual(expected.SingleModeUserCount, actual.SingleModeUserCount);

            Assert.AreEqual(expected.ULLoad, actual.ULLoad);

            Assert.AreEqual(expected.ULThroughput, actual.ULThroughput);

        }
Esempio n. 8
0
 //add by xg 5.26
 private void GetWholeResult()
 {
     SimuResultStruct srs = new SimuResultStruct();
     srs.NetType = Huawei.UNet.Frame.Interface.NetWorkType.GSM;
     //整网实际上行吞吐率
     srs.ULThroughput = NetULThroughput();
     srs.DLThroughput = NetDLThroughput();
     srs.DLLoad = NetDLLoad();
     srs.ULLoad = NetULLoad();
     float[] userTypeNum = GetUserNum();
     srs.SingleModeUserCount = userTypeNum[0];
     srs.SuccessMultiModeUserCount = userTypeNum[1];
     srs.SuccessSingleModeUserCount = GetServerSingleNum();
     srs.FailedSingleModeUserCount = srs.SingleModeUserCount - srs.SuccessSingleModeUserCount;
     m_GSMResult.srs = srs;
 }
Esempio n. 9
0
 public SimuResultStruct GetNetworkResult(List<object> obj)
 {
     SimuResultStruct m_SimRes = new SimuResultStruct();
     m_SimRes.NetType = Huawei.UNet.Frame.Interface.NetWorkType.UMTS;
     m_SimRes.DLLoad = 0;
     m_SimRes.DLThroughput = 0;
     m_SimRes.FailedSingleModeUserCount = (float)failedAccessedSingleModelUsers.Sum();
     m_SimRes.SuccessSingleModeUserCount = (float)accessedSingleModelUsers.Sum();
     m_SimRes.SuccessMultiModeUserCount = (float)accessedPolyModelUsers.Sum();
     m_SimRes.SingleModeUserCount = (float)singleModelUsers.Sum();
     m_SimRes.ULLoad = (float)averageULLoad.Sum();
     m_SimRes.ULThroughput = (float)ULThroughPut.Sum();
     return m_SimRes;
 }