blob: 976976065e1f79e542e0c2159c80885d5452facf [file] [log] [blame]
// Copyright 2017 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
module cros.mojom;
import "media/capture/video/chromeos/mojo/camera_metadata_tags.mojom";
enum EntryType {
TYPE_BYTE = 0,
TYPE_INT32 = 1,
TYPE_FLOAT = 2,
TYPE_INT64 = 3,
TYPE_DOUBLE = 4,
TYPE_RATIONAL = 5,
NUM_TYPES
};
// CameraMetadataEntry is a translation of the camera_metadata_entry_t in
// Android camera HAL v3 API (https://goo.gl/OC8sOH). A CameraMetadataEntry
// holds the values of one type of metadata specified by |tag|.
struct CameraMetadataEntry {
uint32 index;
CameraMetadataTag tag;
EntryType type;
uint32 count; // The number of data entries as |type| in |data|.
array<uint8> data;
};
// CameraMetadata is a translation of the camera_metadata struct in Android
// camera HAL v3 API (https://goo.gl/G7ligz). A CameraMetadata holds a
// collection of metadata tags and their values.
struct CameraMetadata {
uint32 size;
uint32 entry_count;
uint32 entry_capacity;
uint32 data_count;
uint32 data_capacity;
array<CameraMetadataEntry>? entries;
};