| // Copyright 2017 The Chromium Authors |
| // 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/mojom/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; |
| }; |