// Decompiled with JetBrains decompiler
// Type: SE0085.StCl.scSectStat
// Assembly: SE0085StCl, Version=1.0.0.1, Culture=neutral, PublicKeyToken=null
// MVID: 2F536775-F65D-4A2A-A94A-55B55F096E84
// Assembly location: C:\Users\Abishek\Downloads\SchneiderCode_Breaker_09292016\Breaker Schedule-20160930T014118Z\Breaker Schedule\Solution for gathering Breaker Data\DMS\bin\Debug\SE0085StCl.dll

namespace SE0085.StCl
{
  public class scSectStat
  {
    private scGateData[] _Gate;
    private int _SectNum;
    private int _BarriersOpen;
    private int _BarriersTotal;
    private int _ECNcount;

    public int SectNum
    {
      get
      {
        return this._SectNum;
      }
      set
      {
        this._SectNum = value;
      }
    }

    public string Gate1
    {
      get
      {
        string str = "";
        switch (this._Gate[0].GateStatus)
        {
          case emSectStat.NA:
            str = "NOT REQ";
            break;
          case emSectStat.NotAvailable:
            str = "NOT AVAIL";
            break;
          case emSectStat.InQueue:
            str = "IN QUEUE";
            break;
          case emSectStat.InProcess:
            str = "IN PROCESS";
            break;
          case emSectStat.Complete:
            str = "COMPLETE";
            break;
        }
        return str;
      }
    }

    public string Gate2
    {
      get
      {
        string str = "";
        switch (this._Gate[1].GateStatus)
        {
          case emSectStat.NA:
            str = "NOT REQ";
            break;
          case emSectStat.NotAvailable:
            str = "NOT AVAIL";
            break;
          case emSectStat.InQueue:
            str = "IN QUEUE";
            break;
          case emSectStat.InProcess:
            str = "IN PROCESS";
            break;
          case emSectStat.Complete:
            str = "COMPLETE";
            break;
        }
        return str;
      }
    }

    public string Gate3
    {
      get
      {
        string str = "";
        switch (this._Gate[2].GateStatus)
        {
          case emSectStat.NA:
            str = "NOT REQ";
            break;
          case emSectStat.NotAvailable:
            str = "NOT AVAIL";
            break;
          case emSectStat.InQueue:
            str = "IN QUEUE";
            break;
          case emSectStat.InProcess:
            str = "IN PROCESS";
            break;
          case emSectStat.Complete:
            str = "COMPLETE";
            break;
        }
        return str;
      }
    }

    public string Gate4
    {
      get
      {
        string str = "";
        switch (this._Gate[3].GateStatus)
        {
          case emSectStat.NA:
            str = "NOT REQ";
            break;
          case emSectStat.NotAvailable:
            str = "NOT AVAIL";
            break;
          case emSectStat.InQueue:
            str = "IN QUEUE";
            break;
          case emSectStat.InProcess:
            str = "IN PROCESS";
            break;
          case emSectStat.Complete:
            str = "COMPLETE";
            break;
        }
        return str;
      }
    }

    public string Gate5
    {
      get
      {
        string str = "";
        switch (this._Gate[4].GateStatus)
        {
          case emSectStat.NA:
            str = "NOT REQ";
            break;
          case emSectStat.NotAvailable:
            str = "NOT AVAIL";
            break;
          case emSectStat.InQueue:
            str = "IN QUEUE";
            break;
          case emSectStat.InProcess:
            str = "IN PROCESS";
            break;
          case emSectStat.Complete:
            str = "COMPLETE";
            break;
        }
        return str;
      }
    }

    public string Gate6
    {
      get
      {
        string str = "";
        switch (this._Gate[5].GateStatus)
        {
          case emSectStat.NA:
            str = "NOT REQ";
            break;
          case emSectStat.NotAvailable:
            str = "NOT AVAIL";
            break;
          case emSectStat.InQueue:
            str = "IN QUEUE";
            break;
          case emSectStat.InProcess:
            str = "IN PROCESS";
            break;
          case emSectStat.Complete:
            str = "COMPLETE";
            break;
        }
        return str;
      }
    }

    public int BarriersOpen
    {
      get
      {
        return this._BarriersOpen;
      }
      set
      {
        this._BarriersOpen = value;
      }
    }

    public int BarriersTotal
    {
      get
      {
        return this._BarriersTotal;
      }
      set
      {
        this._BarriersTotal = value;
      }
    }

    public string BarrierStat
    {
      get
      {
        return this._BarriersOpen.ToString() + "/" + this._BarriersTotal.ToString();
      }
    }

    public int ECNcount
    {
      get
      {
        return this._ECNcount;
      }
      set
      {
        this._ECNcount = value;
      }
    }

    public scSectStat()
    {
      this._Gate = new scGateData[6];
      this._SectNum = 1;
      scGateData[] gate = this._Gate;
      int index = 0;
      while (index < gate.Length)
      {
        scGateData scGateData = gate[index];
        this._Gate[0] = new scGateData();
        this._Gate[1] = new scGateData();
        this._Gate[2] = new scGateData();
        this._Gate[3] = new scGateData();
        this._Gate[4] = new scGateData();
        this._Gate[5] = new scGateData();
        checked { ++index; }
      }
      this._BarriersOpen = 0;
      this._BarriersTotal = 0;
      this._ECNcount = 0;
    }

    public scGateData get_Gate(int index)
    {
      return this._Gate[index];
    }

    public void set_Gate(int index, scGateData value)
    {
      this._Gate[index] = value;
    }
  }
}
