class DefaultFrameScheduler
Defined at line 46 of file ../../src/ui/scenic/lib/scheduling/default_frame_scheduler.h
DefaultFrameScheduler is the source of a number of events:
- UpdateSessions: Fired when CPU should be done apply any pending updates to the scene graph and
prepare for rendering.
- OnCpuWorkDone: Fired when CPU work has completed.
- OnFramePresented: Fired when the renderer has signaled that the previous frame was presented
to the display.
- RenderScheduledFrame: Fired when non-CPU-based rendering should begin.
Public Members
static duration kMinPredictedFrameDuration
static duration kInitialRenderDuration
static duration kInitialUpdateDuration
Public Methods
void DefaultFrameScheduler (std::unique_ptr<FramePredictor> predictor, inspect::Node inspect_node, metrics::Metrics * metrics_logger)
Defined at line 30 of file ../../src/ui/scenic/lib/scheduling/default_frame_scheduler.cc
void ~DefaultFrameScheduler ()
Defined at line 48 of file ../../src/ui/scenic/lib/scheduling/default_frame_scheduler.cc
void Initialize (std::shared_ptr<const VsyncTiming> vsync_timing, UpdateSessions update_sessions, OnCpuWorkDone on_cpu_work_done, OnFramePresented on_frame_presented, RenderScheduledFrame render_scheduled_frame)
Set the renderer and session updaters to be used. Can only be called once.
|session_updaters| will be called in this order for every event.
Defined at line 50 of file ../../src/ui/scenic/lib/scheduling/default_frame_scheduler.cc
void SetRenderContinuously (bool render_continuously)
|FrameScheduler|
Defined at line 63 of file ../../src/ui/scenic/lib/scheduling/default_frame_scheduler.cc
PresentId RegisterPresent (SessionId session_id, std::vector<zx::event> release_fences, PresentId present_id)
|FrameScheduler|
Defined at line 70 of file ../../src/ui/scenic/lib/scheduling/default_frame_scheduler.cc
void ScheduleUpdateForSession (zx::time requested_presentation_time, SchedulingIdPair id_pair, bool squashable, bool schedule_asap)
|FrameScheduler|
Defined at line 285 of file ../../src/ui/scenic/lib/scheduling/default_frame_scheduler.cc
std::vector<FuturePresentationInfo> GetFuturePresentationInfos (zx::duration requested_prediction_span)
|FrameScheduler|
Defined at line 322 of file ../../src/ui/scenic/lib/scheduling/default_frame_scheduler.cc
void RemoveSession (SessionId session_id)
|FrameScheduler|
Defined at line 440 of file ../../src/ui/scenic/lib/scheduling/default_frame_scheduler.cc
void LogPeriodicDebugInfo ()
Log some information that can be used to decide if Scenic is making progress.
Defined at line 634 of file ../../src/ui/scenic/lib/scheduling/default_frame_scheduler.cc