class DefaultFrameScheduler
Defined at line 45 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::Nodeinspect_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,UpdateSessionsupdate_sessions,OnCpuWorkDoneon_cpu_work_done,OnFramePresentedon_frame_presented,RenderScheduledFramerender_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
void ForceRenderFrame ()
Renders a frame as soon as possible even if no session has a pending update.
Used when the display is powered on again, so that the current scene is shown
without waiting for a client to present.
Defined at line 70 of file ../../src/ui/scenic/lib/scheduling/default_frame_scheduler.cc
void ScheduleUpdateForSession (zx::timepresentation_time,SchedulingIdPairid_pair,boolsquashable,boolschedule_asap)
`FrameScheduler`
Defined at line 291 of file ../../src/ui/scenic/lib/scheduling/default_frame_scheduler.cc
std::vector<FuturePresentationInfo> GetFuturePresentationInfos (zx::duration requested_prediction_span)
`FrameScheduler`
Defined at line 354 of file ../../src/ui/scenic/lib/scheduling/default_frame_scheduler.cc
void RemoveSession (SessionId session_id)
`FrameScheduler`
Defined at line 472 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 670 of file ../../src/ui/scenic/lib/scheduling/default_frame_scheduler.cc