24#ifndef MYSQL_SCHEDULER_DELAYED_SCHEDULE_H
25#define MYSQL_SCHEDULER_DELAYED_SCHEDULE_H
Represents Schedule for one-shot, delayed task.
Definition: delayed_schedule.h:40
bool next() override
This function modifies the state of the schedule to next state.
Definition: delayed_schedule.cpp:35
const Scheduler_clock_ptr & get_clock() const override
Obtain task clock.
Definition: delayed_schedule.cpp:41
uint64_t m_task_delay
Delay since clock start point.
Definition: delayed_schedule.h:72
const Time_delay_type & get_task_delay() const override
Gets information about next execution time.
Definition: delayed_schedule.cpp:37
bool is_finished() const override
Definition: delayed_schedule.h:57
Scheduler_clock_ptr m_clock
Clock this schedule is based on.
Definition: delayed_schedule.h:70
Delayed_schedule(Task_id task_id, Scheduler_clock_ptr clock, uint64_t delay)
Constructor.
Definition: delayed_schedule.cpp:31
const Task_id & get_id() const override
Obtain task id.
Definition: delayed_schedule.cpp:45
Task_id m_task_id
This task id.
Definition: delayed_schedule.h:68
Represents the identifier of a task ingested by the scheduler,.
Definition: task_id.h:41
Represents task schedule.
Definition: task_schedule.h:45
Definition: base_dependency_tracker.h:41
std::uint64_t Time_delay_type
Time points are created as a delay from a specific start time (clock relative measure)
Definition: time.h:39
std::shared_ptr< Scheduler_clock > Scheduler_clock_ptr
Definition: scheduler_clock.h:36