• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright (C) 2012 The Android Open Source Project
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  *      http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 
17 /**
18  * !! Do not include this file directly !!
19  *
20  * Include camera_metadata.h instead.
21  */
22 
23 /**
24  * ! Do not edit this file directly !
25  *
26  * Generated automatically from camera_metadata_tags.mako
27  */
28 
29 /** TODO: Nearly every enum in this file needs a description */
30 
31 /**
32  * Top level hierarchy definitions for camera metadata. *_INFO sections are for
33  * the static metadata that can be retrived without opening the camera device.
34  * New sections must be added right before ANDROID_SECTION_COUNT to maintain
35  * existing enumerations.
36  */
37 typedef enum camera_metadata_section {
38     ANDROID_COLOR_CORRECTION,
39     ANDROID_CONTROL,
40     ANDROID_DEMOSAIC,
41     ANDROID_EDGE,
42     ANDROID_FLASH,
43     ANDROID_FLASH_INFO,
44     ANDROID_HOT_PIXEL,
45     ANDROID_JPEG,
46     ANDROID_LENS,
47     ANDROID_LENS_INFO,
48     ANDROID_NOISE_REDUCTION,
49     ANDROID_QUIRKS,
50     ANDROID_REQUEST,
51     ANDROID_SCALER,
52     ANDROID_SENSOR,
53     ANDROID_SENSOR_INFO,
54     ANDROID_SHADING,
55     ANDROID_STATISTICS,
56     ANDROID_STATISTICS_INFO,
57     ANDROID_TONEMAP,
58     ANDROID_LED,
59     ANDROID_INFO,
60     ANDROID_BLACK_LEVEL,
61     ANDROID_SYNC,
62     ANDROID_REPROCESS,
63     ANDROID_DEPTH,
64     ANDROID_LOGICAL_MULTI_CAMERA,
65     ANDROID_DISTORTION_CORRECTION,
66     ANDROID_HEIC,
67     ANDROID_HEIC_INFO,
68     ANDROID_SECTION_COUNT,
69 
70     VENDOR_SECTION = 0x8000
71 } camera_metadata_section_t;
72 
73 /**
74  * Hierarchy positions in enum space. All vendor extension tags must be
75  * defined with tag >= VENDOR_SECTION_START
76  */
77 typedef enum camera_metadata_section_start {
78     ANDROID_COLOR_CORRECTION_START = ANDROID_COLOR_CORRECTION  << 16,
79     ANDROID_CONTROL_START          = ANDROID_CONTROL           << 16,
80     ANDROID_DEMOSAIC_START         = ANDROID_DEMOSAIC          << 16,
81     ANDROID_EDGE_START             = ANDROID_EDGE              << 16,
82     ANDROID_FLASH_START            = ANDROID_FLASH             << 16,
83     ANDROID_FLASH_INFO_START       = ANDROID_FLASH_INFO        << 16,
84     ANDROID_HOT_PIXEL_START        = ANDROID_HOT_PIXEL         << 16,
85     ANDROID_JPEG_START             = ANDROID_JPEG              << 16,
86     ANDROID_LENS_START             = ANDROID_LENS              << 16,
87     ANDROID_LENS_INFO_START        = ANDROID_LENS_INFO         << 16,
88     ANDROID_NOISE_REDUCTION_START  = ANDROID_NOISE_REDUCTION   << 16,
89     ANDROID_QUIRKS_START           = ANDROID_QUIRKS            << 16,
90     ANDROID_REQUEST_START          = ANDROID_REQUEST           << 16,
91     ANDROID_SCALER_START           = ANDROID_SCALER            << 16,
92     ANDROID_SENSOR_START           = ANDROID_SENSOR            << 16,
93     ANDROID_SENSOR_INFO_START      = ANDROID_SENSOR_INFO       << 16,
94     ANDROID_SHADING_START          = ANDROID_SHADING           << 16,
95     ANDROID_STATISTICS_START       = ANDROID_STATISTICS        << 16,
96     ANDROID_STATISTICS_INFO_START  = ANDROID_STATISTICS_INFO   << 16,
97     ANDROID_TONEMAP_START          = ANDROID_TONEMAP           << 16,
98     ANDROID_LED_START              = ANDROID_LED               << 16,
99     ANDROID_INFO_START             = ANDROID_INFO              << 16,
100     ANDROID_BLACK_LEVEL_START      = ANDROID_BLACK_LEVEL       << 16,
101     ANDROID_SYNC_START             = ANDROID_SYNC              << 16,
102     ANDROID_REPROCESS_START        = ANDROID_REPROCESS         << 16,
103     ANDROID_DEPTH_START            = ANDROID_DEPTH             << 16,
104     ANDROID_LOGICAL_MULTI_CAMERA_START
105                                    = ANDROID_LOGICAL_MULTI_CAMERA
106                                                                 << 16,
107     ANDROID_DISTORTION_CORRECTION_START
108                                    = ANDROID_DISTORTION_CORRECTION
109                                                                 << 16,
110     ANDROID_HEIC_START             = ANDROID_HEIC              << 16,
111     ANDROID_HEIC_INFO_START        = ANDROID_HEIC_INFO         << 16,
112     VENDOR_SECTION_START           = VENDOR_SECTION            << 16
113 } camera_metadata_section_start_t;
114 
115 /**
116  * Main enum for defining camera metadata tags.  New entries must always go
117  * before the section _END tag to preserve existing enumeration values.  In
118  * addition, the name and type of the tag needs to be added to
119  * system/media/camera/src/camera_metadata_tag_info.c
120  */
121 typedef enum camera_metadata_tag {
122     ANDROID_COLOR_CORRECTION_MODE =                   // enum         | public       | HIDL v3.2
123             ANDROID_COLOR_CORRECTION_START,
124     ANDROID_COLOR_CORRECTION_TRANSFORM,               // rational[]   | public       | HIDL v3.2
125     ANDROID_COLOR_CORRECTION_GAINS,                   // float[]      | public       | HIDL v3.2
126     ANDROID_COLOR_CORRECTION_ABERRATION_MODE,         // enum         | public       | HIDL v3.2
127     ANDROID_COLOR_CORRECTION_AVAILABLE_ABERRATION_MODES,
128                                                       // byte[]       | public       | HIDL v3.2
129     ANDROID_COLOR_CORRECTION_END,
130 
131     ANDROID_CONTROL_AE_ANTIBANDING_MODE =             // enum         | public       | HIDL v3.2
132             ANDROID_CONTROL_START,
133     ANDROID_CONTROL_AE_EXPOSURE_COMPENSATION,         // int32        | public       | HIDL v3.2
134     ANDROID_CONTROL_AE_LOCK,                          // enum         | public       | HIDL v3.2
135     ANDROID_CONTROL_AE_MODE,                          // enum         | public       | HIDL v3.2
136     ANDROID_CONTROL_AE_REGIONS,                       // int32[]      | public       | HIDL v3.2
137     ANDROID_CONTROL_AE_TARGET_FPS_RANGE,              // int32[]      | public       | HIDL v3.2
138     ANDROID_CONTROL_AE_PRECAPTURE_TRIGGER,            // enum         | public       | HIDL v3.2
139     ANDROID_CONTROL_AF_MODE,                          // enum         | public       | HIDL v3.2
140     ANDROID_CONTROL_AF_REGIONS,                       // int32[]      | public       | HIDL v3.2
141     ANDROID_CONTROL_AF_TRIGGER,                       // enum         | public       | HIDL v3.2
142     ANDROID_CONTROL_AWB_LOCK,                         // enum         | public       | HIDL v3.2
143     ANDROID_CONTROL_AWB_MODE,                         // enum         | public       | HIDL v3.2
144     ANDROID_CONTROL_AWB_REGIONS,                      // int32[]      | public       | HIDL v3.2
145     ANDROID_CONTROL_CAPTURE_INTENT,                   // enum         | public       | HIDL v3.2
146     ANDROID_CONTROL_EFFECT_MODE,                      // enum         | public       | HIDL v3.2
147     ANDROID_CONTROL_MODE,                             // enum         | public       | HIDL v3.2
148     ANDROID_CONTROL_SCENE_MODE,                       // enum         | public       | HIDL v3.2
149     ANDROID_CONTROL_VIDEO_STABILIZATION_MODE,         // enum         | public       | HIDL v3.2
150     ANDROID_CONTROL_AE_AVAILABLE_ANTIBANDING_MODES,   // byte[]       | public       | HIDL v3.2
151     ANDROID_CONTROL_AE_AVAILABLE_MODES,               // byte[]       | public       | HIDL v3.2
152     ANDROID_CONTROL_AE_AVAILABLE_TARGET_FPS_RANGES,   // int32[]      | public       | HIDL v3.2
153     ANDROID_CONTROL_AE_COMPENSATION_RANGE,            // int32[]      | public       | HIDL v3.2
154     ANDROID_CONTROL_AE_COMPENSATION_STEP,             // rational     | public       | HIDL v3.2
155     ANDROID_CONTROL_AF_AVAILABLE_MODES,               // byte[]       | public       | HIDL v3.2
156     ANDROID_CONTROL_AVAILABLE_EFFECTS,                // byte[]       | public       | HIDL v3.2
157     ANDROID_CONTROL_AVAILABLE_SCENE_MODES,            // byte[]       | public       | HIDL v3.2
158     ANDROID_CONTROL_AVAILABLE_VIDEO_STABILIZATION_MODES,
159                                                       // byte[]       | public       | HIDL v3.2
160     ANDROID_CONTROL_AWB_AVAILABLE_MODES,              // byte[]       | public       | HIDL v3.2
161     ANDROID_CONTROL_MAX_REGIONS,                      // int32[]      | ndk_public   | HIDL v3.2
162     ANDROID_CONTROL_SCENE_MODE_OVERRIDES,             // byte[]       | system       | HIDL v3.2
163     ANDROID_CONTROL_AE_PRECAPTURE_ID,                 // int32        | system       | HIDL v3.2
164     ANDROID_CONTROL_AE_STATE,                         // enum         | public       | HIDL v3.2
165     ANDROID_CONTROL_AF_STATE,                         // enum         | public       | HIDL v3.2
166     ANDROID_CONTROL_AF_TRIGGER_ID,                    // int32        | system       | HIDL v3.2
167     ANDROID_CONTROL_AWB_STATE,                        // enum         | public       | HIDL v3.2
168     ANDROID_CONTROL_AVAILABLE_HIGH_SPEED_VIDEO_CONFIGURATIONS,
169                                                       // int32[]      | hidden       | HIDL v3.2
170     ANDROID_CONTROL_AE_LOCK_AVAILABLE,                // enum         | public       | HIDL v3.2
171     ANDROID_CONTROL_AWB_LOCK_AVAILABLE,               // enum         | public       | HIDL v3.2
172     ANDROID_CONTROL_AVAILABLE_MODES,                  // byte[]       | public       | HIDL v3.2
173     ANDROID_CONTROL_POST_RAW_SENSITIVITY_BOOST_RANGE, // int32[]      | public       | HIDL v3.2
174     ANDROID_CONTROL_POST_RAW_SENSITIVITY_BOOST,       // int32        | public       | HIDL v3.2
175     ANDROID_CONTROL_ENABLE_ZSL,                       // enum         | public       | HIDL v3.2
176     ANDROID_CONTROL_AF_SCENE_CHANGE,                  // enum         | public       | HIDL v3.3
177     ANDROID_CONTROL_AVAILABLE_EXTENDED_SCENE_MODE_MAX_SIZES,
178                                                       // int32[]      | ndk_public   | HIDL v3.5
179     ANDROID_CONTROL_AVAILABLE_EXTENDED_SCENE_MODE_ZOOM_RATIO_RANGES,
180                                                       // float[]      | ndk_public   | HIDL v3.5
181     ANDROID_CONTROL_EXTENDED_SCENE_MODE,              // enum         | public       | HIDL v3.5
182     ANDROID_CONTROL_ZOOM_RATIO_RANGE,                 // float[]      | public       | HIDL v3.5
183     ANDROID_CONTROL_ZOOM_RATIO,                       // float        | public       | HIDL v3.5
184     ANDROID_CONTROL_AVAILABLE_HIGH_SPEED_VIDEO_CONFIGURATIONS_MAXIMUM_RESOLUTION,
185                                                       // int32[]      | hidden       | HIDL v3.6
186     ANDROID_CONTROL_AF_REGIONS_SET,                   // enum         | fwk_only
187     ANDROID_CONTROL_AE_REGIONS_SET,                   // enum         | fwk_only
188     ANDROID_CONTROL_AWB_REGIONS_SET,                  // enum         | fwk_only
189     ANDROID_CONTROL_END,
190 
191     ANDROID_DEMOSAIC_MODE =                           // enum         | system       | HIDL v3.2
192             ANDROID_DEMOSAIC_START,
193     ANDROID_DEMOSAIC_END,
194 
195     ANDROID_EDGE_MODE =                               // enum         | public       | HIDL v3.2
196             ANDROID_EDGE_START,
197     ANDROID_EDGE_STRENGTH,                            // byte         | system       | HIDL v3.2
198     ANDROID_EDGE_AVAILABLE_EDGE_MODES,                // byte[]       | public       | HIDL v3.2
199     ANDROID_EDGE_END,
200 
201     ANDROID_FLASH_FIRING_POWER =                      // byte         | system       | HIDL v3.2
202             ANDROID_FLASH_START,
203     ANDROID_FLASH_FIRING_TIME,                        // int64        | system       | HIDL v3.2
204     ANDROID_FLASH_MODE,                               // enum         | public       | HIDL v3.2
205     ANDROID_FLASH_COLOR_TEMPERATURE,                  // byte         | system       | HIDL v3.2
206     ANDROID_FLASH_MAX_ENERGY,                         // byte         | system       | HIDL v3.2
207     ANDROID_FLASH_STATE,                              // enum         | public       | HIDL v3.2
208     ANDROID_FLASH_END,
209 
210     ANDROID_FLASH_INFO_AVAILABLE =                    // enum         | public       | HIDL v3.2
211             ANDROID_FLASH_INFO_START,
212     ANDROID_FLASH_INFO_CHARGE_DURATION,               // int64        | system       | HIDL v3.2
213     ANDROID_FLASH_INFO_END,
214 
215     ANDROID_HOT_PIXEL_MODE =                          // enum         | public       | HIDL v3.2
216             ANDROID_HOT_PIXEL_START,
217     ANDROID_HOT_PIXEL_AVAILABLE_HOT_PIXEL_MODES,      // byte[]       | public       | HIDL v3.2
218     ANDROID_HOT_PIXEL_END,
219 
220     ANDROID_JPEG_GPS_COORDINATES =                    // double[]     | ndk_public   | HIDL v3.2
221             ANDROID_JPEG_START,
222     ANDROID_JPEG_GPS_PROCESSING_METHOD,               // byte         | ndk_public   | HIDL v3.2
223     ANDROID_JPEG_GPS_TIMESTAMP,                       // int64        | ndk_public   | HIDL v3.2
224     ANDROID_JPEG_ORIENTATION,                         // int32        | public       | HIDL v3.2
225     ANDROID_JPEG_QUALITY,                             // byte         | public       | HIDL v3.2
226     ANDROID_JPEG_THUMBNAIL_QUALITY,                   // byte         | public       | HIDL v3.2
227     ANDROID_JPEG_THUMBNAIL_SIZE,                      // int32[]      | public       | HIDL v3.2
228     ANDROID_JPEG_AVAILABLE_THUMBNAIL_SIZES,           // int32[]      | public       | HIDL v3.2
229     ANDROID_JPEG_MAX_SIZE,                            // int32        | system       | HIDL v3.2
230     ANDROID_JPEG_SIZE,                                // int32        | system       | HIDL v3.2
231     ANDROID_JPEG_END,
232 
233     ANDROID_LENS_APERTURE =                           // float        | public       | HIDL v3.2
234             ANDROID_LENS_START,
235     ANDROID_LENS_FILTER_DENSITY,                      // float        | public       | HIDL v3.2
236     ANDROID_LENS_FOCAL_LENGTH,                        // float        | public       | HIDL v3.2
237     ANDROID_LENS_FOCUS_DISTANCE,                      // float        | public       | HIDL v3.2
238     ANDROID_LENS_OPTICAL_STABILIZATION_MODE,          // enum         | public       | HIDL v3.2
239     ANDROID_LENS_FACING,                              // enum         | public       | HIDL v3.2
240     ANDROID_LENS_POSE_ROTATION,                       // float[]      | public       | HIDL v3.2
241     ANDROID_LENS_POSE_TRANSLATION,                    // float[]      | public       | HIDL v3.2
242     ANDROID_LENS_FOCUS_RANGE,                         // float[]      | public       | HIDL v3.2
243     ANDROID_LENS_STATE,                               // enum         | public       | HIDL v3.2
244     ANDROID_LENS_INTRINSIC_CALIBRATION,               // float[]      | public       | HIDL v3.2
245     ANDROID_LENS_RADIAL_DISTORTION,                   // float[]      | public       | HIDL v3.2
246     ANDROID_LENS_POSE_REFERENCE,                      // enum         | public       | HIDL v3.3
247     ANDROID_LENS_DISTORTION,                          // float[]      | public       | HIDL v3.3
248     ANDROID_LENS_DISTORTION_MAXIMUM_RESOLUTION,       // float[]      | public       | HIDL v3.6
249     ANDROID_LENS_INTRINSIC_CALIBRATION_MAXIMUM_RESOLUTION,
250                                                       // float[]      | public       | HIDL v3.6
251     ANDROID_LENS_END,
252 
253     ANDROID_LENS_INFO_AVAILABLE_APERTURES =           // float[]      | public       | HIDL v3.2
254             ANDROID_LENS_INFO_START,
255     ANDROID_LENS_INFO_AVAILABLE_FILTER_DENSITIES,     // float[]      | public       | HIDL v3.2
256     ANDROID_LENS_INFO_AVAILABLE_FOCAL_LENGTHS,        // float[]      | public       | HIDL v3.2
257     ANDROID_LENS_INFO_AVAILABLE_OPTICAL_STABILIZATION,// byte[]       | public       | HIDL v3.2
258     ANDROID_LENS_INFO_HYPERFOCAL_DISTANCE,            // float        | public       | HIDL v3.2
259     ANDROID_LENS_INFO_MINIMUM_FOCUS_DISTANCE,         // float        | public       | HIDL v3.2
260     ANDROID_LENS_INFO_SHADING_MAP_SIZE,               // int32[]      | ndk_public   | HIDL v3.2
261     ANDROID_LENS_INFO_FOCUS_DISTANCE_CALIBRATION,     // enum         | public       | HIDL v3.2
262     ANDROID_LENS_INFO_END,
263 
264     ANDROID_NOISE_REDUCTION_MODE =                    // enum         | public       | HIDL v3.2
265             ANDROID_NOISE_REDUCTION_START,
266     ANDROID_NOISE_REDUCTION_STRENGTH,                 // byte         | system       | HIDL v3.2
267     ANDROID_NOISE_REDUCTION_AVAILABLE_NOISE_REDUCTION_MODES,
268                                                       // byte[]       | public       | HIDL v3.2
269     ANDROID_NOISE_REDUCTION_END,
270 
271     ANDROID_QUIRKS_METERING_CROP_REGION =             // byte         | system       | HIDL v3.2
272             ANDROID_QUIRKS_START,
273     ANDROID_QUIRKS_TRIGGER_AF_WITH_AUTO,              // byte         | system       | HIDL v3.2
274     ANDROID_QUIRKS_USE_ZSL_FORMAT,                    // byte         | system       | HIDL v3.2
275     ANDROID_QUIRKS_USE_PARTIAL_RESULT,                // byte         | hidden       | HIDL v3.2
276     ANDROID_QUIRKS_PARTIAL_RESULT,                    // enum         | hidden       | HIDL v3.2
277     ANDROID_QUIRKS_END,
278 
279     ANDROID_REQUEST_FRAME_COUNT =                     // int32        | hidden       | HIDL v3.2
280             ANDROID_REQUEST_START,
281     ANDROID_REQUEST_ID,                               // int32        | hidden       | HIDL v3.2
282     ANDROID_REQUEST_INPUT_STREAMS,                    // int32[]      | system       | HIDL v3.2
283     ANDROID_REQUEST_METADATA_MODE,                    // enum         | system       | HIDL v3.2
284     ANDROID_REQUEST_OUTPUT_STREAMS,                   // int32[]      | system       | HIDL v3.2
285     ANDROID_REQUEST_TYPE,                             // enum         | system       | HIDL v3.2
286     ANDROID_REQUEST_MAX_NUM_OUTPUT_STREAMS,           // int32[]      | ndk_public   | HIDL v3.2
287     ANDROID_REQUEST_MAX_NUM_REPROCESS_STREAMS,        // int32[]      | system       | HIDL v3.2
288     ANDROID_REQUEST_MAX_NUM_INPUT_STREAMS,            // int32        | java_public  | HIDL v3.2
289     ANDROID_REQUEST_PIPELINE_DEPTH,                   // byte         | public       | HIDL v3.2
290     ANDROID_REQUEST_PIPELINE_MAX_DEPTH,               // byte         | public       | HIDL v3.2
291     ANDROID_REQUEST_PARTIAL_RESULT_COUNT,             // int32        | public       | HIDL v3.2
292     ANDROID_REQUEST_AVAILABLE_CAPABILITIES,           // enum[]       | public       | HIDL v3.2
293     ANDROID_REQUEST_AVAILABLE_REQUEST_KEYS,           // int32[]      | ndk_public   | HIDL v3.2
294     ANDROID_REQUEST_AVAILABLE_RESULT_KEYS,            // int32[]      | ndk_public   | HIDL v3.2
295     ANDROID_REQUEST_AVAILABLE_CHARACTERISTICS_KEYS,   // int32[]      | ndk_public   | HIDL v3.2
296     ANDROID_REQUEST_AVAILABLE_SESSION_KEYS,           // int32[]      | ndk_public   | HIDL v3.3
297     ANDROID_REQUEST_AVAILABLE_PHYSICAL_CAMERA_REQUEST_KEYS,
298                                                       // int32[]      | ndk_public   | HIDL v3.3
299     ANDROID_REQUEST_CHARACTERISTIC_KEYS_NEEDING_PERMISSION,
300                                                       // int32[]      | hidden       | HIDL v3.4
301     ANDROID_REQUEST_END,
302 
303     ANDROID_SCALER_CROP_REGION =                      // int32[]      | public       | HIDL v3.2
304             ANDROID_SCALER_START,
305     ANDROID_SCALER_AVAILABLE_FORMATS,                 // enum[]       | hidden       | HIDL v3.2
306     ANDROID_SCALER_AVAILABLE_JPEG_MIN_DURATIONS,      // int64[]      | hidden       | HIDL v3.2
307     ANDROID_SCALER_AVAILABLE_JPEG_SIZES,              // int32[]      | hidden       | HIDL v3.2
308     ANDROID_SCALER_AVAILABLE_MAX_DIGITAL_ZOOM,        // float        | public       | HIDL v3.2
309     ANDROID_SCALER_AVAILABLE_PROCESSED_MIN_DURATIONS, // int64[]      | hidden       | HIDL v3.2
310     ANDROID_SCALER_AVAILABLE_PROCESSED_SIZES,         // int32[]      | hidden       | HIDL v3.2
311     ANDROID_SCALER_AVAILABLE_RAW_MIN_DURATIONS,       // int64[]      | system       | HIDL v3.2
312     ANDROID_SCALER_AVAILABLE_RAW_SIZES,               // int32[]      | system       | HIDL v3.2
313     ANDROID_SCALER_AVAILABLE_INPUT_OUTPUT_FORMATS_MAP,// int32        | hidden       | HIDL v3.2
314     ANDROID_SCALER_AVAILABLE_STREAM_CONFIGURATIONS,   // enum[]       | ndk_public   | HIDL v3.2
315     ANDROID_SCALER_AVAILABLE_MIN_FRAME_DURATIONS,     // int64[]      | ndk_public   | HIDL v3.2
316     ANDROID_SCALER_AVAILABLE_STALL_DURATIONS,         // int64[]      | ndk_public   | HIDL v3.2
317     ANDROID_SCALER_CROPPING_TYPE,                     // enum         | public       | HIDL v3.2
318     ANDROID_SCALER_AVAILABLE_RECOMMENDED_STREAM_CONFIGURATIONS,
319                                                       // enum[]       | ndk_public   | HIDL v3.4
320     ANDROID_SCALER_AVAILABLE_RECOMMENDED_INPUT_OUTPUT_FORMATS_MAP,
321                                                       // int32        | ndk_public   | HIDL v3.4
322     ANDROID_SCALER_AVAILABLE_ROTATE_AND_CROP_MODES,   // byte[]       | public       | HIDL v3.5
323     ANDROID_SCALER_ROTATE_AND_CROP,                   // enum         | public       | HIDL v3.5
324     ANDROID_SCALER_DEFAULT_SECURE_IMAGE_SIZE,         // int32[]      | public       | HIDL v3.6
325     ANDROID_SCALER_PHYSICAL_CAMERA_MULTI_RESOLUTION_STREAM_CONFIGURATIONS,
326                                                       // enum[]       | ndk_public   | HIDL v3.6
327     ANDROID_SCALER_AVAILABLE_STREAM_CONFIGURATIONS_MAXIMUM_RESOLUTION,
328                                                       // enum[]       | ndk_public   | HIDL v3.6
329     ANDROID_SCALER_AVAILABLE_MIN_FRAME_DURATIONS_MAXIMUM_RESOLUTION,
330                                                       // int64[]      | ndk_public   | HIDL v3.6
331     ANDROID_SCALER_AVAILABLE_STALL_DURATIONS_MAXIMUM_RESOLUTION,
332                                                       // int64[]      | ndk_public   | HIDL v3.6
333     ANDROID_SCALER_AVAILABLE_INPUT_OUTPUT_FORMATS_MAP_MAXIMUM_RESOLUTION,
334                                                       // int32        | hidden       | HIDL v3.6
335     ANDROID_SCALER_MULTI_RESOLUTION_STREAM_SUPPORTED, // enum         | ndk_public   | HIDL v3.6
336     ANDROID_SCALER_CROP_REGION_SET,                   // enum         | fwk_only
337     ANDROID_SCALER_END,
338 
339     ANDROID_SENSOR_EXPOSURE_TIME =                    // int64        | public       | HIDL v3.2
340             ANDROID_SENSOR_START,
341     ANDROID_SENSOR_FRAME_DURATION,                    // int64        | public       | HIDL v3.2
342     ANDROID_SENSOR_SENSITIVITY,                       // int32        | public       | HIDL v3.2
343     ANDROID_SENSOR_REFERENCE_ILLUMINANT1,             // enum         | public       | HIDL v3.2
344     ANDROID_SENSOR_REFERENCE_ILLUMINANT2,             // byte         | public       | HIDL v3.2
345     ANDROID_SENSOR_CALIBRATION_TRANSFORM1,            // rational[]   | public       | HIDL v3.2
346     ANDROID_SENSOR_CALIBRATION_TRANSFORM2,            // rational[]   | public       | HIDL v3.2
347     ANDROID_SENSOR_COLOR_TRANSFORM1,                  // rational[]   | public       | HIDL v3.2
348     ANDROID_SENSOR_COLOR_TRANSFORM2,                  // rational[]   | public       | HIDL v3.2
349     ANDROID_SENSOR_FORWARD_MATRIX1,                   // rational[]   | public       | HIDL v3.2
350     ANDROID_SENSOR_FORWARD_MATRIX2,                   // rational[]   | public       | HIDL v3.2
351     ANDROID_SENSOR_BASE_GAIN_FACTOR,                  // rational     | system       | HIDL v3.2
352     ANDROID_SENSOR_BLACK_LEVEL_PATTERN,               // int32[]      | public       | HIDL v3.2
353     ANDROID_SENSOR_MAX_ANALOG_SENSITIVITY,            // int32        | public       | HIDL v3.2
354     ANDROID_SENSOR_ORIENTATION,                       // int32        | public       | HIDL v3.2
355     ANDROID_SENSOR_PROFILE_HUE_SAT_MAP_DIMENSIONS,    // int32[]      | system       | HIDL v3.2
356     ANDROID_SENSOR_TIMESTAMP,                         // int64        | public       | HIDL v3.2
357     ANDROID_SENSOR_TEMPERATURE,                       // float        | system       | HIDL v3.2
358     ANDROID_SENSOR_NEUTRAL_COLOR_POINT,               // rational[]   | public       | HIDL v3.2
359     ANDROID_SENSOR_NOISE_PROFILE,                     // double[]     | public       | HIDL v3.2
360     ANDROID_SENSOR_PROFILE_HUE_SAT_MAP,               // float[]      | system       | HIDL v3.2
361     ANDROID_SENSOR_PROFILE_TONE_CURVE,                // float[]      | system       | HIDL v3.2
362     ANDROID_SENSOR_GREEN_SPLIT,                       // float        | public       | HIDL v3.2
363     ANDROID_SENSOR_TEST_PATTERN_DATA,                 // int32[]      | public       | HIDL v3.2
364     ANDROID_SENSOR_TEST_PATTERN_MODE,                 // enum         | public       | HIDL v3.2
365     ANDROID_SENSOR_AVAILABLE_TEST_PATTERN_MODES,      // int32[]      | public       | HIDL v3.2
366     ANDROID_SENSOR_ROLLING_SHUTTER_SKEW,              // int64        | public       | HIDL v3.2
367     ANDROID_SENSOR_OPTICAL_BLACK_REGIONS,             // int32[]      | public       | HIDL v3.2
368     ANDROID_SENSOR_DYNAMIC_BLACK_LEVEL,               // float[]      | public       | HIDL v3.2
369     ANDROID_SENSOR_DYNAMIC_WHITE_LEVEL,               // int32        | public       | HIDL v3.2
370     ANDROID_SENSOR_OPAQUE_RAW_SIZE,                   // int32[]      | system       | HIDL v3.2
371     ANDROID_SENSOR_OPAQUE_RAW_SIZE_MAXIMUM_RESOLUTION,// int32[]      | system       | HIDL v3.6
372     ANDROID_SENSOR_PIXEL_MODE,                        // enum         | public       | HIDL v3.6
373     ANDROID_SENSOR_RAW_BINNING_FACTOR_USED,           // enum         | public       | HIDL v3.6
374     ANDROID_SENSOR_END,
375 
376     ANDROID_SENSOR_INFO_ACTIVE_ARRAY_SIZE =           // int32[]      | public       | HIDL v3.2
377             ANDROID_SENSOR_INFO_START,
378     ANDROID_SENSOR_INFO_SENSITIVITY_RANGE,            // int32[]      | public       | HIDL v3.2
379     ANDROID_SENSOR_INFO_COLOR_FILTER_ARRANGEMENT,     // enum         | public       | HIDL v3.2
380     ANDROID_SENSOR_INFO_EXPOSURE_TIME_RANGE,          // int64[]      | public       | HIDL v3.2
381     ANDROID_SENSOR_INFO_MAX_FRAME_DURATION,           // int64        | public       | HIDL v3.2
382     ANDROID_SENSOR_INFO_PHYSICAL_SIZE,                // float[]      | public       | HIDL v3.2
383     ANDROID_SENSOR_INFO_PIXEL_ARRAY_SIZE,             // int32[]      | public       | HIDL v3.2
384     ANDROID_SENSOR_INFO_WHITE_LEVEL,                  // int32        | public       | HIDL v3.2
385     ANDROID_SENSOR_INFO_TIMESTAMP_SOURCE,             // enum         | public       | HIDL v3.2
386     ANDROID_SENSOR_INFO_LENS_SHADING_APPLIED,         // enum         | public       | HIDL v3.2
387     ANDROID_SENSOR_INFO_PRE_CORRECTION_ACTIVE_ARRAY_SIZE,
388                                                       // int32[]      | public       | HIDL v3.2
389     ANDROID_SENSOR_INFO_ACTIVE_ARRAY_SIZE_MAXIMUM_RESOLUTION,
390                                                       // int32[]      | public       | HIDL v3.6
391     ANDROID_SENSOR_INFO_PIXEL_ARRAY_SIZE_MAXIMUM_RESOLUTION,
392                                                       // int32[]      | public       | HIDL v3.6
393     ANDROID_SENSOR_INFO_PRE_CORRECTION_ACTIVE_ARRAY_SIZE_MAXIMUM_RESOLUTION,
394                                                       // int32[]      | public       | HIDL v3.6
395     ANDROID_SENSOR_INFO_BINNING_FACTOR,               // int32[]      | public       | HIDL v3.6
396     ANDROID_SENSOR_INFO_END,
397 
398     ANDROID_SHADING_MODE =                            // enum         | public       | HIDL v3.2
399             ANDROID_SHADING_START,
400     ANDROID_SHADING_STRENGTH,                         // byte         | system       | HIDL v3.2
401     ANDROID_SHADING_AVAILABLE_MODES,                  // byte[]       | public       | HIDL v3.2
402     ANDROID_SHADING_END,
403 
404     ANDROID_STATISTICS_FACE_DETECT_MODE =             // enum         | public       | HIDL v3.2
405             ANDROID_STATISTICS_START,
406     ANDROID_STATISTICS_HISTOGRAM_MODE,                // enum         | system       | HIDL v3.2
407     ANDROID_STATISTICS_SHARPNESS_MAP_MODE,            // enum         | system       | HIDL v3.2
408     ANDROID_STATISTICS_HOT_PIXEL_MAP_MODE,            // enum         | public       | HIDL v3.2
409     ANDROID_STATISTICS_FACE_IDS,                      // int32[]      | ndk_public   | HIDL v3.2
410     ANDROID_STATISTICS_FACE_LANDMARKS,                // int32[]      | ndk_public   | HIDL v3.2
411     ANDROID_STATISTICS_FACE_RECTANGLES,               // int32[]      | ndk_public   | HIDL v3.2
412     ANDROID_STATISTICS_FACE_SCORES,                   // byte[]       | ndk_public   | HIDL v3.2
413     ANDROID_STATISTICS_HISTOGRAM,                     // int32[]      | system       | HIDL v3.2
414     ANDROID_STATISTICS_SHARPNESS_MAP,                 // int32[]      | system       | HIDL v3.2
415     ANDROID_STATISTICS_LENS_SHADING_CORRECTION_MAP,   // byte         | java_public  | HIDL v3.2
416     ANDROID_STATISTICS_LENS_SHADING_MAP,              // float[]      | ndk_public   | HIDL v3.2
417     ANDROID_STATISTICS_PREDICTED_COLOR_GAINS,         // float[]      | hidden       | HIDL v3.2
418     ANDROID_STATISTICS_PREDICTED_COLOR_TRANSFORM,     // rational[]   | hidden       | HIDL v3.2
419     ANDROID_STATISTICS_SCENE_FLICKER,                 // enum         | public       | HIDL v3.2
420     ANDROID_STATISTICS_HOT_PIXEL_MAP,                 // int32[]      | public       | HIDL v3.2
421     ANDROID_STATISTICS_LENS_SHADING_MAP_MODE,         // enum         | public       | HIDL v3.2
422     ANDROID_STATISTICS_OIS_DATA_MODE,                 // enum         | public       | HIDL v3.3
423     ANDROID_STATISTICS_OIS_TIMESTAMPS,                // int64[]      | ndk_public   | HIDL v3.3
424     ANDROID_STATISTICS_OIS_X_SHIFTS,                  // float[]      | ndk_public   | HIDL v3.3
425     ANDROID_STATISTICS_OIS_Y_SHIFTS,                  // float[]      | ndk_public   | HIDL v3.3
426     ANDROID_STATISTICS_END,
427 
428     ANDROID_STATISTICS_INFO_AVAILABLE_FACE_DETECT_MODES =
429                                                       // byte[]       | public       | HIDL v3.2
430             ANDROID_STATISTICS_INFO_START,
431     ANDROID_STATISTICS_INFO_HISTOGRAM_BUCKET_COUNT,   // int32        | system       | HIDL v3.2
432     ANDROID_STATISTICS_INFO_MAX_FACE_COUNT,           // int32        | public       | HIDL v3.2
433     ANDROID_STATISTICS_INFO_MAX_HISTOGRAM_COUNT,      // int32        | system       | HIDL v3.2
434     ANDROID_STATISTICS_INFO_MAX_SHARPNESS_MAP_VALUE,  // int32        | system       | HIDL v3.2
435     ANDROID_STATISTICS_INFO_SHARPNESS_MAP_SIZE,       // int32[]      | system       | HIDL v3.2
436     ANDROID_STATISTICS_INFO_AVAILABLE_HOT_PIXEL_MAP_MODES,
437                                                       // byte[]       | public       | HIDL v3.2
438     ANDROID_STATISTICS_INFO_AVAILABLE_LENS_SHADING_MAP_MODES,
439                                                       // byte[]       | public       | HIDL v3.2
440     ANDROID_STATISTICS_INFO_AVAILABLE_OIS_DATA_MODES, // byte[]       | public       | HIDL v3.3
441     ANDROID_STATISTICS_INFO_END,
442 
443     ANDROID_TONEMAP_CURVE_BLUE =                      // float[]      | ndk_public   | HIDL v3.2
444             ANDROID_TONEMAP_START,
445     ANDROID_TONEMAP_CURVE_GREEN,                      // float[]      | ndk_public   | HIDL v3.2
446     ANDROID_TONEMAP_CURVE_RED,                        // float[]      | ndk_public   | HIDL v3.2
447     ANDROID_TONEMAP_MODE,                             // enum         | public       | HIDL v3.2
448     ANDROID_TONEMAP_MAX_CURVE_POINTS,                 // int32        | public       | HIDL v3.2
449     ANDROID_TONEMAP_AVAILABLE_TONE_MAP_MODES,         // byte[]       | public       | HIDL v3.2
450     ANDROID_TONEMAP_GAMMA,                            // float        | public       | HIDL v3.2
451     ANDROID_TONEMAP_PRESET_CURVE,                     // enum         | public       | HIDL v3.2
452     ANDROID_TONEMAP_END,
453 
454     ANDROID_LED_TRANSMIT =                            // enum         | hidden       | HIDL v3.2
455             ANDROID_LED_START,
456     ANDROID_LED_AVAILABLE_LEDS,                       // enum[]       | hidden       | HIDL v3.2
457     ANDROID_LED_END,
458 
459     ANDROID_INFO_SUPPORTED_HARDWARE_LEVEL =           // enum         | public       | HIDL v3.2
460             ANDROID_INFO_START,
461     ANDROID_INFO_VERSION,                             // byte         | public       | HIDL v3.3
462     ANDROID_INFO_SUPPORTED_BUFFER_MANAGEMENT_VERSION, // enum         | system       | HIDL v3.4
463     ANDROID_INFO_END,
464 
465     ANDROID_BLACK_LEVEL_LOCK =                        // enum         | public       | HIDL v3.2
466             ANDROID_BLACK_LEVEL_START,
467     ANDROID_BLACK_LEVEL_END,
468 
469     ANDROID_SYNC_FRAME_NUMBER =                       // enum         | ndk_public   | HIDL v3.2
470             ANDROID_SYNC_START,
471     ANDROID_SYNC_MAX_LATENCY,                         // enum         | public       | HIDL v3.2
472     ANDROID_SYNC_END,
473 
474     ANDROID_REPROCESS_EFFECTIVE_EXPOSURE_FACTOR =     // float        | java_public  | HIDL v3.2
475             ANDROID_REPROCESS_START,
476     ANDROID_REPROCESS_MAX_CAPTURE_STALL,              // int32        | java_public  | HIDL v3.2
477     ANDROID_REPROCESS_END,
478 
479     ANDROID_DEPTH_MAX_DEPTH_SAMPLES =                 // int32        | system       | HIDL v3.2
480             ANDROID_DEPTH_START,
481     ANDROID_DEPTH_AVAILABLE_DEPTH_STREAM_CONFIGURATIONS,
482                                                       // enum[]       | ndk_public   | HIDL v3.2
483     ANDROID_DEPTH_AVAILABLE_DEPTH_MIN_FRAME_DURATIONS,// int64[]      | ndk_public   | HIDL v3.2
484     ANDROID_DEPTH_AVAILABLE_DEPTH_STALL_DURATIONS,    // int64[]      | ndk_public   | HIDL v3.2
485     ANDROID_DEPTH_DEPTH_IS_EXCLUSIVE,                 // enum         | public       | HIDL v3.2
486     ANDROID_DEPTH_AVAILABLE_RECOMMENDED_DEPTH_STREAM_CONFIGURATIONS,
487                                                       // int32[]      | ndk_public   | HIDL v3.4
488     ANDROID_DEPTH_AVAILABLE_DYNAMIC_DEPTH_STREAM_CONFIGURATIONS,
489                                                       // enum[]       | ndk_public   | HIDL v3.4
490     ANDROID_DEPTH_AVAILABLE_DYNAMIC_DEPTH_MIN_FRAME_DURATIONS,
491                                                       // int64[]      | ndk_public   | HIDL v3.4
492     ANDROID_DEPTH_AVAILABLE_DYNAMIC_DEPTH_STALL_DURATIONS,
493                                                       // int64[]      | ndk_public   | HIDL v3.4
494     ANDROID_DEPTH_AVAILABLE_DEPTH_STREAM_CONFIGURATIONS_MAXIMUM_RESOLUTION,
495                                                       // enum[]       | ndk_public   | HIDL v3.6
496     ANDROID_DEPTH_AVAILABLE_DEPTH_MIN_FRAME_DURATIONS_MAXIMUM_RESOLUTION,
497                                                       // int64[]      | ndk_public   | HIDL v3.6
498     ANDROID_DEPTH_AVAILABLE_DEPTH_STALL_DURATIONS_MAXIMUM_RESOLUTION,
499                                                       // int64[]      | ndk_public   | HIDL v3.6
500     ANDROID_DEPTH_AVAILABLE_DYNAMIC_DEPTH_STREAM_CONFIGURATIONS_MAXIMUM_RESOLUTION,
501                                                       // enum[]       | ndk_public   | HIDL v3.6
502     ANDROID_DEPTH_AVAILABLE_DYNAMIC_DEPTH_MIN_FRAME_DURATIONS_MAXIMUM_RESOLUTION,
503                                                       // int64[]      | ndk_public   | HIDL v3.6
504     ANDROID_DEPTH_AVAILABLE_DYNAMIC_DEPTH_STALL_DURATIONS_MAXIMUM_RESOLUTION,
505                                                       // int64[]      | ndk_public   | HIDL v3.6
506     ANDROID_DEPTH_END,
507 
508     ANDROID_LOGICAL_MULTI_CAMERA_PHYSICAL_IDS =       // byte[]       | ndk_public   | HIDL v3.3
509             ANDROID_LOGICAL_MULTI_CAMERA_START,
510     ANDROID_LOGICAL_MULTI_CAMERA_SENSOR_SYNC_TYPE,    // enum         | public       | HIDL v3.3
511     ANDROID_LOGICAL_MULTI_CAMERA_ACTIVE_PHYSICAL_ID,  // byte         | public       | HIDL v3.4
512     ANDROID_LOGICAL_MULTI_CAMERA_END,
513 
514     ANDROID_DISTORTION_CORRECTION_MODE =              // enum         | public       | HIDL v3.3
515             ANDROID_DISTORTION_CORRECTION_START,
516     ANDROID_DISTORTION_CORRECTION_AVAILABLE_MODES,    // byte[]       | public       | HIDL v3.3
517     ANDROID_DISTORTION_CORRECTION_END,
518 
519     ANDROID_HEIC_AVAILABLE_HEIC_STREAM_CONFIGURATIONS =
520                                                       // enum[]       | ndk_public   | HIDL v3.4
521             ANDROID_HEIC_START,
522     ANDROID_HEIC_AVAILABLE_HEIC_MIN_FRAME_DURATIONS,  // int64[]      | ndk_public   | HIDL v3.4
523     ANDROID_HEIC_AVAILABLE_HEIC_STALL_DURATIONS,      // int64[]      | ndk_public   | HIDL v3.4
524     ANDROID_HEIC_AVAILABLE_HEIC_STREAM_CONFIGURATIONS_MAXIMUM_RESOLUTION,
525                                                       // enum[]       | ndk_public   | HIDL v3.6
526     ANDROID_HEIC_AVAILABLE_HEIC_MIN_FRAME_DURATIONS_MAXIMUM_RESOLUTION,
527                                                       // int64[]      | ndk_public   | HIDL v3.6
528     ANDROID_HEIC_AVAILABLE_HEIC_STALL_DURATIONS_MAXIMUM_RESOLUTION,
529                                                       // int64[]      | ndk_public   | HIDL v3.6
530     ANDROID_HEIC_END,
531 
532     ANDROID_HEIC_INFO_SUPPORTED =                     // enum         | system       | HIDL v3.4
533             ANDROID_HEIC_INFO_START,
534     ANDROID_HEIC_INFO_MAX_JPEG_APP_SEGMENTS_COUNT,    // byte         | system       | HIDL v3.4
535     ANDROID_HEIC_INFO_END,
536 
537 } camera_metadata_tag_t;
538 
539 /**
540  * Enumeration definitions for the various entries that need them
541  */
542 
543 // ANDROID_COLOR_CORRECTION_MODE
544 typedef enum camera_metadata_enum_android_color_correction_mode {
545     ANDROID_COLOR_CORRECTION_MODE_TRANSFORM_MATRIX                  , // HIDL v3.2
546     ANDROID_COLOR_CORRECTION_MODE_FAST                              , // HIDL v3.2
547     ANDROID_COLOR_CORRECTION_MODE_HIGH_QUALITY                      , // HIDL v3.2
548 } camera_metadata_enum_android_color_correction_mode_t;
549 
550 // ANDROID_COLOR_CORRECTION_ABERRATION_MODE
551 typedef enum camera_metadata_enum_android_color_correction_aberration_mode {
552     ANDROID_COLOR_CORRECTION_ABERRATION_MODE_OFF                    , // HIDL v3.2
553     ANDROID_COLOR_CORRECTION_ABERRATION_MODE_FAST                   , // HIDL v3.2
554     ANDROID_COLOR_CORRECTION_ABERRATION_MODE_HIGH_QUALITY           , // HIDL v3.2
555 } camera_metadata_enum_android_color_correction_aberration_mode_t;
556 
557 
558 // ANDROID_CONTROL_AE_ANTIBANDING_MODE
559 typedef enum camera_metadata_enum_android_control_ae_antibanding_mode {
560     ANDROID_CONTROL_AE_ANTIBANDING_MODE_OFF                         , // HIDL v3.2
561     ANDROID_CONTROL_AE_ANTIBANDING_MODE_50HZ                        , // HIDL v3.2
562     ANDROID_CONTROL_AE_ANTIBANDING_MODE_60HZ                        , // HIDL v3.2
563     ANDROID_CONTROL_AE_ANTIBANDING_MODE_AUTO                        , // HIDL v3.2
564 } camera_metadata_enum_android_control_ae_antibanding_mode_t;
565 
566 // ANDROID_CONTROL_AE_LOCK
567 typedef enum camera_metadata_enum_android_control_ae_lock {
568     ANDROID_CONTROL_AE_LOCK_OFF                                     , // HIDL v3.2
569     ANDROID_CONTROL_AE_LOCK_ON                                      , // HIDL v3.2
570 } camera_metadata_enum_android_control_ae_lock_t;
571 
572 // ANDROID_CONTROL_AE_MODE
573 typedef enum camera_metadata_enum_android_control_ae_mode {
574     ANDROID_CONTROL_AE_MODE_OFF                                     , // HIDL v3.2
575     ANDROID_CONTROL_AE_MODE_ON                                      , // HIDL v3.2
576     ANDROID_CONTROL_AE_MODE_ON_AUTO_FLASH                           , // HIDL v3.2
577     ANDROID_CONTROL_AE_MODE_ON_ALWAYS_FLASH                         , // HIDL v3.2
578     ANDROID_CONTROL_AE_MODE_ON_AUTO_FLASH_REDEYE                    , // HIDL v3.2
579     ANDROID_CONTROL_AE_MODE_ON_EXTERNAL_FLASH                       , // HIDL v3.3
580 } camera_metadata_enum_android_control_ae_mode_t;
581 
582 // ANDROID_CONTROL_AE_PRECAPTURE_TRIGGER
583 typedef enum camera_metadata_enum_android_control_ae_precapture_trigger {
584     ANDROID_CONTROL_AE_PRECAPTURE_TRIGGER_IDLE                      , // HIDL v3.2
585     ANDROID_CONTROL_AE_PRECAPTURE_TRIGGER_START                     , // HIDL v3.2
586     ANDROID_CONTROL_AE_PRECAPTURE_TRIGGER_CANCEL                    , // HIDL v3.2
587 } camera_metadata_enum_android_control_ae_precapture_trigger_t;
588 
589 // ANDROID_CONTROL_AF_MODE
590 typedef enum camera_metadata_enum_android_control_af_mode {
591     ANDROID_CONTROL_AF_MODE_OFF                                     , // HIDL v3.2
592     ANDROID_CONTROL_AF_MODE_AUTO                                    , // HIDL v3.2
593     ANDROID_CONTROL_AF_MODE_MACRO                                   , // HIDL v3.2
594     ANDROID_CONTROL_AF_MODE_CONTINUOUS_VIDEO                        , // HIDL v3.2
595     ANDROID_CONTROL_AF_MODE_CONTINUOUS_PICTURE                      , // HIDL v3.2
596     ANDROID_CONTROL_AF_MODE_EDOF                                    , // HIDL v3.2
597 } camera_metadata_enum_android_control_af_mode_t;
598 
599 // ANDROID_CONTROL_AF_TRIGGER
600 typedef enum camera_metadata_enum_android_control_af_trigger {
601     ANDROID_CONTROL_AF_TRIGGER_IDLE                                 , // HIDL v3.2
602     ANDROID_CONTROL_AF_TRIGGER_START                                , // HIDL v3.2
603     ANDROID_CONTROL_AF_TRIGGER_CANCEL                               , // HIDL v3.2
604 } camera_metadata_enum_android_control_af_trigger_t;
605 
606 // ANDROID_CONTROL_AWB_LOCK
607 typedef enum camera_metadata_enum_android_control_awb_lock {
608     ANDROID_CONTROL_AWB_LOCK_OFF                                    , // HIDL v3.2
609     ANDROID_CONTROL_AWB_LOCK_ON                                     , // HIDL v3.2
610 } camera_metadata_enum_android_control_awb_lock_t;
611 
612 // ANDROID_CONTROL_AWB_MODE
613 typedef enum camera_metadata_enum_android_control_awb_mode {
614     ANDROID_CONTROL_AWB_MODE_OFF                                    , // HIDL v3.2
615     ANDROID_CONTROL_AWB_MODE_AUTO                                   , // HIDL v3.2
616     ANDROID_CONTROL_AWB_MODE_INCANDESCENT                           , // HIDL v3.2
617     ANDROID_CONTROL_AWB_MODE_FLUORESCENT                            , // HIDL v3.2
618     ANDROID_CONTROL_AWB_MODE_WARM_FLUORESCENT                       , // HIDL v3.2
619     ANDROID_CONTROL_AWB_MODE_DAYLIGHT                               , // HIDL v3.2
620     ANDROID_CONTROL_AWB_MODE_CLOUDY_DAYLIGHT                        , // HIDL v3.2
621     ANDROID_CONTROL_AWB_MODE_TWILIGHT                               , // HIDL v3.2
622     ANDROID_CONTROL_AWB_MODE_SHADE                                  , // HIDL v3.2
623 } camera_metadata_enum_android_control_awb_mode_t;
624 
625 // ANDROID_CONTROL_CAPTURE_INTENT
626 typedef enum camera_metadata_enum_android_control_capture_intent {
627     ANDROID_CONTROL_CAPTURE_INTENT_CUSTOM                           , // HIDL v3.2
628     ANDROID_CONTROL_CAPTURE_INTENT_PREVIEW                          , // HIDL v3.2
629     ANDROID_CONTROL_CAPTURE_INTENT_STILL_CAPTURE                    , // HIDL v3.2
630     ANDROID_CONTROL_CAPTURE_INTENT_VIDEO_RECORD                     , // HIDL v3.2
631     ANDROID_CONTROL_CAPTURE_INTENT_VIDEO_SNAPSHOT                   , // HIDL v3.2
632     ANDROID_CONTROL_CAPTURE_INTENT_ZERO_SHUTTER_LAG                 , // HIDL v3.2
633     ANDROID_CONTROL_CAPTURE_INTENT_MANUAL                           , // HIDL v3.2
634     ANDROID_CONTROL_CAPTURE_INTENT_MOTION_TRACKING                  , // HIDL v3.3
635 } camera_metadata_enum_android_control_capture_intent_t;
636 
637 // ANDROID_CONTROL_EFFECT_MODE
638 typedef enum camera_metadata_enum_android_control_effect_mode {
639     ANDROID_CONTROL_EFFECT_MODE_OFF                                 , // HIDL v3.2
640     ANDROID_CONTROL_EFFECT_MODE_MONO                                , // HIDL v3.2
641     ANDROID_CONTROL_EFFECT_MODE_NEGATIVE                            , // HIDL v3.2
642     ANDROID_CONTROL_EFFECT_MODE_SOLARIZE                            , // HIDL v3.2
643     ANDROID_CONTROL_EFFECT_MODE_SEPIA                               , // HIDL v3.2
644     ANDROID_CONTROL_EFFECT_MODE_POSTERIZE                           , // HIDL v3.2
645     ANDROID_CONTROL_EFFECT_MODE_WHITEBOARD                          , // HIDL v3.2
646     ANDROID_CONTROL_EFFECT_MODE_BLACKBOARD                          , // HIDL v3.2
647     ANDROID_CONTROL_EFFECT_MODE_AQUA                                , // HIDL v3.2
648 } camera_metadata_enum_android_control_effect_mode_t;
649 
650 // ANDROID_CONTROL_MODE
651 typedef enum camera_metadata_enum_android_control_mode {
652     ANDROID_CONTROL_MODE_OFF                                        , // HIDL v3.2
653     ANDROID_CONTROL_MODE_AUTO                                       , // HIDL v3.2
654     ANDROID_CONTROL_MODE_USE_SCENE_MODE                             , // HIDL v3.2
655     ANDROID_CONTROL_MODE_OFF_KEEP_STATE                             , // HIDL v3.2
656     ANDROID_CONTROL_MODE_USE_EXTENDED_SCENE_MODE                    , // HIDL v3.5
657 } camera_metadata_enum_android_control_mode_t;
658 
659 // ANDROID_CONTROL_SCENE_MODE
660 typedef enum camera_metadata_enum_android_control_scene_mode {
661     ANDROID_CONTROL_SCENE_MODE_DISABLED                              = 0, // HIDL v3.2
662     ANDROID_CONTROL_SCENE_MODE_FACE_PRIORITY                        , // HIDL v3.2
663     ANDROID_CONTROL_SCENE_MODE_ACTION                               , // HIDL v3.2
664     ANDROID_CONTROL_SCENE_MODE_PORTRAIT                             , // HIDL v3.2
665     ANDROID_CONTROL_SCENE_MODE_LANDSCAPE                            , // HIDL v3.2
666     ANDROID_CONTROL_SCENE_MODE_NIGHT                                , // HIDL v3.2
667     ANDROID_CONTROL_SCENE_MODE_NIGHT_PORTRAIT                       , // HIDL v3.2
668     ANDROID_CONTROL_SCENE_MODE_THEATRE                              , // HIDL v3.2
669     ANDROID_CONTROL_SCENE_MODE_BEACH                                , // HIDL v3.2
670     ANDROID_CONTROL_SCENE_MODE_SNOW                                 , // HIDL v3.2
671     ANDROID_CONTROL_SCENE_MODE_SUNSET                               , // HIDL v3.2
672     ANDROID_CONTROL_SCENE_MODE_STEADYPHOTO                          , // HIDL v3.2
673     ANDROID_CONTROL_SCENE_MODE_FIREWORKS                            , // HIDL v3.2
674     ANDROID_CONTROL_SCENE_MODE_SPORTS                               , // HIDL v3.2
675     ANDROID_CONTROL_SCENE_MODE_PARTY                                , // HIDL v3.2
676     ANDROID_CONTROL_SCENE_MODE_CANDLELIGHT                          , // HIDL v3.2
677     ANDROID_CONTROL_SCENE_MODE_BARCODE                              , // HIDL v3.2
678     ANDROID_CONTROL_SCENE_MODE_HIGH_SPEED_VIDEO                     , // HIDL v3.2
679     ANDROID_CONTROL_SCENE_MODE_HDR                                  , // HIDL v3.2
680     ANDROID_CONTROL_SCENE_MODE_FACE_PRIORITY_LOW_LIGHT              , // HIDL v3.2
681     ANDROID_CONTROL_SCENE_MODE_DEVICE_CUSTOM_START                   = 100, // HIDL v3.2
682     ANDROID_CONTROL_SCENE_MODE_DEVICE_CUSTOM_END                     = 127, // HIDL v3.2
683 } camera_metadata_enum_android_control_scene_mode_t;
684 
685 // ANDROID_CONTROL_VIDEO_STABILIZATION_MODE
686 typedef enum camera_metadata_enum_android_control_video_stabilization_mode {
687     ANDROID_CONTROL_VIDEO_STABILIZATION_MODE_OFF                    , // HIDL v3.2
688     ANDROID_CONTROL_VIDEO_STABILIZATION_MODE_ON                     , // HIDL v3.2
689 } camera_metadata_enum_android_control_video_stabilization_mode_t;
690 
691 // ANDROID_CONTROL_AE_STATE
692 typedef enum camera_metadata_enum_android_control_ae_state {
693     ANDROID_CONTROL_AE_STATE_INACTIVE                               , // HIDL v3.2
694     ANDROID_CONTROL_AE_STATE_SEARCHING                              , // HIDL v3.2
695     ANDROID_CONTROL_AE_STATE_CONVERGED                              , // HIDL v3.2
696     ANDROID_CONTROL_AE_STATE_LOCKED                                 , // HIDL v3.2
697     ANDROID_CONTROL_AE_STATE_FLASH_REQUIRED                         , // HIDL v3.2
698     ANDROID_CONTROL_AE_STATE_PRECAPTURE                             , // HIDL v3.2
699 } camera_metadata_enum_android_control_ae_state_t;
700 
701 // ANDROID_CONTROL_AF_STATE
702 typedef enum camera_metadata_enum_android_control_af_state {
703     ANDROID_CONTROL_AF_STATE_INACTIVE                               , // HIDL v3.2
704     ANDROID_CONTROL_AF_STATE_PASSIVE_SCAN                           , // HIDL v3.2
705     ANDROID_CONTROL_AF_STATE_PASSIVE_FOCUSED                        , // HIDL v3.2
706     ANDROID_CONTROL_AF_STATE_ACTIVE_SCAN                            , // HIDL v3.2
707     ANDROID_CONTROL_AF_STATE_FOCUSED_LOCKED                         , // HIDL v3.2
708     ANDROID_CONTROL_AF_STATE_NOT_FOCUSED_LOCKED                     , // HIDL v3.2
709     ANDROID_CONTROL_AF_STATE_PASSIVE_UNFOCUSED                      , // HIDL v3.2
710 } camera_metadata_enum_android_control_af_state_t;
711 
712 // ANDROID_CONTROL_AWB_STATE
713 typedef enum camera_metadata_enum_android_control_awb_state {
714     ANDROID_CONTROL_AWB_STATE_INACTIVE                              , // HIDL v3.2
715     ANDROID_CONTROL_AWB_STATE_SEARCHING                             , // HIDL v3.2
716     ANDROID_CONTROL_AWB_STATE_CONVERGED                             , // HIDL v3.2
717     ANDROID_CONTROL_AWB_STATE_LOCKED                                , // HIDL v3.2
718 } camera_metadata_enum_android_control_awb_state_t;
719 
720 // ANDROID_CONTROL_AE_LOCK_AVAILABLE
721 typedef enum camera_metadata_enum_android_control_ae_lock_available {
722     ANDROID_CONTROL_AE_LOCK_AVAILABLE_FALSE                         , // HIDL v3.2
723     ANDROID_CONTROL_AE_LOCK_AVAILABLE_TRUE                          , // HIDL v3.2
724 } camera_metadata_enum_android_control_ae_lock_available_t;
725 
726 // ANDROID_CONTROL_AWB_LOCK_AVAILABLE
727 typedef enum camera_metadata_enum_android_control_awb_lock_available {
728     ANDROID_CONTROL_AWB_LOCK_AVAILABLE_FALSE                        , // HIDL v3.2
729     ANDROID_CONTROL_AWB_LOCK_AVAILABLE_TRUE                         , // HIDL v3.2
730 } camera_metadata_enum_android_control_awb_lock_available_t;
731 
732 // ANDROID_CONTROL_ENABLE_ZSL
733 typedef enum camera_metadata_enum_android_control_enable_zsl {
734     ANDROID_CONTROL_ENABLE_ZSL_FALSE                                , // HIDL v3.2
735     ANDROID_CONTROL_ENABLE_ZSL_TRUE                                 , // HIDL v3.2
736 } camera_metadata_enum_android_control_enable_zsl_t;
737 
738 // ANDROID_CONTROL_AF_SCENE_CHANGE
739 typedef enum camera_metadata_enum_android_control_af_scene_change {
740     ANDROID_CONTROL_AF_SCENE_CHANGE_NOT_DETECTED                    , // HIDL v3.3
741     ANDROID_CONTROL_AF_SCENE_CHANGE_DETECTED                        , // HIDL v3.3
742 } camera_metadata_enum_android_control_af_scene_change_t;
743 
744 // ANDROID_CONTROL_EXTENDED_SCENE_MODE
745 typedef enum camera_metadata_enum_android_control_extended_scene_mode {
746     ANDROID_CONTROL_EXTENDED_SCENE_MODE_DISABLED                     = 0, // HIDL v3.5
747     ANDROID_CONTROL_EXTENDED_SCENE_MODE_BOKEH_STILL_CAPTURE         , // HIDL v3.5
748     ANDROID_CONTROL_EXTENDED_SCENE_MODE_BOKEH_CONTINUOUS            , // HIDL v3.5
749     ANDROID_CONTROL_EXTENDED_SCENE_MODE_VENDOR_START                 = 0x40, // HIDL v3.5
750 } camera_metadata_enum_android_control_extended_scene_mode_t;
751 
752 // ANDROID_CONTROL_AF_REGIONS_SET
753 typedef enum camera_metadata_enum_android_control_af_regions_set {
754     ANDROID_CONTROL_AF_REGIONS_SET_TRUE                             ,
755     ANDROID_CONTROL_AF_REGIONS_SET_FALSE                            ,
756 } camera_metadata_enum_android_control_af_regions_set_t;
757 
758 // ANDROID_CONTROL_AE_REGIONS_SET
759 typedef enum camera_metadata_enum_android_control_ae_regions_set {
760     ANDROID_CONTROL_AE_REGIONS_SET_TRUE                             ,
761     ANDROID_CONTROL_AE_REGIONS_SET_FALSE                            ,
762 } camera_metadata_enum_android_control_ae_regions_set_t;
763 
764 // ANDROID_CONTROL_AWB_REGIONS_SET
765 typedef enum camera_metadata_enum_android_control_awb_regions_set {
766     ANDROID_CONTROL_AWB_REGIONS_SET_TRUE                            ,
767     ANDROID_CONTROL_AWB_REGIONS_SET_FALSE                           ,
768 } camera_metadata_enum_android_control_awb_regions_set_t;
769 
770 
771 // ANDROID_DEMOSAIC_MODE
772 typedef enum camera_metadata_enum_android_demosaic_mode {
773     ANDROID_DEMOSAIC_MODE_FAST                                      , // HIDL v3.2
774     ANDROID_DEMOSAIC_MODE_HIGH_QUALITY                              , // HIDL v3.2
775 } camera_metadata_enum_android_demosaic_mode_t;
776 
777 
778 // ANDROID_EDGE_MODE
779 typedef enum camera_metadata_enum_android_edge_mode {
780     ANDROID_EDGE_MODE_OFF                                           , // HIDL v3.2
781     ANDROID_EDGE_MODE_FAST                                          , // HIDL v3.2
782     ANDROID_EDGE_MODE_HIGH_QUALITY                                  , // HIDL v3.2
783     ANDROID_EDGE_MODE_ZERO_SHUTTER_LAG                              , // HIDL v3.2
784 } camera_metadata_enum_android_edge_mode_t;
785 
786 
787 // ANDROID_FLASH_MODE
788 typedef enum camera_metadata_enum_android_flash_mode {
789     ANDROID_FLASH_MODE_OFF                                          , // HIDL v3.2
790     ANDROID_FLASH_MODE_SINGLE                                       , // HIDL v3.2
791     ANDROID_FLASH_MODE_TORCH                                        , // HIDL v3.2
792 } camera_metadata_enum_android_flash_mode_t;
793 
794 // ANDROID_FLASH_STATE
795 typedef enum camera_metadata_enum_android_flash_state {
796     ANDROID_FLASH_STATE_UNAVAILABLE                                 , // HIDL v3.2
797     ANDROID_FLASH_STATE_CHARGING                                    , // HIDL v3.2
798     ANDROID_FLASH_STATE_READY                                       , // HIDL v3.2
799     ANDROID_FLASH_STATE_FIRED                                       , // HIDL v3.2
800     ANDROID_FLASH_STATE_PARTIAL                                     , // HIDL v3.2
801 } camera_metadata_enum_android_flash_state_t;
802 
803 
804 // ANDROID_FLASH_INFO_AVAILABLE
805 typedef enum camera_metadata_enum_android_flash_info_available {
806     ANDROID_FLASH_INFO_AVAILABLE_FALSE                              , // HIDL v3.2
807     ANDROID_FLASH_INFO_AVAILABLE_TRUE                               , // HIDL v3.2
808 } camera_metadata_enum_android_flash_info_available_t;
809 
810 
811 // ANDROID_HOT_PIXEL_MODE
812 typedef enum camera_metadata_enum_android_hot_pixel_mode {
813     ANDROID_HOT_PIXEL_MODE_OFF                                      , // HIDL v3.2
814     ANDROID_HOT_PIXEL_MODE_FAST                                     , // HIDL v3.2
815     ANDROID_HOT_PIXEL_MODE_HIGH_QUALITY                             , // HIDL v3.2
816 } camera_metadata_enum_android_hot_pixel_mode_t;
817 
818 
819 
820 // ANDROID_LENS_OPTICAL_STABILIZATION_MODE
821 typedef enum camera_metadata_enum_android_lens_optical_stabilization_mode {
822     ANDROID_LENS_OPTICAL_STABILIZATION_MODE_OFF                     , // HIDL v3.2
823     ANDROID_LENS_OPTICAL_STABILIZATION_MODE_ON                      , // HIDL v3.2
824 } camera_metadata_enum_android_lens_optical_stabilization_mode_t;
825 
826 // ANDROID_LENS_FACING
827 typedef enum camera_metadata_enum_android_lens_facing {
828     ANDROID_LENS_FACING_FRONT                                       , // HIDL v3.2
829     ANDROID_LENS_FACING_BACK                                        , // HIDL v3.2
830     ANDROID_LENS_FACING_EXTERNAL                                    , // HIDL v3.2
831 } camera_metadata_enum_android_lens_facing_t;
832 
833 // ANDROID_LENS_STATE
834 typedef enum camera_metadata_enum_android_lens_state {
835     ANDROID_LENS_STATE_STATIONARY                                   , // HIDL v3.2
836     ANDROID_LENS_STATE_MOVING                                       , // HIDL v3.2
837 } camera_metadata_enum_android_lens_state_t;
838 
839 // ANDROID_LENS_POSE_REFERENCE
840 typedef enum camera_metadata_enum_android_lens_pose_reference {
841     ANDROID_LENS_POSE_REFERENCE_PRIMARY_CAMERA                      , // HIDL v3.3
842     ANDROID_LENS_POSE_REFERENCE_GYROSCOPE                           , // HIDL v3.3
843     ANDROID_LENS_POSE_REFERENCE_UNDEFINED                           , // HIDL v3.5
844 } camera_metadata_enum_android_lens_pose_reference_t;
845 
846 
847 // ANDROID_LENS_INFO_FOCUS_DISTANCE_CALIBRATION
848 typedef enum camera_metadata_enum_android_lens_info_focus_distance_calibration {
849     ANDROID_LENS_INFO_FOCUS_DISTANCE_CALIBRATION_UNCALIBRATED       , // HIDL v3.2
850     ANDROID_LENS_INFO_FOCUS_DISTANCE_CALIBRATION_APPROXIMATE        , // HIDL v3.2
851     ANDROID_LENS_INFO_FOCUS_DISTANCE_CALIBRATION_CALIBRATED         , // HIDL v3.2
852 } camera_metadata_enum_android_lens_info_focus_distance_calibration_t;
853 
854 
855 // ANDROID_NOISE_REDUCTION_MODE
856 typedef enum camera_metadata_enum_android_noise_reduction_mode {
857     ANDROID_NOISE_REDUCTION_MODE_OFF                                , // HIDL v3.2
858     ANDROID_NOISE_REDUCTION_MODE_FAST                               , // HIDL v3.2
859     ANDROID_NOISE_REDUCTION_MODE_HIGH_QUALITY                       , // HIDL v3.2
860     ANDROID_NOISE_REDUCTION_MODE_MINIMAL                            , // HIDL v3.2
861     ANDROID_NOISE_REDUCTION_MODE_ZERO_SHUTTER_LAG                   , // HIDL v3.2
862 } camera_metadata_enum_android_noise_reduction_mode_t;
863 
864 
865 // ANDROID_QUIRKS_PARTIAL_RESULT
866 typedef enum camera_metadata_enum_android_quirks_partial_result {
867     ANDROID_QUIRKS_PARTIAL_RESULT_FINAL                             , // HIDL v3.2
868     ANDROID_QUIRKS_PARTIAL_RESULT_PARTIAL                           , // HIDL v3.2
869 } camera_metadata_enum_android_quirks_partial_result_t;
870 
871 
872 // ANDROID_REQUEST_METADATA_MODE
873 typedef enum camera_metadata_enum_android_request_metadata_mode {
874     ANDROID_REQUEST_METADATA_MODE_NONE                              , // HIDL v3.2
875     ANDROID_REQUEST_METADATA_MODE_FULL                              , // HIDL v3.2
876 } camera_metadata_enum_android_request_metadata_mode_t;
877 
878 // ANDROID_REQUEST_TYPE
879 typedef enum camera_metadata_enum_android_request_type {
880     ANDROID_REQUEST_TYPE_CAPTURE                                    , // HIDL v3.2
881     ANDROID_REQUEST_TYPE_REPROCESS                                  , // HIDL v3.2
882 } camera_metadata_enum_android_request_type_t;
883 
884 // ANDROID_REQUEST_AVAILABLE_CAPABILITIES
885 typedef enum camera_metadata_enum_android_request_available_capabilities {
886     ANDROID_REQUEST_AVAILABLE_CAPABILITIES_BACKWARD_COMPATIBLE      , // HIDL v3.2
887     ANDROID_REQUEST_AVAILABLE_CAPABILITIES_MANUAL_SENSOR            , // HIDL v3.2
888     ANDROID_REQUEST_AVAILABLE_CAPABILITIES_MANUAL_POST_PROCESSING   , // HIDL v3.2
889     ANDROID_REQUEST_AVAILABLE_CAPABILITIES_RAW                      , // HIDL v3.2
890     ANDROID_REQUEST_AVAILABLE_CAPABILITIES_PRIVATE_REPROCESSING     , // HIDL v3.2
891     ANDROID_REQUEST_AVAILABLE_CAPABILITIES_READ_SENSOR_SETTINGS     , // HIDL v3.2
892     ANDROID_REQUEST_AVAILABLE_CAPABILITIES_BURST_CAPTURE            , // HIDL v3.2
893     ANDROID_REQUEST_AVAILABLE_CAPABILITIES_YUV_REPROCESSING         , // HIDL v3.2
894     ANDROID_REQUEST_AVAILABLE_CAPABILITIES_DEPTH_OUTPUT             , // HIDL v3.2
895     ANDROID_REQUEST_AVAILABLE_CAPABILITIES_CONSTRAINED_HIGH_SPEED_VIDEO
896                                                                      , // HIDL v3.2
897     ANDROID_REQUEST_AVAILABLE_CAPABILITIES_MOTION_TRACKING          , // HIDL v3.3
898     ANDROID_REQUEST_AVAILABLE_CAPABILITIES_LOGICAL_MULTI_CAMERA     , // HIDL v3.3
899     ANDROID_REQUEST_AVAILABLE_CAPABILITIES_MONOCHROME               , // HIDL v3.3
900     ANDROID_REQUEST_AVAILABLE_CAPABILITIES_SECURE_IMAGE_DATA        , // HIDL v3.4
901     ANDROID_REQUEST_AVAILABLE_CAPABILITIES_SYSTEM_CAMERA            , // HIDL v3.5
902     ANDROID_REQUEST_AVAILABLE_CAPABILITIES_OFFLINE_PROCESSING       , // HIDL v3.5
903     ANDROID_REQUEST_AVAILABLE_CAPABILITIES_ULTRA_HIGH_RESOLUTION_SENSOR
904                                                                      , // HIDL v3.6
905     ANDROID_REQUEST_AVAILABLE_CAPABILITIES_REMOSAIC_REPROCESSING    , // HIDL v3.6
906 } camera_metadata_enum_android_request_available_capabilities_t;
907 
908 
909 // ANDROID_SCALER_AVAILABLE_FORMATS
910 typedef enum camera_metadata_enum_android_scaler_available_formats {
911     ANDROID_SCALER_AVAILABLE_FORMATS_RAW16                           = 0x20, // HIDL v3.2
912     ANDROID_SCALER_AVAILABLE_FORMATS_RAW_OPAQUE                      = 0x24, // HIDL v3.2
913     ANDROID_SCALER_AVAILABLE_FORMATS_YV12                            = 0x32315659, // HIDL v3.2
914     ANDROID_SCALER_AVAILABLE_FORMATS_YCrCb_420_SP                    = 0x11, // HIDL v3.2
915     ANDROID_SCALER_AVAILABLE_FORMATS_IMPLEMENTATION_DEFINED          = 0x22, // HIDL v3.2
916     ANDROID_SCALER_AVAILABLE_FORMATS_YCbCr_420_888                   = 0x23, // HIDL v3.2
917     ANDROID_SCALER_AVAILABLE_FORMATS_BLOB                            = 0x21, // HIDL v3.2
918     ANDROID_SCALER_AVAILABLE_FORMATS_RAW10                           = 0x25, // HIDL v3.4
919     ANDROID_SCALER_AVAILABLE_FORMATS_RAW12                           = 0x26, // HIDL v3.4
920     ANDROID_SCALER_AVAILABLE_FORMATS_Y8                              = 0x20203859, // HIDL v3.4
921 } camera_metadata_enum_android_scaler_available_formats_t;
922 
923 // ANDROID_SCALER_AVAILABLE_STREAM_CONFIGURATIONS
924 typedef enum camera_metadata_enum_android_scaler_available_stream_configurations {
925     ANDROID_SCALER_AVAILABLE_STREAM_CONFIGURATIONS_OUTPUT           , // HIDL v3.2
926     ANDROID_SCALER_AVAILABLE_STREAM_CONFIGURATIONS_INPUT            , // HIDL v3.2
927 } camera_metadata_enum_android_scaler_available_stream_configurations_t;
928 
929 // ANDROID_SCALER_CROPPING_TYPE
930 typedef enum camera_metadata_enum_android_scaler_cropping_type {
931     ANDROID_SCALER_CROPPING_TYPE_CENTER_ONLY                        , // HIDL v3.2
932     ANDROID_SCALER_CROPPING_TYPE_FREEFORM                           , // HIDL v3.2
933 } camera_metadata_enum_android_scaler_cropping_type_t;
934 
935 // ANDROID_SCALER_AVAILABLE_RECOMMENDED_STREAM_CONFIGURATIONS
936 typedef enum camera_metadata_enum_android_scaler_available_recommended_stream_configurations {
937     ANDROID_SCALER_AVAILABLE_RECOMMENDED_STREAM_CONFIGURATIONS_PREVIEW
938                                                                       = 0x0, // HIDL v3.4
939     ANDROID_SCALER_AVAILABLE_RECOMMENDED_STREAM_CONFIGURATIONS_RECORD
940                                                                       = 0x1, // HIDL v3.4
941     ANDROID_SCALER_AVAILABLE_RECOMMENDED_STREAM_CONFIGURATIONS_VIDEO_SNAPSHOT
942                                                                       = 0x2, // HIDL v3.4
943     ANDROID_SCALER_AVAILABLE_RECOMMENDED_STREAM_CONFIGURATIONS_SNAPSHOT
944                                                                       = 0x3, // HIDL v3.4
945     ANDROID_SCALER_AVAILABLE_RECOMMENDED_STREAM_CONFIGURATIONS_ZSL   = 0x4, // HIDL v3.4
946     ANDROID_SCALER_AVAILABLE_RECOMMENDED_STREAM_CONFIGURATIONS_RAW   = 0x5, // HIDL v3.4
947     ANDROID_SCALER_AVAILABLE_RECOMMENDED_STREAM_CONFIGURATIONS_LOW_LATENCY_SNAPSHOT
948                                                                       = 0x6, // HIDL v3.4
949     ANDROID_SCALER_AVAILABLE_RECOMMENDED_STREAM_CONFIGURATIONS_PUBLIC_END
950                                                                       = 0x7, // HIDL v3.4
951     ANDROID_SCALER_AVAILABLE_RECOMMENDED_STREAM_CONFIGURATIONS_VENDOR_START
952                                                                       = 0x18, // HIDL v3.4
953 } camera_metadata_enum_android_scaler_available_recommended_stream_configurations_t;
954 
955 // ANDROID_SCALER_ROTATE_AND_CROP
956 typedef enum camera_metadata_enum_android_scaler_rotate_and_crop {
957     ANDROID_SCALER_ROTATE_AND_CROP_NONE                             , // HIDL v3.5
958     ANDROID_SCALER_ROTATE_AND_CROP_90                               , // HIDL v3.5
959     ANDROID_SCALER_ROTATE_AND_CROP_180                              , // HIDL v3.5
960     ANDROID_SCALER_ROTATE_AND_CROP_270                              , // HIDL v3.5
961     ANDROID_SCALER_ROTATE_AND_CROP_AUTO                             , // HIDL v3.5
962 } camera_metadata_enum_android_scaler_rotate_and_crop_t;
963 
964 // ANDROID_SCALER_PHYSICAL_CAMERA_MULTI_RESOLUTION_STREAM_CONFIGURATIONS
965 typedef enum camera_metadata_enum_android_scaler_physical_camera_multi_resolution_stream_configurations {
966     ANDROID_SCALER_PHYSICAL_CAMERA_MULTI_RESOLUTION_STREAM_CONFIGURATIONS_OUTPUT
967                                                                      , // HIDL v3.6
968     ANDROID_SCALER_PHYSICAL_CAMERA_MULTI_RESOLUTION_STREAM_CONFIGURATIONS_INPUT
969                                                                      , // HIDL v3.6
970 } camera_metadata_enum_android_scaler_physical_camera_multi_resolution_stream_configurations_t;
971 
972 // ANDROID_SCALER_AVAILABLE_STREAM_CONFIGURATIONS_MAXIMUM_RESOLUTION
973 typedef enum camera_metadata_enum_android_scaler_available_stream_configurations_maximum_resolution {
974     ANDROID_SCALER_AVAILABLE_STREAM_CONFIGURATIONS_MAXIMUM_RESOLUTION_OUTPUT
975                                                                      , // HIDL v3.6
976     ANDROID_SCALER_AVAILABLE_STREAM_CONFIGURATIONS_MAXIMUM_RESOLUTION_INPUT
977                                                                      , // HIDL v3.6
978 } camera_metadata_enum_android_scaler_available_stream_configurations_maximum_resolution_t;
979 
980 // ANDROID_SCALER_MULTI_RESOLUTION_STREAM_SUPPORTED
981 typedef enum camera_metadata_enum_android_scaler_multi_resolution_stream_supported {
982     ANDROID_SCALER_MULTI_RESOLUTION_STREAM_SUPPORTED_FALSE          , // HIDL v3.6
983     ANDROID_SCALER_MULTI_RESOLUTION_STREAM_SUPPORTED_TRUE           , // HIDL v3.6
984 } camera_metadata_enum_android_scaler_multi_resolution_stream_supported_t;
985 
986 // ANDROID_SCALER_CROP_REGION_SET
987 typedef enum camera_metadata_enum_android_scaler_crop_region_set {
988     ANDROID_SCALER_CROP_REGION_SET_TRUE                             ,
989     ANDROID_SCALER_CROP_REGION_SET_FALSE                            ,
990 } camera_metadata_enum_android_scaler_crop_region_set_t;
991 
992 
993 // ANDROID_SENSOR_REFERENCE_ILLUMINANT1
994 typedef enum camera_metadata_enum_android_sensor_reference_illuminant1 {
995     ANDROID_SENSOR_REFERENCE_ILLUMINANT1_DAYLIGHT                    = 1, // HIDL v3.2
996     ANDROID_SENSOR_REFERENCE_ILLUMINANT1_FLUORESCENT                 = 2, // HIDL v3.2
997     ANDROID_SENSOR_REFERENCE_ILLUMINANT1_TUNGSTEN                    = 3, // HIDL v3.2
998     ANDROID_SENSOR_REFERENCE_ILLUMINANT1_FLASH                       = 4, // HIDL v3.2
999     ANDROID_SENSOR_REFERENCE_ILLUMINANT1_FINE_WEATHER                = 9, // HIDL v3.2
1000     ANDROID_SENSOR_REFERENCE_ILLUMINANT1_CLOUDY_WEATHER              = 10, // HIDL v3.2
1001     ANDROID_SENSOR_REFERENCE_ILLUMINANT1_SHADE                       = 11, // HIDL v3.2
1002     ANDROID_SENSOR_REFERENCE_ILLUMINANT1_DAYLIGHT_FLUORESCENT        = 12, // HIDL v3.2
1003     ANDROID_SENSOR_REFERENCE_ILLUMINANT1_DAY_WHITE_FLUORESCENT       = 13, // HIDL v3.2
1004     ANDROID_SENSOR_REFERENCE_ILLUMINANT1_COOL_WHITE_FLUORESCENT      = 14, // HIDL v3.2
1005     ANDROID_SENSOR_REFERENCE_ILLUMINANT1_WHITE_FLUORESCENT           = 15, // HIDL v3.2
1006     ANDROID_SENSOR_REFERENCE_ILLUMINANT1_STANDARD_A                  = 17, // HIDL v3.2
1007     ANDROID_SENSOR_REFERENCE_ILLUMINANT1_STANDARD_B                  = 18, // HIDL v3.2
1008     ANDROID_SENSOR_REFERENCE_ILLUMINANT1_STANDARD_C                  = 19, // HIDL v3.2
1009     ANDROID_SENSOR_REFERENCE_ILLUMINANT1_D55                         = 20, // HIDL v3.2
1010     ANDROID_SENSOR_REFERENCE_ILLUMINANT1_D65                         = 21, // HIDL v3.2
1011     ANDROID_SENSOR_REFERENCE_ILLUMINANT1_D75                         = 22, // HIDL v3.2
1012     ANDROID_SENSOR_REFERENCE_ILLUMINANT1_D50                         = 23, // HIDL v3.2
1013     ANDROID_SENSOR_REFERENCE_ILLUMINANT1_ISO_STUDIO_TUNGSTEN         = 24, // HIDL v3.2
1014 } camera_metadata_enum_android_sensor_reference_illuminant1_t;
1015 
1016 // ANDROID_SENSOR_TEST_PATTERN_MODE
1017 typedef enum camera_metadata_enum_android_sensor_test_pattern_mode {
1018     ANDROID_SENSOR_TEST_PATTERN_MODE_OFF                            , // HIDL v3.2
1019     ANDROID_SENSOR_TEST_PATTERN_MODE_SOLID_COLOR                    , // HIDL v3.2
1020     ANDROID_SENSOR_TEST_PATTERN_MODE_COLOR_BARS                     , // HIDL v3.2
1021     ANDROID_SENSOR_TEST_PATTERN_MODE_COLOR_BARS_FADE_TO_GRAY        , // HIDL v3.2
1022     ANDROID_SENSOR_TEST_PATTERN_MODE_PN9                            , // HIDL v3.2
1023     ANDROID_SENSOR_TEST_PATTERN_MODE_BLACK                          , // HIDL v3.6
1024     ANDROID_SENSOR_TEST_PATTERN_MODE_CUSTOM1                         = 256, // HIDL v3.2
1025 } camera_metadata_enum_android_sensor_test_pattern_mode_t;
1026 
1027 // ANDROID_SENSOR_PIXEL_MODE
1028 typedef enum camera_metadata_enum_android_sensor_pixel_mode {
1029     ANDROID_SENSOR_PIXEL_MODE_DEFAULT                               , // HIDL v3.6
1030     ANDROID_SENSOR_PIXEL_MODE_MAXIMUM_RESOLUTION                    , // HIDL v3.6
1031 } camera_metadata_enum_android_sensor_pixel_mode_t;
1032 
1033 // ANDROID_SENSOR_RAW_BINNING_FACTOR_USED
1034 typedef enum camera_metadata_enum_android_sensor_raw_binning_factor_used {
1035     ANDROID_SENSOR_RAW_BINNING_FACTOR_USED_TRUE                     , // HIDL v3.6
1036     ANDROID_SENSOR_RAW_BINNING_FACTOR_USED_FALSE                    , // HIDL v3.6
1037 } camera_metadata_enum_android_sensor_raw_binning_factor_used_t;
1038 
1039 
1040 // ANDROID_SENSOR_INFO_COLOR_FILTER_ARRANGEMENT
1041 typedef enum camera_metadata_enum_android_sensor_info_color_filter_arrangement {
1042     ANDROID_SENSOR_INFO_COLOR_FILTER_ARRANGEMENT_RGGB               , // HIDL v3.2
1043     ANDROID_SENSOR_INFO_COLOR_FILTER_ARRANGEMENT_GRBG               , // HIDL v3.2
1044     ANDROID_SENSOR_INFO_COLOR_FILTER_ARRANGEMENT_GBRG               , // HIDL v3.2
1045     ANDROID_SENSOR_INFO_COLOR_FILTER_ARRANGEMENT_BGGR               , // HIDL v3.2
1046     ANDROID_SENSOR_INFO_COLOR_FILTER_ARRANGEMENT_RGB                , // HIDL v3.2
1047     ANDROID_SENSOR_INFO_COLOR_FILTER_ARRANGEMENT_MONO               , // HIDL v3.4
1048     ANDROID_SENSOR_INFO_COLOR_FILTER_ARRANGEMENT_NIR                , // HIDL v3.4
1049 } camera_metadata_enum_android_sensor_info_color_filter_arrangement_t;
1050 
1051 // ANDROID_SENSOR_INFO_TIMESTAMP_SOURCE
1052 typedef enum camera_metadata_enum_android_sensor_info_timestamp_source {
1053     ANDROID_SENSOR_INFO_TIMESTAMP_SOURCE_UNKNOWN                    , // HIDL v3.2
1054     ANDROID_SENSOR_INFO_TIMESTAMP_SOURCE_REALTIME                   , // HIDL v3.2
1055 } camera_metadata_enum_android_sensor_info_timestamp_source_t;
1056 
1057 // ANDROID_SENSOR_INFO_LENS_SHADING_APPLIED
1058 typedef enum camera_metadata_enum_android_sensor_info_lens_shading_applied {
1059     ANDROID_SENSOR_INFO_LENS_SHADING_APPLIED_FALSE                  , // HIDL v3.2
1060     ANDROID_SENSOR_INFO_LENS_SHADING_APPLIED_TRUE                   , // HIDL v3.2
1061 } camera_metadata_enum_android_sensor_info_lens_shading_applied_t;
1062 
1063 
1064 // ANDROID_SHADING_MODE
1065 typedef enum camera_metadata_enum_android_shading_mode {
1066     ANDROID_SHADING_MODE_OFF                                        , // HIDL v3.2
1067     ANDROID_SHADING_MODE_FAST                                       , // HIDL v3.2
1068     ANDROID_SHADING_MODE_HIGH_QUALITY                               , // HIDL v3.2
1069 } camera_metadata_enum_android_shading_mode_t;
1070 
1071 
1072 // ANDROID_STATISTICS_FACE_DETECT_MODE
1073 typedef enum camera_metadata_enum_android_statistics_face_detect_mode {
1074     ANDROID_STATISTICS_FACE_DETECT_MODE_OFF                         , // HIDL v3.2
1075     ANDROID_STATISTICS_FACE_DETECT_MODE_SIMPLE                      , // HIDL v3.2
1076     ANDROID_STATISTICS_FACE_DETECT_MODE_FULL                        , // HIDL v3.2
1077 } camera_metadata_enum_android_statistics_face_detect_mode_t;
1078 
1079 // ANDROID_STATISTICS_HISTOGRAM_MODE
1080 typedef enum camera_metadata_enum_android_statistics_histogram_mode {
1081     ANDROID_STATISTICS_HISTOGRAM_MODE_OFF                           , // HIDL v3.2
1082     ANDROID_STATISTICS_HISTOGRAM_MODE_ON                            , // HIDL v3.2
1083 } camera_metadata_enum_android_statistics_histogram_mode_t;
1084 
1085 // ANDROID_STATISTICS_SHARPNESS_MAP_MODE
1086 typedef enum camera_metadata_enum_android_statistics_sharpness_map_mode {
1087     ANDROID_STATISTICS_SHARPNESS_MAP_MODE_OFF                       , // HIDL v3.2
1088     ANDROID_STATISTICS_SHARPNESS_MAP_MODE_ON                        , // HIDL v3.2
1089 } camera_metadata_enum_android_statistics_sharpness_map_mode_t;
1090 
1091 // ANDROID_STATISTICS_HOT_PIXEL_MAP_MODE
1092 typedef enum camera_metadata_enum_android_statistics_hot_pixel_map_mode {
1093     ANDROID_STATISTICS_HOT_PIXEL_MAP_MODE_OFF                       , // HIDL v3.2
1094     ANDROID_STATISTICS_HOT_PIXEL_MAP_MODE_ON                        , // HIDL v3.2
1095 } camera_metadata_enum_android_statistics_hot_pixel_map_mode_t;
1096 
1097 // ANDROID_STATISTICS_SCENE_FLICKER
1098 typedef enum camera_metadata_enum_android_statistics_scene_flicker {
1099     ANDROID_STATISTICS_SCENE_FLICKER_NONE                           , // HIDL v3.2
1100     ANDROID_STATISTICS_SCENE_FLICKER_50HZ                           , // HIDL v3.2
1101     ANDROID_STATISTICS_SCENE_FLICKER_60HZ                           , // HIDL v3.2
1102 } camera_metadata_enum_android_statistics_scene_flicker_t;
1103 
1104 // ANDROID_STATISTICS_LENS_SHADING_MAP_MODE
1105 typedef enum camera_metadata_enum_android_statistics_lens_shading_map_mode {
1106     ANDROID_STATISTICS_LENS_SHADING_MAP_MODE_OFF                    , // HIDL v3.2
1107     ANDROID_STATISTICS_LENS_SHADING_MAP_MODE_ON                     , // HIDL v3.2
1108 } camera_metadata_enum_android_statistics_lens_shading_map_mode_t;
1109 
1110 // ANDROID_STATISTICS_OIS_DATA_MODE
1111 typedef enum camera_metadata_enum_android_statistics_ois_data_mode {
1112     ANDROID_STATISTICS_OIS_DATA_MODE_OFF                            , // HIDL v3.3
1113     ANDROID_STATISTICS_OIS_DATA_MODE_ON                             , // HIDL v3.3
1114 } camera_metadata_enum_android_statistics_ois_data_mode_t;
1115 
1116 
1117 
1118 // ANDROID_TONEMAP_MODE
1119 typedef enum camera_metadata_enum_android_tonemap_mode {
1120     ANDROID_TONEMAP_MODE_CONTRAST_CURVE                             , // HIDL v3.2
1121     ANDROID_TONEMAP_MODE_FAST                                       , // HIDL v3.2
1122     ANDROID_TONEMAP_MODE_HIGH_QUALITY                               , // HIDL v3.2
1123     ANDROID_TONEMAP_MODE_GAMMA_VALUE                                , // HIDL v3.2
1124     ANDROID_TONEMAP_MODE_PRESET_CURVE                               , // HIDL v3.2
1125 } camera_metadata_enum_android_tonemap_mode_t;
1126 
1127 // ANDROID_TONEMAP_PRESET_CURVE
1128 typedef enum camera_metadata_enum_android_tonemap_preset_curve {
1129     ANDROID_TONEMAP_PRESET_CURVE_SRGB                               , // HIDL v3.2
1130     ANDROID_TONEMAP_PRESET_CURVE_REC709                             , // HIDL v3.2
1131 } camera_metadata_enum_android_tonemap_preset_curve_t;
1132 
1133 
1134 // ANDROID_LED_TRANSMIT
1135 typedef enum camera_metadata_enum_android_led_transmit {
1136     ANDROID_LED_TRANSMIT_OFF                                        , // HIDL v3.2
1137     ANDROID_LED_TRANSMIT_ON                                         , // HIDL v3.2
1138 } camera_metadata_enum_android_led_transmit_t;
1139 
1140 // ANDROID_LED_AVAILABLE_LEDS
1141 typedef enum camera_metadata_enum_android_led_available_leds {
1142     ANDROID_LED_AVAILABLE_LEDS_TRANSMIT                             , // HIDL v3.2
1143 } camera_metadata_enum_android_led_available_leds_t;
1144 
1145 
1146 // ANDROID_INFO_SUPPORTED_HARDWARE_LEVEL
1147 typedef enum camera_metadata_enum_android_info_supported_hardware_level {
1148     ANDROID_INFO_SUPPORTED_HARDWARE_LEVEL_LIMITED                   , // HIDL v3.2
1149     ANDROID_INFO_SUPPORTED_HARDWARE_LEVEL_FULL                      , // HIDL v3.2
1150     ANDROID_INFO_SUPPORTED_HARDWARE_LEVEL_LEGACY                    , // HIDL v3.2
1151     ANDROID_INFO_SUPPORTED_HARDWARE_LEVEL_3                         , // HIDL v3.2
1152     ANDROID_INFO_SUPPORTED_HARDWARE_LEVEL_EXTERNAL                  , // HIDL v3.3
1153 } camera_metadata_enum_android_info_supported_hardware_level_t;
1154 
1155 // ANDROID_INFO_SUPPORTED_BUFFER_MANAGEMENT_VERSION
1156 typedef enum camera_metadata_enum_android_info_supported_buffer_management_version {
1157     ANDROID_INFO_SUPPORTED_BUFFER_MANAGEMENT_VERSION_HIDL_DEVICE_3_5, // HIDL v3.4
1158 } camera_metadata_enum_android_info_supported_buffer_management_version_t;
1159 
1160 
1161 // ANDROID_BLACK_LEVEL_LOCK
1162 typedef enum camera_metadata_enum_android_black_level_lock {
1163     ANDROID_BLACK_LEVEL_LOCK_OFF                                    , // HIDL v3.2
1164     ANDROID_BLACK_LEVEL_LOCK_ON                                     , // HIDL v3.2
1165 } camera_metadata_enum_android_black_level_lock_t;
1166 
1167 
1168 // ANDROID_SYNC_FRAME_NUMBER
1169 typedef enum camera_metadata_enum_android_sync_frame_number {
1170     ANDROID_SYNC_FRAME_NUMBER_CONVERGING                             = -1, // HIDL v3.2
1171     ANDROID_SYNC_FRAME_NUMBER_UNKNOWN                                = -2, // HIDL v3.2
1172 } camera_metadata_enum_android_sync_frame_number_t;
1173 
1174 // ANDROID_SYNC_MAX_LATENCY
1175 typedef enum camera_metadata_enum_android_sync_max_latency {
1176     ANDROID_SYNC_MAX_LATENCY_PER_FRAME_CONTROL                       = 0, // HIDL v3.2
1177     ANDROID_SYNC_MAX_LATENCY_UNKNOWN                                 = -1, // HIDL v3.2
1178 } camera_metadata_enum_android_sync_max_latency_t;
1179 
1180 
1181 
1182 // ANDROID_DEPTH_AVAILABLE_DEPTH_STREAM_CONFIGURATIONS
1183 typedef enum camera_metadata_enum_android_depth_available_depth_stream_configurations {
1184     ANDROID_DEPTH_AVAILABLE_DEPTH_STREAM_CONFIGURATIONS_OUTPUT      , // HIDL v3.2
1185     ANDROID_DEPTH_AVAILABLE_DEPTH_STREAM_CONFIGURATIONS_INPUT       , // HIDL v3.2
1186 } camera_metadata_enum_android_depth_available_depth_stream_configurations_t;
1187 
1188 // ANDROID_DEPTH_DEPTH_IS_EXCLUSIVE
1189 typedef enum camera_metadata_enum_android_depth_depth_is_exclusive {
1190     ANDROID_DEPTH_DEPTH_IS_EXCLUSIVE_FALSE                          , // HIDL v3.2
1191     ANDROID_DEPTH_DEPTH_IS_EXCLUSIVE_TRUE                           , // HIDL v3.2
1192 } camera_metadata_enum_android_depth_depth_is_exclusive_t;
1193 
1194 // ANDROID_DEPTH_AVAILABLE_DYNAMIC_DEPTH_STREAM_CONFIGURATIONS
1195 typedef enum camera_metadata_enum_android_depth_available_dynamic_depth_stream_configurations {
1196     ANDROID_DEPTH_AVAILABLE_DYNAMIC_DEPTH_STREAM_CONFIGURATIONS_OUTPUT
1197                                                                      , // HIDL v3.4
1198     ANDROID_DEPTH_AVAILABLE_DYNAMIC_DEPTH_STREAM_CONFIGURATIONS_INPUT
1199                                                                      , // HIDL v3.4
1200 } camera_metadata_enum_android_depth_available_dynamic_depth_stream_configurations_t;
1201 
1202 // ANDROID_DEPTH_AVAILABLE_DEPTH_STREAM_CONFIGURATIONS_MAXIMUM_RESOLUTION
1203 typedef enum camera_metadata_enum_android_depth_available_depth_stream_configurations_maximum_resolution {
1204     ANDROID_DEPTH_AVAILABLE_DEPTH_STREAM_CONFIGURATIONS_MAXIMUM_RESOLUTION_OUTPUT
1205                                                                      , // HIDL v3.6
1206     ANDROID_DEPTH_AVAILABLE_DEPTH_STREAM_CONFIGURATIONS_MAXIMUM_RESOLUTION_INPUT
1207                                                                      , // HIDL v3.6
1208 } camera_metadata_enum_android_depth_available_depth_stream_configurations_maximum_resolution_t;
1209 
1210 // ANDROID_DEPTH_AVAILABLE_DYNAMIC_DEPTH_STREAM_CONFIGURATIONS_MAXIMUM_RESOLUTION
1211 typedef enum camera_metadata_enum_android_depth_available_dynamic_depth_stream_configurations_maximum_resolution {
1212     ANDROID_DEPTH_AVAILABLE_DYNAMIC_DEPTH_STREAM_CONFIGURATIONS_MAXIMUM_RESOLUTION_OUTPUT
1213                                                                      , // HIDL v3.6
1214     ANDROID_DEPTH_AVAILABLE_DYNAMIC_DEPTH_STREAM_CONFIGURATIONS_MAXIMUM_RESOLUTION_INPUT
1215                                                                      , // HIDL v3.6
1216 } camera_metadata_enum_android_depth_available_dynamic_depth_stream_configurations_maximum_resolution_t;
1217 
1218 
1219 // ANDROID_LOGICAL_MULTI_CAMERA_SENSOR_SYNC_TYPE
1220 typedef enum camera_metadata_enum_android_logical_multi_camera_sensor_sync_type {
1221     ANDROID_LOGICAL_MULTI_CAMERA_SENSOR_SYNC_TYPE_APPROXIMATE       , // HIDL v3.3
1222     ANDROID_LOGICAL_MULTI_CAMERA_SENSOR_SYNC_TYPE_CALIBRATED        , // HIDL v3.3
1223 } camera_metadata_enum_android_logical_multi_camera_sensor_sync_type_t;
1224 
1225 
1226 // ANDROID_DISTORTION_CORRECTION_MODE
1227 typedef enum camera_metadata_enum_android_distortion_correction_mode {
1228     ANDROID_DISTORTION_CORRECTION_MODE_OFF                          , // HIDL v3.3
1229     ANDROID_DISTORTION_CORRECTION_MODE_FAST                         , // HIDL v3.3
1230     ANDROID_DISTORTION_CORRECTION_MODE_HIGH_QUALITY                 , // HIDL v3.3
1231 } camera_metadata_enum_android_distortion_correction_mode_t;
1232 
1233 
1234 // ANDROID_HEIC_AVAILABLE_HEIC_STREAM_CONFIGURATIONS
1235 typedef enum camera_metadata_enum_android_heic_available_heic_stream_configurations {
1236     ANDROID_HEIC_AVAILABLE_HEIC_STREAM_CONFIGURATIONS_OUTPUT        , // HIDL v3.4
1237     ANDROID_HEIC_AVAILABLE_HEIC_STREAM_CONFIGURATIONS_INPUT         , // HIDL v3.4
1238 } camera_metadata_enum_android_heic_available_heic_stream_configurations_t;
1239 
1240 // ANDROID_HEIC_AVAILABLE_HEIC_STREAM_CONFIGURATIONS_MAXIMUM_RESOLUTION
1241 typedef enum camera_metadata_enum_android_heic_available_heic_stream_configurations_maximum_resolution {
1242     ANDROID_HEIC_AVAILABLE_HEIC_STREAM_CONFIGURATIONS_MAXIMUM_RESOLUTION_OUTPUT
1243                                                                      , // HIDL v3.6
1244     ANDROID_HEIC_AVAILABLE_HEIC_STREAM_CONFIGURATIONS_MAXIMUM_RESOLUTION_INPUT
1245                                                                      , // HIDL v3.6
1246 } camera_metadata_enum_android_heic_available_heic_stream_configurations_maximum_resolution_t;
1247 
1248 
1249 // ANDROID_HEIC_INFO_SUPPORTED
1250 typedef enum camera_metadata_enum_android_heic_info_supported {
1251     ANDROID_HEIC_INFO_SUPPORTED_FALSE                               , // HIDL v3.4
1252     ANDROID_HEIC_INFO_SUPPORTED_TRUE                                , // HIDL v3.4
1253 } camera_metadata_enum_android_heic_info_supported_t;
1254 
1255 
1256