using AR;
using System;
using System.Collections.Generic;
using System.Drawing;
using System.Linq;
using System.Text;

namespace Project
{
    public partial class FMain
    {

        public void _STEP_HOME_DELAY_START(eSMStep step)
        {
            //각 파트의 초기 값을 설정해준다.
            DIO.SetBuzzer(false);

            //홈이완료되었으므로 3초정도 기다려준다.
            PUB.log.AddAT("Timer started for home completion confirmation");
            HomeSuccessTime = DateTime.Now;
        }

        public StepResult _STEP_HOME_DELAY(eSMStep step, TimeSpan stepTime, TimeSpan seqTime)
        {
            //*********************
            //**    하드웨어 조건 확인
            //*********************
            if (CheckHomeProcess_HW_Available(false) == false)
            {
                return StepResult.Error;
            }

            var tsHome = DateTime.Now - HomeSuccessTime;
            if (tsHome.TotalSeconds >= 3.0)
            {
                if (PUB.mot.HasMoving == false)
                {
                    //모든축의 위치를 0으로 한다
                    //Pub.mot.ClearPosition();

                    //각 파트의 초기 값을 설정해준다.
                    DIO.SetBuzzer(false);

                    PUB.flag.set(eVarBool.FG_USERSTEP, false, "SM_HOME");
                    PUB.log.AddI("Moving to home verification code due to home operation completion");

                    HomeChkTime = DateTime.Now;
                    PUB.sm.SetNewStep(eSMStep.HOME_CONFIRM);
                }
            }
            return StepResult.Wait;
        }

    }
}
