blob: d79fb00efade800293226013480f68ae3d37d980 [file] [log] [blame]
// Copyright 2017 The Fuchsia Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
library fuchsia.images;
/// Information returned by methods such as `ImagePipe.PresentImage()` and
/// `Session.Present()`, when the consumer begins preparing the first frame
/// which includes the presented content.
type PresentationInfo = struct {
/// The actual time at which the enqueued operations are anticipated to take
/// visible effect, expressed in nanoseconds in the `CLOCK_MONOTONIC`
/// timebase.
///
/// This value increases monotonically with each new frame, typically in
/// increments of the `presentation_interval`.
presentation_time uint64;
/// The nominal amount of time which is anticipated to elapse between
/// successively presented frames, expressed in nanoseconds. When rendering
/// to a display, the interval will typically be derived from the display
/// refresh rate.
///
/// This value is non-zero. It may vary from time to time, such as when
/// changing display modes.
presentation_interval uint64;
};