Exemplo n.º 1
0
 private void CalculateNetworks(bool minSize, DataGrid resultGrid)
 {
     if (!minSize)
     {
         InternalAddressRow addrRow = CalculateMinimalNetworksNum();
         IPCalculation      ipc     = new IPCalculation(addrRow.Ip, addrRow.Netmask);
         Application.Current.Dispatcher.BeginInvoke(System.Windows.Threading.DispatcherPriority.Background, new Action(() => AddAutomaticRow(ipc, addrRow.HostsNumber)));
     }
     else if (minSize)
     {
         var addrRows = CalculateMinimalNetworksSize();
         foreach (var row in addrRows)
         {
             IPCalculation ipc = new IPCalculation(row.Ip, row.Netmask);
             Application.Current.Dispatcher.BeginInvoke(System.Windows.Threading.DispatcherPriority.Background, new Action(() => AddAutomaticRow(ipc, row.HostsNumber)));
         }
     }
 }
Exemplo n.º 2
0
 public void CalculateManual(bool isMinNumber, bool isMinSize, int?freeAddr = null, int?minNetworks = null)
 {
     ManualDataCollection.Clear();
     if (isMinNumber)
     {
         InternalAddressRow addrRow = CalculateMinimalNetworksNum(freeAddr);
         IPCalculation      ipc     = new IPCalculation(addrRow.Ip, addrRow.Netmask);
         AddManualRow(ipc, addrRow.HostsNumber);
     }
     else if (isMinSize)
     {
         var addrRows = CalculateMinimalNetworksSize(freeAddr);
         foreach (var row in addrRows)
         {
             IPCalculation ipc = new IPCalculation(row.Ip, row.Netmask);
             AddManualRow(ipc, row.HostsNumber);
         }
     }
 }