blob: e7e8dd343f6f2f9da11e3d8b5f295068242f7b6a [file] [log] [blame]
Shuzhen Wangd3feb3d2018-08-17 13:52:40 -07001/*
2 * Copyright (C) 2018 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
17package android.hardware.camera.device@3.5;
18
19import android.hardware.camera.common@1.0::Status;
20import @3.2::CameraMetadata;
21import @3.2::ICameraDevice;
22
23/**
24 * Camera device interface
25 *
26 * Supports the android.hardware.Camera API, and the android.hardware.camera2
27 * API at LIMITED or better hardware level.
28 *
29 */
30interface ICameraDevice extends @3.2::ICameraDevice {
31
32 /**
33 * getPhysicalCameraCharacteristics:
34 *
35 * Return the static camera information for a physical camera ID backing
36 * this logical camera device. This information may not change between consecutive calls.
37 *
38 * Note that HAL must support this function for physical camera IDs that are
39 * not exposed via ICameraProvider::getCameraIdList().
40 *
41 * @return status Status code for the operation, one of:
42 * OK:
43 * On a successful query of the camera device characteristics
44 * INTERNAL_ERROR:
45 * The camera device cannot be opened due to an internal
46 * error.
47 * CAMERA_DISCONNECTED:
48 * An external camera device has been disconnected, and is no longer
49 * available. This camera device interface is now stale, and a new
50 * instance must be acquired if the device is reconnected. All
51 * subsequent calls on this interface must return
52 * CAMERA_DISCONNECTED.
53 *
54 * @return cameraCharacteristics
55 * The static metadata for this logical camera device's physical device, or an empty
56 * metadata structure if status is not OK.
57 *
58 */
59 getPhysicalCameraCharacteristics(string physicalCameraId)
60 generates (Status status, CameraMetadata cameraCharacteristics);
61
62};