• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // Copyright 2013 The Flutter Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4 
5 #ifndef FLUTTER_SHELL_COMMON_VSYNC_WAITER_FALLBACK_H_
6 #define FLUTTER_SHELL_COMMON_VSYNC_WAITER_FALLBACK_H_
7 
8 #include "flutter/fml/macros.h"
9 #include "flutter/fml/memory/weak_ptr.h"
10 #include "flutter/fml/time/time_point.h"
11 #include "flutter/shell/common/vsync_waiter.h"
12 
13 namespace flutter {
14 
15 /// A |VsyncWaiter| that will fire at 60 fps irrespective of the vsync.
16 class VsyncWaiterFallback final : public VsyncWaiter {
17  public:
18   VsyncWaiterFallback(TaskRunners task_runners);
19 
20   ~VsyncWaiterFallback() override;
21 
22  private:
23   fml::TimePoint phase_;
24 
25   // |VsyncWaiter|
26   void AwaitVSync() override;
27 
28   FML_DISALLOW_COPY_AND_ASSIGN(VsyncWaiterFallback);
29 };
30 
31 }  // namespace flutter
32 
33 #endif  // FLUTTER_SHELL_COMMON_VSYNC_WAITER_FALLBACK_H_
34