public void SetParameters(ControlSystemMode initialMode, params double[] times)
        {
            if (times.Length == 0 || times.Any(t => t < 0d))
            {
                throw new Exception("Times should be more than 0 and not empty");
            }

            mode    = initialMode;
            toggles = times.ToList();
        }
 private void Toggle()
 {
     if (mode == ControlSystemMode.OpenLoop)
     {
         mode = ControlSystemMode.CloseLoop;
     }
     else
     {
         mode = ControlSystemMode.OpenLoop;
     }
 }
 public ControlSystemMode ToggleMode()
 {
     if (mode == ControlSystemMode.CloseLoop)
     {
         mode = ControlSystemMode.OpenLoop;
     }
     else
     {
         mode = ControlSystemMode.CloseLoop;
     }
     return(mode);
 }
 public ControlSystemModeToggler(ControlSystemMode initialMode, params double[] times)
 {
     SetParameters(initialMode, times);
 }