Loading services/camera/libcameraservice/Android.bp +1 −1 Original line number Diff line number Diff line Loading @@ -92,9 +92,9 @@ cc_library_shared { "gui/RingBufferConsumer.cpp", "hidl/AidlCameraDeviceCallbacks.cpp", "hidl/AidlCameraServiceListener.cpp", "hidl/Convert.cpp", "hidl/HidlCameraDeviceUser.cpp", "hidl/HidlCameraService.cpp", "hidl/Utils.cpp", "utils/CameraServiceProxyWrapper.cpp", "utils/CameraThreadState.cpp", "utils/CameraTraces.cpp", Loading services/camera/libcameraservice/hidl/AidlCameraDeviceCallbacks.cpp +9 −3 Original line number Diff line number Diff line Loading @@ -16,7 +16,7 @@ #include <hardware/camera.h> #include <hidl/AidlCameraDeviceCallbacks.h> #include <hidl/Convert.h> #include <hidl/Utils.h> namespace android { namespace frameworks { Loading @@ -34,7 +34,7 @@ const char *H2BCameraDeviceCallbacks::kResultKey = "CaptureResult"; H2BCameraDeviceCallbacks::H2BCameraDeviceCallbacks(const sp<HalInterface>& base) : CBase(base) { } bool H2BCameraDeviceCallbacks::initializeLooper() { bool H2BCameraDeviceCallbacks::initializeLooper(int vndkVersion) { mCbLooper = new ALooper; mCbLooper->setName("cs-looper"); status_t err = mCbLooper->start(/*runOnCallingThread*/ false, /*canCallJava*/ false, Loading @@ -43,7 +43,7 @@ bool H2BCameraDeviceCallbacks::initializeLooper() { ALOGE("Unable to start camera device callback looper"); return false; } mHandler = new CallbackHandler(this); mHandler = new CallbackHandler(this, vndkVersion); mCbLooper->registerHandler(mHandler); return true; } Loading Loading @@ -144,6 +144,12 @@ void H2BCameraDeviceCallbacks::CallbackHandler::processResultMessage( // Convert Metadata into HCameraMetadata; FmqSizeOrMetadata hResult; using hardware::cameraservice::utils::conversion::filterVndkKeys; if (filterVndkKeys(mVndkVersion, result, /*isStatic*/false) != OK) { ALOGE("%s: filtering vndk keys from result failed, not sending onResultReceived callback", __FUNCTION__); return; } const camera_metadata_t *rawMetadata = result.getAndLock(); converter->convertResultMetadataToHidl(rawMetadata, &hResult); result.unlock(rawMetadata); Loading services/camera/libcameraservice/hidl/AidlCameraDeviceCallbacks.h +4 −2 Original line number Diff line number Diff line Loading @@ -61,7 +61,7 @@ struct H2BCameraDeviceCallbacks : ~H2BCameraDeviceCallbacks(); bool initializeLooper(); bool initializeLooper(int vndkVersion); virtual binder::Status onDeviceError(int32_t errorCode, const CaptureResultExtras& resultExtras) override; Loading Loading @@ -103,10 +103,12 @@ struct H2BCameraDeviceCallbacks : struct CallbackHandler : public AHandler { public: void onMessageReceived(const sp<AMessage> &msg) override; CallbackHandler(H2BCameraDeviceCallbacks *converter) : mConverter(converter) { } CallbackHandler(H2BCameraDeviceCallbacks *converter, int vndkVersion) : mConverter(converter), mVndkVersion(vndkVersion) { } private: void processResultMessage(sp<ResultWrapper> &resultWrapper); wp<H2BCameraDeviceCallbacks> mConverter = nullptr; int mVndkVersion = -1; Mutex mMetadataQueueLock; }; Loading services/camera/libcameraservice/hidl/AidlCameraServiceListener.cpp +1 −1 Original line number Diff line number Diff line Loading @@ -15,7 +15,7 @@ */ #include <hidl/AidlCameraServiceListener.h> #include <hidl/Convert.h> #include <hidl/Utils.h> namespace android { namespace frameworks { Loading services/camera/libcameraservice/hidl/HidlCameraDeviceUser.cpp +1 −1 Original line number Diff line number Diff line Loading @@ -20,8 +20,8 @@ #include <gui/bufferqueue/1.0/H2BGraphicBufferProducer.h> #include <hidl/AidlCameraDeviceCallbacks.h> #include <hidl/Convert.h> #include <hidl/HidlCameraDeviceUser.h> #include <hidl/Utils.h> #include <android/hardware/camera/device/3.2/types.h> namespace android { Loading Loading
services/camera/libcameraservice/Android.bp +1 −1 Original line number Diff line number Diff line Loading @@ -92,9 +92,9 @@ cc_library_shared { "gui/RingBufferConsumer.cpp", "hidl/AidlCameraDeviceCallbacks.cpp", "hidl/AidlCameraServiceListener.cpp", "hidl/Convert.cpp", "hidl/HidlCameraDeviceUser.cpp", "hidl/HidlCameraService.cpp", "hidl/Utils.cpp", "utils/CameraServiceProxyWrapper.cpp", "utils/CameraThreadState.cpp", "utils/CameraTraces.cpp", Loading
services/camera/libcameraservice/hidl/AidlCameraDeviceCallbacks.cpp +9 −3 Original line number Diff line number Diff line Loading @@ -16,7 +16,7 @@ #include <hardware/camera.h> #include <hidl/AidlCameraDeviceCallbacks.h> #include <hidl/Convert.h> #include <hidl/Utils.h> namespace android { namespace frameworks { Loading @@ -34,7 +34,7 @@ const char *H2BCameraDeviceCallbacks::kResultKey = "CaptureResult"; H2BCameraDeviceCallbacks::H2BCameraDeviceCallbacks(const sp<HalInterface>& base) : CBase(base) { } bool H2BCameraDeviceCallbacks::initializeLooper() { bool H2BCameraDeviceCallbacks::initializeLooper(int vndkVersion) { mCbLooper = new ALooper; mCbLooper->setName("cs-looper"); status_t err = mCbLooper->start(/*runOnCallingThread*/ false, /*canCallJava*/ false, Loading @@ -43,7 +43,7 @@ bool H2BCameraDeviceCallbacks::initializeLooper() { ALOGE("Unable to start camera device callback looper"); return false; } mHandler = new CallbackHandler(this); mHandler = new CallbackHandler(this, vndkVersion); mCbLooper->registerHandler(mHandler); return true; } Loading Loading @@ -144,6 +144,12 @@ void H2BCameraDeviceCallbacks::CallbackHandler::processResultMessage( // Convert Metadata into HCameraMetadata; FmqSizeOrMetadata hResult; using hardware::cameraservice::utils::conversion::filterVndkKeys; if (filterVndkKeys(mVndkVersion, result, /*isStatic*/false) != OK) { ALOGE("%s: filtering vndk keys from result failed, not sending onResultReceived callback", __FUNCTION__); return; } const camera_metadata_t *rawMetadata = result.getAndLock(); converter->convertResultMetadataToHidl(rawMetadata, &hResult); result.unlock(rawMetadata); Loading
services/camera/libcameraservice/hidl/AidlCameraDeviceCallbacks.h +4 −2 Original line number Diff line number Diff line Loading @@ -61,7 +61,7 @@ struct H2BCameraDeviceCallbacks : ~H2BCameraDeviceCallbacks(); bool initializeLooper(); bool initializeLooper(int vndkVersion); virtual binder::Status onDeviceError(int32_t errorCode, const CaptureResultExtras& resultExtras) override; Loading Loading @@ -103,10 +103,12 @@ struct H2BCameraDeviceCallbacks : struct CallbackHandler : public AHandler { public: void onMessageReceived(const sp<AMessage> &msg) override; CallbackHandler(H2BCameraDeviceCallbacks *converter) : mConverter(converter) { } CallbackHandler(H2BCameraDeviceCallbacks *converter, int vndkVersion) : mConverter(converter), mVndkVersion(vndkVersion) { } private: void processResultMessage(sp<ResultWrapper> &resultWrapper); wp<H2BCameraDeviceCallbacks> mConverter = nullptr; int mVndkVersion = -1; Mutex mMetadataQueueLock; }; Loading
services/camera/libcameraservice/hidl/AidlCameraServiceListener.cpp +1 −1 Original line number Diff line number Diff line Loading @@ -15,7 +15,7 @@ */ #include <hidl/AidlCameraServiceListener.h> #include <hidl/Convert.h> #include <hidl/Utils.h> namespace android { namespace frameworks { Loading
services/camera/libcameraservice/hidl/HidlCameraDeviceUser.cpp +1 −1 Original line number Diff line number Diff line Loading @@ -20,8 +20,8 @@ #include <gui/bufferqueue/1.0/H2BGraphicBufferProducer.h> #include <hidl/AidlCameraDeviceCallbacks.h> #include <hidl/Convert.h> #include <hidl/HidlCameraDeviceUser.h> #include <hidl/Utils.h> #include <android/hardware/camera/device/3.2/types.h> namespace android { Loading