119 bool boosted_ =
false;
120 int idle_vsyncs_ = 0;
135 static std::unique_ptr<RenderLoop>
create(
void* native_handle =
nullptr);
Definition render_loop.hpp:81
static constexpr int kIdleVsyncsBeforeLower
Definition render_loop.hpp:85
bool boosted() const
Definition render_loop.hpp:114
Change on_stop()
Definition render_loop.hpp:106
Change
Definition render_loop.hpp:83
@ raise
Definition render_loop.hpp:83
@ none
Definition render_loop.hpp:83
@ lower
Definition render_loop.hpp:83
Change on_vsync(bool drew)
Definition render_loop.hpp:88
Definition render_loop.hpp:129
virtual void request_frame()=0
static std::unique_ptr< RenderLoop > create_timer_loop()
virtual void start(FrameCallback on_frame)=0
static std::unique_ptr< RenderLoop > create(void *native_handle=nullptr)
virtual RenderLoopBackend backend() const =0
virtual ~RenderLoop()=default
virtual bool is_running() const =0
Definition gpu_fwd.hpp:31
std::function< void()> FrameCallback
Definition render_loop.hpp:45
void apply_display_rate_change(void *ca_display_link, DisplayRateBoost::Change change)
iOS only: applies change to a CADisplayLink (passed as void* so C++ callers need no Objective-C).
RenderLoopBackend
Which concrete backend RenderLoop::create() selected.
Definition render_loop.hpp:50
@ raf
Browser — requestAnimationFrame (compositor vblank).
Definition render_loop.hpp:55
@ timer
Conscious ~60 Hz timer fallback (Linux/other).
Definition render_loop.hpp:56
@ ca_display_link
iOS — real vblank.
Definition render_loop.hpp:52
@ choreographer
Android — real vblank.
Definition render_loop.hpp:53
@ dwm_flush
Windows — DWM-composed vblank wait.
Definition render_loop.hpp:54
@ cv_display_link
macOS — real vblank.
Definition render_loop.hpp:51
const char * render_loop_backend_name(RenderLoopBackend backend)
Human-readable name for a backend (for logs / diagnostics).
constexpr bool render_loop_backend_is_vsync(RenderLoopBackend backend)
True if the backend is locked to a real hardware/compositor vblank signal (as opposed to the consciou...
Definition render_loop.hpp:64