Loading camera/Android.bp +8 −3 Original line number Diff line number Diff line Loading @@ -21,7 +21,6 @@ cc_library_shared { export_aidl_headers: true, local_include_dirs: ["aidl"], include_dirs: [ "frameworks/base/core/java", "frameworks/native/aidl/gui", ], }, Loading @@ -32,9 +31,11 @@ cc_library_shared { // include libcamera_client, at the path "aidl/package/path/BnFoo.h" "aidl/android/hardware/ICameraService.aidl", "aidl/android/hardware/ICameraServiceListener.aidl", "aidl/android/hardware/ICameraServiceProxy.aidl", "aidl/android/hardware/camera2/ICameraDeviceCallbacks.aidl", "aidl/android/hardware/camera2/ICameraDeviceUser.aidl", // Source for camera interface parcelables, and manually-written interfaces "Camera.cpp", "CameraMetadata.cpp", Loading @@ -43,7 +44,6 @@ cc_library_shared { "CameraParameters2.cpp", "ICamera.cpp", "ICameraClient.cpp", "ICameraServiceProxy.cpp", "ICameraRecordingProxy.cpp", "ICameraRecordingProxyListener.cpp", "camera2/CaptureRequest.cpp", Loading @@ -61,13 +61,17 @@ cc_library_shared { "libbinder", "libgui", "libcamera_metadata", "libnativewindow", ], include_dirs: [ "system/media/private/camera/include", "frameworks/native/include/media/openmax", ], export_include_dirs: ["include/camera"], export_include_dirs: [ "include", "include/camera" ], export_shared_lib_headers: ["libcamera_metadata"], cflags: [ Loading @@ -75,4 +79,5 @@ cc_library_shared { "-Wall", "-Wextra", ], } camera/ICameraServiceProxy.cppdeleted 100644 → 0 +0 −73 Original line number Diff line number Diff line /* * Copyright (C) 2015 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ #define LOG_TAG "BpCameraServiceProxy" #include <stdint.h> #include <binder/Parcel.h> #include <camera/ICameraServiceProxy.h> namespace android { class BpCameraServiceProxy: public BpInterface<ICameraServiceProxy> { public: explicit BpCameraServiceProxy(const sp<IBinder>& impl) : BpInterface<ICameraServiceProxy>(impl) {} virtual void pingForUserUpdate() { Parcel data; data.writeInterfaceToken(ICameraServiceProxy::getInterfaceDescriptor()); remote()->transact(BnCameraServiceProxy::PING_FOR_USER_UPDATE, data, nullptr, IBinder::FLAG_ONEWAY); } virtual void notifyCameraState(String16 cameraId, CameraState newCameraState) { Parcel data; data.writeInterfaceToken(ICameraServiceProxy::getInterfaceDescriptor()); data.writeString16(cameraId); data.writeInt32(newCameraState); remote()->transact(BnCameraServiceProxy::NOTIFY_CAMERA_STATE, data, nullptr, IBinder::FLAG_ONEWAY); } }; IMPLEMENT_META_INTERFACE(CameraServiceProxy, "android.hardware.ICameraServiceProxy"); status_t BnCameraServiceProxy::onTransact(uint32_t code, const Parcel& data, Parcel* reply, uint32_t flags) { switch(code) { case PING_FOR_USER_UPDATE: { CHECK_INTERFACE(ICameraServiceProxy, data, reply); pingForUserUpdate(); return NO_ERROR; } break; case NOTIFY_CAMERA_STATE: { CHECK_INTERFACE(ICameraServiceProxy, data, reply); String16 cameraId = data.readString16(); CameraState newCameraState = static_cast<CameraState>(data.readInt32()); notifyCameraState(cameraId, newCameraState); return NO_ERROR; } break; default: return BBinder::onTransact(code, data, reply, flags); } } }; // namespace android camera/aidl/android/hardware/ICameraServiceProxy.aidl +18 −2 Original line number Diff line number Diff line Loading @@ -31,7 +31,23 @@ interface ICameraServiceProxy oneway void pingForUserUpdate(); /** * Update the status of a camera device * Values for notifyCameraState newCameraState */ oneway void notifyCameraState(String cameraId, int newCameraState); const int CAMERA_STATE_OPEN = 0; const int CAMERA_STATE_ACTIVE = 1; const int CAMERA_STATE_IDLE = 2; const int CAMERA_STATE_CLOSED = 3; /** * Values for notifyCameraState facing */ const int CAMERA_FACING_BACK = 0; const int CAMERA_FACING_FRONT = 1; const int CAMERA_FACING_EXTERNAL = 2; /** * Update the status of a camera device. */ oneway void notifyCameraState(String cameraId, int facing, int newCameraState, String clientName); } Loading
camera/Android.bp +8 −3 Original line number Diff line number Diff line Loading @@ -21,7 +21,6 @@ cc_library_shared { export_aidl_headers: true, local_include_dirs: ["aidl"], include_dirs: [ "frameworks/base/core/java", "frameworks/native/aidl/gui", ], }, Loading @@ -32,9 +31,11 @@ cc_library_shared { // include libcamera_client, at the path "aidl/package/path/BnFoo.h" "aidl/android/hardware/ICameraService.aidl", "aidl/android/hardware/ICameraServiceListener.aidl", "aidl/android/hardware/ICameraServiceProxy.aidl", "aidl/android/hardware/camera2/ICameraDeviceCallbacks.aidl", "aidl/android/hardware/camera2/ICameraDeviceUser.aidl", // Source for camera interface parcelables, and manually-written interfaces "Camera.cpp", "CameraMetadata.cpp", Loading @@ -43,7 +44,6 @@ cc_library_shared { "CameraParameters2.cpp", "ICamera.cpp", "ICameraClient.cpp", "ICameraServiceProxy.cpp", "ICameraRecordingProxy.cpp", "ICameraRecordingProxyListener.cpp", "camera2/CaptureRequest.cpp", Loading @@ -61,13 +61,17 @@ cc_library_shared { "libbinder", "libgui", "libcamera_metadata", "libnativewindow", ], include_dirs: [ "system/media/private/camera/include", "frameworks/native/include/media/openmax", ], export_include_dirs: ["include/camera"], export_include_dirs: [ "include", "include/camera" ], export_shared_lib_headers: ["libcamera_metadata"], cflags: [ Loading @@ -75,4 +79,5 @@ cc_library_shared { "-Wall", "-Wextra", ], }
camera/ICameraServiceProxy.cppdeleted 100644 → 0 +0 −73 Original line number Diff line number Diff line /* * Copyright (C) 2015 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ #define LOG_TAG "BpCameraServiceProxy" #include <stdint.h> #include <binder/Parcel.h> #include <camera/ICameraServiceProxy.h> namespace android { class BpCameraServiceProxy: public BpInterface<ICameraServiceProxy> { public: explicit BpCameraServiceProxy(const sp<IBinder>& impl) : BpInterface<ICameraServiceProxy>(impl) {} virtual void pingForUserUpdate() { Parcel data; data.writeInterfaceToken(ICameraServiceProxy::getInterfaceDescriptor()); remote()->transact(BnCameraServiceProxy::PING_FOR_USER_UPDATE, data, nullptr, IBinder::FLAG_ONEWAY); } virtual void notifyCameraState(String16 cameraId, CameraState newCameraState) { Parcel data; data.writeInterfaceToken(ICameraServiceProxy::getInterfaceDescriptor()); data.writeString16(cameraId); data.writeInt32(newCameraState); remote()->transact(BnCameraServiceProxy::NOTIFY_CAMERA_STATE, data, nullptr, IBinder::FLAG_ONEWAY); } }; IMPLEMENT_META_INTERFACE(CameraServiceProxy, "android.hardware.ICameraServiceProxy"); status_t BnCameraServiceProxy::onTransact(uint32_t code, const Parcel& data, Parcel* reply, uint32_t flags) { switch(code) { case PING_FOR_USER_UPDATE: { CHECK_INTERFACE(ICameraServiceProxy, data, reply); pingForUserUpdate(); return NO_ERROR; } break; case NOTIFY_CAMERA_STATE: { CHECK_INTERFACE(ICameraServiceProxy, data, reply); String16 cameraId = data.readString16(); CameraState newCameraState = static_cast<CameraState>(data.readInt32()); notifyCameraState(cameraId, newCameraState); return NO_ERROR; } break; default: return BBinder::onTransact(code, data, reply, flags); } } }; // namespace android
camera/aidl/android/hardware/ICameraServiceProxy.aidl +18 −2 Original line number Diff line number Diff line Loading @@ -31,7 +31,23 @@ interface ICameraServiceProxy oneway void pingForUserUpdate(); /** * Update the status of a camera device * Values for notifyCameraState newCameraState */ oneway void notifyCameraState(String cameraId, int newCameraState); const int CAMERA_STATE_OPEN = 0; const int CAMERA_STATE_ACTIVE = 1; const int CAMERA_STATE_IDLE = 2; const int CAMERA_STATE_CLOSED = 3; /** * Values for notifyCameraState facing */ const int CAMERA_FACING_BACK = 0; const int CAMERA_FACING_FRONT = 1; const int CAMERA_FACING_EXTERNAL = 2; /** * Update the status of a camera device. */ oneway void notifyCameraState(String cameraId, int facing, int newCameraState, String clientName); }