Пример #1
0
 public void ConfigureProcessor(BasicMLDataSet dataSet)
 {
     IMLDataPair[] pairArray;
     int num;
     double num2;
     int num3;
     double num4;
     int num5;
     bool flag;
     this.InC = new ScalerC[dataSet.InputSize];
     goto Label_06B9;
     Label_0017:
     if (flag)
     {
         num2 = pairArray[0].IdealArray[num5];
         goto Label_033D;
     }
     if ((((uint) num) | uint.MaxValue) != 0)
     {
         if ((((uint) num3) | 0x7fffffff) != 0)
         {
             return;
         }
         goto Label_06B9;
     }
     goto Label_00D3;
     Label_00A8:
     num5++;
     Label_00AF:
     flag = num5 < dataSet.IdealSize;
     if ((((uint) num5) + ((uint) num)) <= uint.MaxValue)
     {
         goto Label_0017;
     }
     Label_00D3:
     if (!flag)
     {
         flag = !num4.Equals((double) 0.0);
         if (!flag)
         {
             this.OutC[num5].D = 1.0;
             if ((((uint) num2) | 4) == 0)
             {
                 goto Label_0400;
             }
             if (((uint) num2) >= 0)
             {
                 goto Label_015E;
             }
         }
         this.OutC[num5].D = this.B / num4;
         if (((uint) flag) >= 0)
         {
             if ((((uint) num3) + ((uint) num)) <= uint.MaxValue)
             {
                 if (((((uint) num5) - ((uint) num5)) <= uint.MaxValue) && ((((uint) num) & 0) != 0))
                 {
                     goto Label_063E;
                 }
                 this.OutC[num5].C = (this.B - this.A) / 2.0;
                 goto Label_00A8;
             }
             if (((uint) num3) <= uint.MaxValue)
             {
                 goto Label_0399;
             }
             goto Label_036C;
         }
         goto Label_0286;
     }
     this.OutC[num5].D = (this.B - this.A) / (num4 - num2);
     this.OutC[num5].C = 1.0 * (((num2 * (this.B - this.A)) / (num4 - num2)) - this.A);
     if ((((uint) num) & 0) != 0)
     {
         goto Label_0286;
     }
     if ((((uint) num3) - ((uint) num3)) > uint.MaxValue)
     {
         goto Label_0399;
     }
     goto Label_00A8;
     Label_015E:
     this.OutC[num5].C = 0.0;
     goto Label_00A8;
     Label_0224:
     num3++;
     Label_0228:
     if (num3 >= pairArray.Count<IMLDataPair>())
     {
         flag = !num2.Equals(num4);
     }
     else
     {
         flag = pairArray[num3].IdealArray[num5] <= num4;
         if (flag)
         {
             goto Label_0224;
         }
         num4 = pairArray[num3].IdealArray[num5];
         if ((((uint) flag) + ((uint) num2)) >= 0)
         {
             goto Label_0224;
         }
     }
     if ((((uint) flag) - ((uint) num3)) <= uint.MaxValue)
     {
         goto Label_00D3;
     }
     goto Label_015E;
     Label_0286:
     if (num3 < pairArray.Count<IMLDataPair>())
     {
         flag = pairArray[num3].IdealArray[num5] >= num2;
         if (!flag)
         {
             num2 = pairArray[num3].IdealArray[num5];
         }
         num3++;
         if ((((uint) flag) - ((uint) num5)) <= uint.MaxValue)
         {
             goto Label_0286;
         }
     }
     else
     {
         num4 = pairArray[0].IdealArray[num5];
         num3 = 0;
         goto Label_0228;
     }
     Label_033D:
     num3 = 0;
     goto Label_0286;
     Label_0361:
     if (flag)
     {
         num2 = pairArray[0].InputArray[num];
         num3 = 0;
         goto Label_05C4;
     }
     num5 = 0;
     goto Label_00AF;
     Label_036C:
     this.InC[num].C = ((num2 * (this.B - this.A)) / (num4 - num2)) - this.A;
     Label_0399:
     num++;
     Label_039E:
     flag = num < dataSet.InputSize;
     goto Label_0361;
     Label_0400:
     if (!flag)
     {
         goto Label_04AF;
     }
     this.InC[num].D = this.B / num4;
     if (0 != 0)
     {
         goto Label_04CA;
     }
     this.InC[num].C = (this.B - this.A) / 2.0;
     goto Label_0399;
     Label_0484:
     flag = !num4.Equals((double) 0.0);
     if (((uint) num) <= uint.MaxValue)
     {
         goto Label_0400;
     }
     Label_04AF:
     this.InC[num].D = 1.0;
     Label_04CA:
     this.InC[num].C = 0.0;
     goto Label_0399;
     Label_0542:
     flag = pairArray[num3].InputArray[num] <= num4;
     if (!flag)
     {
         if (((uint) num2) > uint.MaxValue)
         {
             goto Label_0017;
         }
         num4 = pairArray[num3].InputArray[num];
     }
     num3++;
     Label_057E:
     flag = num3 < pairArray.Count<IMLDataPair>();
     if ((((uint) num3) + ((uint) flag)) >= 0)
     {
         if (flag)
         {
             goto Label_0542;
         }
         if ((((uint) num3) - ((uint) flag)) < 0)
         {
             goto Label_0361;
         }
         flag = !num2.Equals(num4);
         if (!flag)
         {
             goto Label_0484;
         }
         if ((((uint) num) - ((uint) num2)) < 0)
         {
             goto Label_05A5;
         }
         this.InC[num].D = (this.B - this.A) / (num4 - num2);
         if (0 == 0)
         {
             goto Label_036C;
         }
         goto Label_0399;
     }
     return;
     Label_0592:
     num4 = pairArray[0].InputArray[num];
     num3 = 0;
     goto Label_057E;
     Label_05A5:
     num3++;
     if ((((uint) num4) | 2) == 0)
     {
         goto Label_0484;
     }
     Label_05C4:
     flag = num3 < pairArray.Count<IMLDataPair>();
     if ((((uint) num) | 1) == 0)
     {
         goto Label_0542;
     }
     if ((((uint) num) - ((uint) num4)) < 0)
     {
         goto Label_057E;
     }
     if (flag)
     {
         flag = pairArray[num3].InputArray[num] >= num2;
     }
     else
     {
         if ((((uint) flag) + ((uint) flag)) <= uint.MaxValue)
         {
             goto Label_0592;
         }
         if ((((uint) num3) + ((uint) num3)) >= 0)
         {
             goto Label_0678;
         }
         goto Label_05A5;
     }
     Label_063E:
     if (!flag)
     {
         num2 = pairArray[num3].InputArray[num];
         if ((((uint) num) | 0x80000000) != 0)
         {
             goto Label_05A5;
         }
     }
     if ((((uint) num2) + ((uint) num2)) <= uint.MaxValue)
     {
         goto Label_05A5;
     }
     goto Label_0592;
     Label_0678:
     num = 0;
     goto Label_039E;
     Label_06B9:
     this.OutC = new ScalerC[dataSet.IdealSize];
     pairArray = dataSet.ToArray<IMLDataPair>();
     goto Label_0678;
 }