fuchsia.scenic.scheduling

Added: 7

STRUCTS

FramePresentedInfo

Defined in fuchsia.scenic.scheduling/prediction_info.fidl

FieldTypeDescriptionDefault
actual_presentation_time zx/Time

The time the frame was presented to the user. This value was captured after the fact, differentiating it from the presentation_times included in FuturePresentationTimes.

No default
presentation_infos vector<PresentReceivedInfo>[32]

The presentation informations for each Present2() that comprised the content of this frame. These are ordered by present submission order.

No default
num_presents_allowed uint64

The number of times remaining that the client can call Present2.

No default

FuturePresentationTimes

Defined in fuchsia.scenic.scheduling/prediction_info.fidl

The data type returned in fuchsia.ui.scenic::RequestPresentationTimes. See that method description for more information.

FieldTypeDescriptionDefault
future_presentations vector<PresentationInfo>[8]

The future estimated presentation times. They represent the times Scenic intends to let the client's work be presented over the next few frames. These values may change after they are queried.

Clients who wish to minimize latency should use these values to schedule their work accordingly.

No default
remaining_presents_in_flight_allowed int64

The amount of Present() calls the client is currently allowed. If the client calls Present() when this number is zero, the session will be shut down.

This value is decremented every Present() call, and is incremented every OnFramePresented() event.

No default

TABLES

PresentReceivedInfo

Defined in fuchsia.scenic.scheduling/prediction_info.fidl

The times we record for each Present2, expressed in nanoseconds in the CLOCK_MONOTONIC timebase.

OrdinalFieldTypeDescription
present_received_time zx/Time

The time Scenic receives the Present2 call.

latched_time zx/Time

The time Scenic latched the Present2 call to. This is guaranteed to be greater than the present_received_time.

PresentationInfo

Defined in fuchsia.scenic.scheduling/prediction_info.fidl

The times we predict for a future presentation, expressed in nanoseconds in the CLOCK_MONOTONIC timebase.

OrdinalFieldTypeDescription
latch_point zx/Time

The time where Scenic processes all pending updates to its scene graph and render a new frame. Clients should aim to have all commands sent and acquire fences reached in order to have their content be presented at the corresponding presentation_time. The latch_point is guaranteed to be less than presentation_time.

presentation_time zx/Time

The time in which the enqueued operations submitted before latch_point take visible effect. This time is usually but not necessarily vsync.