1d56db1d2bee182d1851097a9c712712fc094d117Eino-Ville Talvala/*
2d56db1d2bee182d1851097a9c712712fc094d117Eino-Ville Talvala * Copyright (C) 2015 The Android Open Source Project
3d56db1d2bee182d1851097a9c712712fc094d117Eino-Ville Talvala *
4d56db1d2bee182d1851097a9c712712fc094d117Eino-Ville Talvala * Licensed under the Apache License, Version 2.0 (the "License");
5d56db1d2bee182d1851097a9c712712fc094d117Eino-Ville Talvala * you may not use this file except in compliance with the License.
6d56db1d2bee182d1851097a9c712712fc094d117Eino-Ville Talvala * You may obtain a copy of the License at
7d56db1d2bee182d1851097a9c712712fc094d117Eino-Ville Talvala *
8d56db1d2bee182d1851097a9c712712fc094d117Eino-Ville Talvala *      http://www.apache.org/licenses/LICENSE-2.0
9d56db1d2bee182d1851097a9c712712fc094d117Eino-Ville Talvala *
10d56db1d2bee182d1851097a9c712712fc094d117Eino-Ville Talvala * Unless required by applicable law or agreed to in writing, software
11d56db1d2bee182d1851097a9c712712fc094d117Eino-Ville Talvala * distributed under the License is distributed on an "AS IS" BASIS,
12d56db1d2bee182d1851097a9c712712fc094d117Eino-Ville Talvala * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13d56db1d2bee182d1851097a9c712712fc094d117Eino-Ville Talvala * See the License for the specific language governing permissions and
14d56db1d2bee182d1851097a9c712712fc094d117Eino-Ville Talvala * limitations under the License.
15d56db1d2bee182d1851097a9c712712fc094d117Eino-Ville Talvala */
16d56db1d2bee182d1851097a9c712712fc094d117Eino-Ville Talvala
17d56db1d2bee182d1851097a9c712712fc094d117Eino-Ville Talvalapackage android.hardware;
18d56db1d2bee182d1851097a9c712712fc094d117Eino-Ville Talvala
19d56db1d2bee182d1851097a9c712712fc094d117Eino-Ville Talvala/**
20d56db1d2bee182d1851097a9c712712fc094d117Eino-Ville Talvala * Binder interface for the camera service proxy running in system_server.
21d56db1d2bee182d1851097a9c712712fc094d117Eino-Ville Talvala *
22d56db1d2bee182d1851097a9c712712fc094d117Eino-Ville Talvala * Keep in sync with frameworks/av/include/camera/ICameraServiceProxy.h
23d56db1d2bee182d1851097a9c712712fc094d117Eino-Ville Talvala *
24d56db1d2bee182d1851097a9c712712fc094d117Eino-Ville Talvala * @hide
25d56db1d2bee182d1851097a9c712712fc094d117Eino-Ville Talvala */
26d56db1d2bee182d1851097a9c712712fc094d117Eino-Ville Talvalainterface ICameraServiceProxy
27d56db1d2bee182d1851097a9c712712fc094d117Eino-Ville Talvala{
28d56db1d2bee182d1851097a9c712712fc094d117Eino-Ville Talvala    /**
29d56db1d2bee182d1851097a9c712712fc094d117Eino-Ville Talvala     * Ping the service proxy to update the valid users for the camera service.
30d56db1d2bee182d1851097a9c712712fc094d117Eino-Ville Talvala     */
31d56db1d2bee182d1851097a9c712712fc094d117Eino-Ville Talvala    oneway void pingForUserUpdate();
32d56db1d2bee182d1851097a9c712712fc094d117Eino-Ville Talvala
33d56db1d2bee182d1851097a9c712712fc094d117Eino-Ville Talvala    /**
34e8c96c765b95ec7dcd10732621a825fce05960c6Eino-Ville Talvala     * Values for notifyCameraState newCameraState
35d56db1d2bee182d1851097a9c712712fc094d117Eino-Ville Talvala     */
36e8c96c765b95ec7dcd10732621a825fce05960c6Eino-Ville Talvala    const int CAMERA_STATE_OPEN = 0;
37e8c96c765b95ec7dcd10732621a825fce05960c6Eino-Ville Talvala    const int CAMERA_STATE_ACTIVE = 1;
38e8c96c765b95ec7dcd10732621a825fce05960c6Eino-Ville Talvala    const int CAMERA_STATE_IDLE = 2;
39e8c96c765b95ec7dcd10732621a825fce05960c6Eino-Ville Talvala    const int CAMERA_STATE_CLOSED = 3;
40e8c96c765b95ec7dcd10732621a825fce05960c6Eino-Ville Talvala
41e8c96c765b95ec7dcd10732621a825fce05960c6Eino-Ville Talvala    /**
42e8c96c765b95ec7dcd10732621a825fce05960c6Eino-Ville Talvala     * Values for notifyCameraState facing
43e8c96c765b95ec7dcd10732621a825fce05960c6Eino-Ville Talvala     */
44e8c96c765b95ec7dcd10732621a825fce05960c6Eino-Ville Talvala    const int CAMERA_FACING_BACK = 0;
45e8c96c765b95ec7dcd10732621a825fce05960c6Eino-Ville Talvala    const int CAMERA_FACING_FRONT = 1;
46e8c96c765b95ec7dcd10732621a825fce05960c6Eino-Ville Talvala    const int CAMERA_FACING_EXTERNAL = 2;
47e8c96c765b95ec7dcd10732621a825fce05960c6Eino-Ville Talvala
48e8c96c765b95ec7dcd10732621a825fce05960c6Eino-Ville Talvala    /**
49573291c251d9e85f51f7c0fa1cb35baa2969ca17Emilian Peev     * Values for notifyCameraState api level
50573291c251d9e85f51f7c0fa1cb35baa2969ca17Emilian Peev     */
51573291c251d9e85f51f7c0fa1cb35baa2969ca17Emilian Peev     const int CAMERA_API_LEVEL_1 = 1;
52573291c251d9e85f51f7c0fa1cb35baa2969ca17Emilian Peev     const int CAMERA_API_LEVEL_2 = 2;
53573291c251d9e85f51f7c0fa1cb35baa2969ca17Emilian Peev
54573291c251d9e85f51f7c0fa1cb35baa2969ca17Emilian Peev    /**
55e8c96c765b95ec7dcd10732621a825fce05960c6Eino-Ville Talvala     * Update the status of a camera device.
56e8c96c765b95ec7dcd10732621a825fce05960c6Eino-Ville Talvala     */
57e8c96c765b95ec7dcd10732621a825fce05960c6Eino-Ville Talvala    oneway void notifyCameraState(String cameraId, int facing, int newCameraState,
58573291c251d9e85f51f7c0fa1cb35baa2969ca17Emilian Peev            String clientName, int apiLevel);
59d56db1d2bee182d1851097a9c712712fc094d117Eino-Ville Talvala}
60