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