forked from flutter/engine
-
Notifications
You must be signed in to change notification settings - Fork 0
/
delayed_task.cc
43 lines (32 loc) · 1.11 KB
/
delayed_task.cc
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
// Copyright 2013 The Flutter Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#define FML_USED_ON_EMBEDDER
#include "flutter/fml/delayed_task.h"
namespace fml {
DelayedTask::DelayedTask(size_t order,
const fml::closure& task,
fml::TimePoint target_time,
fml::TaskSourceGrade task_source_grade)
: order_(order),
task_(task),
target_time_(target_time),
task_source_grade_(task_source_grade) {}
DelayedTask::~DelayedTask() = default;
DelayedTask::DelayedTask(const DelayedTask& other) = default;
const fml::closure& DelayedTask::GetTask() const {
return task_;
}
fml::TimePoint DelayedTask::GetTargetTime() const {
return target_time_;
}
fml::TaskSourceGrade DelayedTask::GetTaskSourceGrade() const {
return task_source_grade_;
}
bool DelayedTask::operator>(const DelayedTask& other) const {
if (target_time_ == other.target_time_) {
return order_ > other.order_;
}
return target_time_ > other.target_time_;
}
} // namespace fml