blob: 6334b8e17063b99002fd4b68d7e445f8b1f55226 [file] [log] [blame]
// Copyright 2020 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.hardware.camera;
type BayerPattern = strict enum : uint8 {
RGGB = 1;
GRBG = 2;
GBRG = 3;
BGGR = 4;
};
/// Encodes R, Gr, B, Gb pixel values.
type ColorVal = struct {
red uint16;
green_r uint16;
blue uint16;
green_b uint16;
};
/// Encodes frame rate as separate a separate numerator and denominator.
/// Decoded via frames_per_sec_numerator / frames_per_sec_denominator.
type FrameRate = struct {
frames_per_sec_numerator uint32;
frames_per_sec_denominator uint32;
};
/// Encodes a pair of width and height values.
/// For example, for use as a representation of frame resolution
/// where |x| is width and |y| is height.
type Dimensions = struct {
x float32;
y float32;
};
/// Encodes a pair of minimum and maximum values.
/// For example, for use as sensor constraints for exposure settings.
type MinMaxConstraints = struct {
min uint32;
max uint32;
};
/// Encodes information to represent a rectangle on a grid.
type Rect = struct {
x uint32;
y uint32;
width uint32;
height uint32;
};