void animation::RepeatableAnimation::next_frame() { if (is_last_frame()) { _frame = 0; } else { ++_frame; } }
void animation::RepeatableAnimation::update() { if (is_frame_ended()) { next_frame(); if (not is_last_frame()) { _timer.restart(); } } }
bool animation::RepeatableAnimation::is_animation_ended() const { return is_last_frame(); }
static bool is_last_task_frame(struct unwind_state *state) { return is_last_frame(state) || is_last_aligned_frame(state) || is_last_ftrace_frame(state); }