#include "Delay.h"

Delay::Delay()
{
}

Delay::~Delay()
{
}

/**
 * @brief 定时器
 *
 * @param IN 定时器触发条件
 * @param PT 定时器时间设置 单位s
 * @return true 到达定时时间
 * @return false 未到定时时间
 */
bool Delay::Start(bool IN, int PT)
{
    EN = IN;
    if (EN && cost < PT)
    {
        if (!flag)
        {
            time(&start);
            flag = true;
        }
        time(&end);
        cost = difftime(end, start);
    }
    else
    {
        cost = 0;
        flag = false;
    }
    return cost >= PT;
}