/// <summary> /// Главный цикл, в котором происходит запуск метода <see cref="StepperMotor.Run"/>. /// </summary> /// <param name="stopTimer">Флаг остановки</param> private void Loop(ref bool stopTimer) { Stepper.Enabled = true; OnStart(this, EventArgs.Empty); while (!stopTimer) { Stepper.Run(); if (Interval > 0 && Stepper.CurrentStepsCount % Interval == 0) { Elapsed(this, EventArgs.Empty); } stopTimer = !Stepper.IsRunning; } Stepper.Enabled = false; StopReason = StopReason == StepperStopReason.Stoped ? StopReason : StepperStopReason.WorkDone; OnStop(this, EventArgs.Empty); }