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 ScheduleUpdateForSession (zx::timepresentation_time,SchedulingIdPairid_pair,boolsquashable,boolschedule_asap)
|FrameScheduler|
Defined at line 278 of file ../../src/ui/scenic/lib/scheduling/default_frame_scheduler.cc
std::vector<FuturePresentationInfo> GetFuturePresentationInfos (zx::duration requested_prediction_span)
|FrameScheduler|
Defined at line 335 of file ../../src/ui/scenic/lib/scheduling/default_frame_scheduler.cc
void RemoveSession (SessionId session_id)
|FrameScheduler|
Defined at line 453 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 651 of file ../../src/ui/scenic/lib/scheduling/default_frame_scheduler.cc