Chromium Code Reviews| Index: cc/scheduler/scheduler.h |
| diff --git a/cc/scheduler/scheduler.h b/cc/scheduler/scheduler.h |
| index 93d5b4ec55f9b06f3a2518c9ce9ee367f2369188..96c43500c4366476350c64a6550f72d11d478172 100644 |
| --- a/cc/scheduler/scheduler.h |
| +++ b/cc/scheduler/scheduler.h |
| @@ -8,6 +8,7 @@ |
| #include <string> |
| #include "base/basictypes.h" |
| +#include "base/cancelable_callback.h" |
| #include "base/memory/scoped_ptr.h" |
| #include "base/time.h" |
| #include "cc/base/cc_export.h" |
| @@ -46,6 +47,8 @@ class SchedulerClient { |
| virtual void ScheduledActionAcquireLayerTexturesForMainThread() = 0; |
| virtual void DidAnticipatedDrawTimeChange(base::TimeTicks time) = 0; |
| virtual base::TimeDelta DrawDurationEstimate() = 0; |
| + virtual void PostBeginFrameDeadline(const base::Closure& closure, |
|
nduca
2013/06/21 01:14:18
i think this should be done by the output surface,
brianderson
2013/06/21 01:42:47
I was originally going to implement it that way, b
|
| + base::TimeTicks deadline) = 0; |
| protected: |
| virtual ~SchedulerClient() {} |
| @@ -102,6 +105,7 @@ class CC_EXPORT Scheduler { |
| base::TimeTicks LastBeginFrameOnImplThreadTime(); |
| void BeginFrame(const BeginFrameArgs& args); |
| + void OnBeginFrameDeadline(); |
| std::string StateAsStringForTesting() { return state_machine_.ToString(); } |
| @@ -124,6 +128,7 @@ class CC_EXPORT Scheduler { |
| // workaround. |
| bool safe_to_expect_begin_frame_; |
| BeginFrameArgs last_begin_frame_args_; |
| + base::CancelableClosure begin_frame_deadline_closure_; |
| SchedulerStateMachine state_machine_; |
| bool inside_process_scheduled_actions_; |