public ComparableCell(IGeoPoint <double> point, IOutdoorCell cell, IList <ILinkBudget <double> > budgetList, byte modBase = 3) { SetupComparableCell(point, cell); ILinkBudget <double> budget = budgetList.FirstOrDefault( x => Math.Abs(x.TransmitPower - cell.RsPower) < Eps && Math.Abs(x.AntennaGain - cell.AntennaGain) < Eps && x.Model.Earfcn == cell.Frequency); if (budget == null) { budget = new LinkBudget(cell); budgetList.Add(budget); } Budget = budget; PciModx = (byte)(cell.Pci % modBase); }
public ComparableCell(IGeoPoint <double> point, IOutdoorCell cell, IList <ILinkBudget <double> > budgetList, IBroadcastModel model, byte pciModx = 0) { SetupComparableCell(point, cell); ILinkBudget <double> budget = budgetList.FirstOrDefault( x => Math.Abs(x.TransmitPower - cell.RsPower) < Eps && Math.Abs(x.AntennaGain - cell.AntennaGain) < Eps); if (budget == null) { budget = new LinkBudget(model, cell.RsPower, cell.AntennaGain); budgetList.Add(budget); } Budget = budget; PciModx = pciModx; }