Example #1
0
 private object GetObjectValue(Repeater repeater, string propertyName)
 {
     PropModelConfig propModelConfig = new PropModelConfig();
     AntConfig antConfig = new AntConfig();
     if (this.IsMainPropModel(propertyName))
     {
         propModelConfig = repeater.PropModels[0];
         propertyName = propertyName.Substring("Main".Length);
         return this.GetPropModelValue(propModelConfig, propertyName);
     }
     if (this.IsExtPropModel(propertyName))
     {
         if (repeater.PropModels.Count == 2)
         {
             propModelConfig = repeater.PropModels[1];
         }
         propertyName = propertyName.Substring("Ext".Length);
         return this.GetPropModelValue(propModelConfig, propertyName);
     }
     if (!this.m_IsDonorSide)
     {
         antConfig = repeater.ConverageAntConfig;
         return this.GetAntConfigValue(antConfig, propertyName);
     }
     if (this.m_IsDonorSide)
     {
         antConfig = repeater.DonorAntConfig;
         return this.GetAntConfigValue(antConfig, propertyName);
     }
     return string.Empty;
 }
Example #2
0
 public void AddRepeater(object sender, Repeater newRepeater)
 {
     ProjectSingleton.CurrentProject.NeedPromptSave = true;
     List<Repeater> list = new List<Repeater>();
     list.Add(newRepeater);
     this.AddRepeater(sender, list);
 }
Example #3
0
 public void CopyFrom(Repeater cloneRepeater)
 {
     this.DX = cloneRepeater.DX;
     this.DY = cloneRepeater.DY;
     this.Comments = cloneRepeater.Comments;
     this.Equipment = cloneRepeater.Equipment;
     this.ID = cloneRepeater.ID;
     this.LinkDelay = cloneRepeater.LinkDelay;
     this.LinkLoss = cloneRepeater.LinkLoss;
     this.LinkType = cloneRepeater.LinkType;
     this.Name = cloneRepeater.Name;
     this.DonorAntConfig = cloneRepeater.DonorAntConfig;
     this.ConverageAntConfig = cloneRepeater.ConverageAntConfig;
     this.DonorAntConfig.TxPowerRatio = cloneRepeater.DonorAntConfig.TxPowerRatio;
     this.UlTotalGain = cloneRepeater.UlTotalGain;
     this.DlTotalGain = cloneRepeater.DlTotalGain;
     this.Visible = cloneRepeater.Visible;
     this.Active = cloneRepeater.Active;
     this.PropModels = cloneRepeater.PropModels;
     if (this.Parent.Name != cloneRepeater.Parent.Name)
     {
         this.Parent.RepeaterConfig.Remove(this);
         cloneRepeater.Parent.RepeaterConfig.Add(this);
     }
     this.Parent = cloneRepeater.Parent;
 }
Example #4
0
 public Repeater Clone()
 {
     Repeater repeater = new Repeater();
     repeater.DX = this.DX;
     repeater.DY = this.DY;
     repeater.Comments = this.Comments;
     repeater.Equipment = this.Equipment;
     repeater.ID = this.ID;
     repeater.LinkDelay = this.LinkDelay;
     repeater.LinkLoss = this.LinkLoss;
     repeater.LinkType = this.LinkType;
     repeater.Name = this.Name;
     repeater.Parent = this.Parent;
     repeater.PropModels = this.PropModels;
     repeater.DonorAntConfig = this.DonorAntConfig;
     repeater.ConverageAntConfig = this.ConverageAntConfig;
     repeater.DonorAntConfig.TxPowerRatio = this.DonorAntConfig.TxPowerRatio;
     repeater.UlTotalGain = this.UlTotalGain;
     repeater.DlTotalGain = this.DlTotalGain;
     repeater.Visible = this.Visible;
     repeater.Active = this.Active;
     return repeater;
 }
Example #5
0
 public static void GetOneRepeater(string name, CollectionsModel model)
 {
     RepeaterCollection repeaterColl = model.RepeaterColl;
     List<int> repeaterIDList = new List<int>();
     Repeater repeaterByName = new Repeater();
     if (repeaterColl.GetRepeaterByName(name) != null)
     {
         repeaterByName = repeaterColl.GetRepeaterByName(name);
         int iD = repeaterByName.ID;
         repeaterIDList.Add(iD);
     }
     ViewNetEntityEventArgs args = new ViewNetEntityEventArgs(null, null, repeaterIDList,null);
     INetEntity gisINetEntity = model.GisINetEntity;
     if (repeaterIDList.Count > 0)
     {
         GeoXYPoint geoXYPoiny = new GeoXYPoint(repeaterByName.Parent.Parent.X + repeaterByName.DX, repeaterByName.Parent.Parent.Y + repeaterByName.DY);
         gisINetEntity.MoveMapTo(geoXYPoiny);
         gisINetEntity.MapRedraw();
     }
     else
     {
         gisINetEntity.MapRedraw();
     }
 }
Example #6
0
 public void DeleteRepeater(object sender, Repeater delRepeater)
 {
     List<Repeater> delRepeaters = new List<Repeater>();
     delRepeaters.Add(delRepeater);
     this.DeleteRepeater(sender, delRepeaters);
 }
Example #7
0
 private void SetEquipemnt(Repeater temp)
 {
     temp.Equipment = this.m_CollectionModel.RepeaterEquipCollection.GetRepeaterEquipById(temp.Equipment.ID);
 }
Example #8
0
 private GeoRepeater GetGeoNERepeater(Repeater lteRepeater)
 {
     GeoRepeater repeater = new GeoRepeater(lteRepeater.DX, lteRepeater.DY);
     repeater.Azimuth = 0.0;
     if (null != lteRepeater.ConverageAntConfig)
     {
         repeater.Azimuth = lteRepeater.ConverageAntConfig.Azimuth;
     }
     repeater.ID = lteRepeater.ID;
     repeater.Name = lteRepeater.Name;
     repeater.Label = lteRepeater.Name;
     repeater.Visible = lteRepeater.Visible;
     repeater.Cell = Transceiver.GetGeoNECell(lteRepeater.Parent);
     return repeater;
 }
Example #9
0
 private void ConvertXLSToRepeater(SubsystemDataImple systemDateImple, XlsTable xlsNetWorkTable)
 {
     Dictionary<string, string> xlsNameToProper = new Dictionary<string, string>();
     XLSProConst.RepeatersToObj(xlsNameToProper);
     List<Repeater> list = new List<Repeater>();
     for (int i = 0; i < xlsNetWorkTable.Data.Rows.Count; i++)
     {
         DataRow row = xlsNetWorkTable.Data.Rows[i];
         try
         {
             Repeater item = new Repeater();
             item.Name = row["Name"].ToString();
             item.Active = bool.Parse(row["Active"].ToString());
             item.DX = double.Parse(row["DX(m)"].ToString());
             item.DY = double.Parse(row["DY(m)"].ToString());
             item.LinkType = (RepeaterLinkType) Enum.Parse(typeof(RepeaterLinkType), row["Link Type"].ToString());
             item.LinkLoss = float.Parse(row["Link Loss(dB)"].ToString());
             item.LinkDelay = float.Parse(row["Link Delay(dB)"].ToString());
             item.UlTotalGain = float.Parse(row["Upload Total Gain(dB)"].ToString());
             item.DlTotalGain = float.Parse(row["Download Total Gain(dB)"].ToString());
             item.Comments = row["Comment"].ToString();
             item.DonorAntConfig = new AntConfig();
             AntConfig config = new AntConfig();
             config.OutdoorAntenna = this.m_Model.Antennas.FindAntennaByName(row["Antenna Donor side"].ToString());
             config.Feeder = this.m_Model.FeederColl.FindFeederByName(row["Feeder Donor Side"].ToString());
             config.UlFeederLength = float.Parse(row["Feeder Length Tansmission(Donor)"].ToString());
             config.DlFeederLength = float.Parse(row["Feeder Length Reception(Donor)"].ToString());
             config.Height = float.Parse(row["Antenna Height(Donor)(m)"].ToString());
             config.Azimuth = float.Parse(row["Azimuth(Donor)"].ToString());
             config.Tilt = float.Parse(row["Mechanical Downtilt(Donor)"].ToString());
             item.DonorAntConfig = config;
             AntConfig config2 = new AntConfig();
             config2.OutdoorAntenna = this.m_Model.Antennas.FindAntennaByName(row["Antenna Coverage Side"].ToString());
             config2.Feeder = this.m_Model.FeederColl.FindFeederByName(row["Feeder Coverage Side"].ToString());
             config2.UlFeederLength = float.Parse(row["Feeder Length Transmission(Coverage)"].ToString());
             config2.DlFeederLength = float.Parse(row["Feeder Length Reception(Coverage)"].ToString());
             config2.Height = float.Parse(row["Antenna Height(Coverage)(m)"].ToString());
             config2.Azimuth = float.Parse(row["Azimuth(Coverage)"].ToString());
             config2.Tilt = float.Parse(row["Mechanical Downtilt(Coverage)"].ToString());
             item.ConverageAntConfig = config2;
             item.Equipment = this.m_Model.RepeaterEquipCollection.GetRepeaterEquipByName(row["Equipment"].ToString());
             item.PropModels = new List<PropModelConfig>();
             PropModelConfig config3 = new PropModelConfig();
             config3.PropModelID = NECommon.GetPropIDByName(row["Main propagation model"].ToString(), this.m_Model.PropagetionColl.GetPropagationModelList());
             config3.CalcRadius = int.Parse(row["Main calculation radius (m)"].ToString());
             config3.CalcResolution = int.Parse(row["Main resolution"].ToString());
             item.PropModels.Add(config3);
             if (row["Extended propagation model"].ToString() != string.Empty)
             {
                 PropModelConfig config4 = new PropModelConfig();
                 config4.PropModelID = NECommon.GetPropIDByName(row["Extended propagation model"].ToString(), this.m_Model.PropagetionColl.GetPropagationModelList());
                 config4.CalcRadius = int.Parse(row["Extended calculation radius (m)"].ToString());
                 config4.CalcResolution = int.Parse(row["Extended resolution"].ToString());
                 item.PropModels.Add(config4);
             }
             foreach (string str2 in xlsNameToProper.Keys)
             {
                 string str3 = row[str2].ToString();
                 if (str2.Equals("Donor Cell"))
                 {
                     Transceiver transceiver = new Transceiver();
                     transceiver.Name = str3;
                     item.Parent = transceiver;
                 }
             }
             list.Add(item);
         }
         catch (Exception exception)
         {
             this.m_Model.EventVierService.WriteLog("Repeaters Table's " + (i + 1) + "row import error", Huawei.UNet.Frame.Interface.LogLevel.Warning);
             WriteLog.Logger.Error(exception.StackTrace);
         }
     }
     systemDateImple.LTERepeater = list;
 }
Example #10
0
 public RepeaterObjExtractor(Repeater Repeater, IPropagModelCollection PropaCollection)
 {
     this.m_Repeater = Repeater;
     this.m_PropaCollection = PropaCollection;
 }
Example #11
0
 public RepeaterObjExtractor(Repeater Repeater, IPropagModelCollection PropaCollection, bool IsDonorSide) : this(Repeater, PropaCollection)
 {
     this.m_IsDonorSide = IsDonorSide;
 }
Example #12
0
 private void SetRepeaterDonorAntenna(Repeater repeater)
 {
     AntennaEntity entity = null;
     AntConfig donorAntConfig = repeater.DonorAntConfig;
     if ((donorAntConfig != null) && (donorAntConfig.OutdoorAntenna != null))
     {
         entity = this.m_AtennaCollction.FindAntennaByName(donorAntConfig.OutdoorAntenna.Name);
     }
     donorAntConfig.OutdoorAntenna = entity;
 }
Example #13
0
 private void SetRepeaterCoverAntenna(Repeater repeater)
 {
     AntennaEntity entity = null;
     AntConfig converageAntConfig = repeater.ConverageAntConfig;
     if ((converageAntConfig != null) && (converageAntConfig.OutdoorAntenna != null))
     {
         entity = this.m_AtennaCollction.FindAntennaByName(converageAntConfig.OutdoorAntenna.Name);
     }
     converageAntConfig.OutdoorAntenna = entity;
 }
Example #14
0
 public bool LogicRepeaterValidate(ref string info, Repeater repeater, string oldName, List<string> newNameList)
 {
     string str;
     string str2;
     string str3;
     PropModelConfig config;
     PropModelConfig config2;
     bool flag = true;
     info = string.Empty;
     flag &= DataValidate.NotEmptyString(ref info, "Name", repeater.Name, out str);
     flag &= DataValidate.NotEmptyString(ref info, "Donor Cell", repeater.Parent, out str2);
     flag &= DataValidate.NotEmptyString(ref info, "LinkType", repeater.LinkType, out str3);
     flag &= this.IsRepeaterRepeatName(ref info, repeater.Name, oldName, newNameList);
     flag &= this.IsValidateCell(ref info, repeater.Parent);
     flag &= this.IsValidateEquipment(ref info, repeater.Equipment);
     flag &= this.IsValidateDonorAntenna(ref info, repeater.DonorAntConfig);
     flag &= this.IsValidateCoverAntenna(ref info, repeater.ConverageAntConfig);
     flag &= this.IsValidateDonorFeeder(ref info, repeater.DonorAntConfig);
     flag &= this.IsValidateCoverageFeeder(ref info, repeater.ConverageAntConfig);
     flag &= this.IsValidateMainPro(ref info, repeater.PropModels, out config);
     flag &= this.IsValidateExPro(ref info, repeater.PropModels, out config2);
     if (!flag)
     {
         WriteLog.Logger.Debug("Validate Repeater Failed:" + info);
     }
     Transceiver tranceiverByName = this.m_CellCollection.GetTranceiverByName(str2);
     AntennaEntity outdoorAntenna = repeater.ConverageAntConfig.OutdoorAntenna;
     repeater.Parent = tranceiverByName;
     if (this.m_RepeaterCollection.GetRepeaterByName(oldName) != null)
     {
         repeater.ID = this.m_RepeaterCollection.GetRepeaterByName(oldName).ID;
     }
     this.SetRepeaterDonorAntenna(repeater);
     this.SetRepeaterCoverAntenna(repeater);
     repeater.PropModels = new List<PropModelConfig>();
     repeater.PropModels.Add(config);
     if (config2 != null)
     {
         repeater.PropModels.Add(config2);
     }
     return flag;
 }
Example #15
0
 public bool LogicRepeaterValidate(ref string info, Repeater repeater, string oldName)
 {
     return this.LogicRepeaterValidate(ref info, repeater, oldName, new List<string>());
 }
Example #16
0
 public bool ValidateObj(string oriCellName, Repeater repeater, List<Repeater> excludeRepeater)
 {
     this.m_OldCellName = oriCellName;
     short cellId = this.GetCellId(oriCellName);
     short validatedID = 0;
     IExtractor ex = new RepeaterObjExtractor(repeater, this.m_Model.PropagetionColl);
     this.m_CellDesc = new RepeaterDesc(this.m_Model, new Repeater(), excludeRepeater);
     bool flag = this.Validate(ref this.m_Info, this.m_CellDesc, ex, cellId) && this.Validate(ref this.m_Info, this.m_PropModelConfigDesc, ex, validatedID);
     ex = new RepeaterObjExtractor(repeater, this.m_Model.PropagetionColl, false);
     flag = flag && this.Validate(ref this.m_Info, this.m_CoverageAntConfigDesc, ex, validatedID);
     ex = new RepeaterObjExtractor(repeater, this.m_Model.PropagetionColl, true);
     flag = flag && this.Validate(ref this.m_Info, this.m_DonorAntConfigDesc, ex, validatedID);
     repeater.CopyFrom(this.m_CellDesc.GetModel());
     repeater.PropModels = this.m_PropModelConfigDesc.GetModel();
     repeater.DonorAntConfig = this.m_DonorAntConfigDesc.GetModel();
     repeater.ConverageAntConfig = this.m_CoverageAntConfigDesc.GetModel();
     return flag;
 }