Show a patch.

GET /api/patches/16805/?format=api
HTTP 200 OK
Allow: GET, PUT, PATCH, HEAD, OPTIONS
Content-Type: application/json
Vary: Accept

{
    "id": 16805,
    "url": "https://patchwork.libcamera.org/api/patches/16805/?format=api",
    "web_url": "https://patchwork.libcamera.org/patch/16805/",
    "project": {
        "id": 1,
        "url": "https://patchwork.libcamera.org/api/projects/1/?format=api",
        "name": "libcamera",
        "link_name": "libcamera",
        "list_id": "libcamera_core",
        "list_email": "libcamera-devel@lists.libcamera.org",
        "web_url": "",
        "scm_url": "",
        "webscm_url": ""
    },
    "msgid": "<20220726182500.425182-5-hanlinchen@chromium.org>",
    "date": "2022-07-26T18:24:58",
    "name": "[libcamera-devel,4/6] android: Move StreamBuffer out of Camera3RequestDescriptor",
    "commit_ref": null,
    "pull_url": null,
    "state": "superseded",
    "archived": false,
    "hash": "ca5b1ca62f62ba00227ac56910fc635bfe530a0c",
    "submitter": {
        "id": 98,
        "url": "https://patchwork.libcamera.org/api/people/98/?format=api",
        "name": "Hanlin Chen",
        "email": "hanlinchen@chromium.org"
    },
    "delegate": null,
    "mbox": "https://patchwork.libcamera.org/patch/16805/mbox/",
    "series": [
        {
            "id": 3329,
            "url": "https://patchwork.libcamera.org/api/series/3329/?format=api",
            "web_url": "https://patchwork.libcamera.org/project/libcamera/list/?series=3329",
            "date": "2022-07-26T18:24:54",
            "name": "Implement Android Partial Result Featrue",
            "version": 1,
            "mbox": "https://patchwork.libcamera.org/series/3329/mbox/"
        }
    ],
    "comments": "https://patchwork.libcamera.org/api/patches/16805/comments/",
    "check": "pending",
    "checks": "https://patchwork.libcamera.org/api/patches/16805/checks/",
    "tags": {},
    "headers": {
        "Return-Path": "<libcamera-devel-bounces@lists.libcamera.org>",
        "X-Original-To": "parsemail@patchwork.libcamera.org",
        "Delivered-To": "parsemail@patchwork.libcamera.org",
        "Received": [
            "from lancelot.ideasonboard.com (lancelot.ideasonboard.com\n\t[92.243.16.209])\n\tby patchwork.libcamera.org (Postfix) with ESMTPS id A6EAEBE173\n\tfor <parsemail@patchwork.libcamera.org>;\n\tTue, 26 Jul 2022 18:25:37 +0000 (UTC)",
            "from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 62C9C63322;\n\tTue, 26 Jul 2022 20:25:37 +0200 (CEST)",
            "from mail-pg1-x52a.google.com (mail-pg1-x52a.google.com\n\t[IPv6:2607:f8b0:4864:20::52a])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 20E816331C\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tTue, 26 Jul 2022 20:25:35 +0200 (CEST)",
            "by mail-pg1-x52a.google.com with SMTP id q22so8676132pgt.9\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tTue, 26 Jul 2022 11:25:35 -0700 (PDT)",
            "from localhost ([2401:fa00:1:17:739:6574:4032:5911])\n\tby smtp.gmail.com with UTF8SMTPSA id\n\ti1-20020aa796e1000000b0052ab54a4711sm12070780pfq.150.2022.07.26.11.25.32\n\t(version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);\n\tTue, 26 Jul 2022 11:25:33 -0700 (PDT)"
        ],
        "DKIM-Signature": [
            "v=1; a=rsa-sha256; c=relaxed/simple; d=libcamera.org;\n\ts=mail; t=1658859937;\n\tbh=rrglAyE1sjLg/L4sc56fJROPJ44W0/I+XurOJgMiSRw=;\n\th=To:Date:In-Reply-To:References:Subject:List-Id:List-Unsubscribe:\n\tList-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To:\n\tFrom;\n\tb=nIOBU8P6MpRuyBJP5dF9z7vL2E/G8kqJkjqdS/noi2LCHfev2Hjpmbyj4hEDHdGNI\n\t3EFx2GFta4EWrVWvgtjYQpDWtM1s1HHo9U/b0BcSuEmvE7qtq8Qh+JG7JjkG6lEIVO\n\tJHyRmK7LirRFRJiKAHCWrzzpGsyhal0pKG6GYYF93cP81a8Fh3Jd0HUhxV60ofPyXN\n\txq1pdjVRl2WF1g/1oQ78jbWehvQT+9urufn0aDA9UwGCeSVgyR57c7gjYgSnteZeev\n\tkfNgtwANA8iBc1PfgjPAIo01tVWO2DLOGhhbh8XoXF64pNcavYfUPL/IecFFaC/XEo\n\t8L/zCTjYu0jnQ==",
            "v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org;\n\ts=google; \n\th=from:to:cc:subject:date:message-id:in-reply-to:references\n\t:mime-version:content-transfer-encoding;\n\tbh=YZiw0+qqzwMhiekqpV6jtd2f/vQRyq8xRXlSCRdyVpg=;\n\tb=DEsQ+YE/Z4XYhBp++eJaQo3ZiHDJBJxXDYAMQfA+B52nHfXPppVbFjnvbKK1CY1Fke\n\tgFmLg3T2Bd6UTnIJ3XkpMaXz1fdGEz+ieIHX7qHZ4UKtdAPlu2c4Bt5Xsyq20rTTF8uk\n\tyfJG2zI8GkkJ+UkpKb0GJEHrc2yHiXWG6YJlc="
        ],
        "Authentication-Results": "lancelot.ideasonboard.com; dkim=pass (1024-bit key; \n\tunprotected) header.d=chromium.org\n\theader.i=@chromium.org header.b=\"DEsQ+YE/\"; \n\tdkim-atps=neutral",
        "X-Google-DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=1e100.net; s=20210112;\n\th=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to\n\t:references:mime-version:content-transfer-encoding;\n\tbh=YZiw0+qqzwMhiekqpV6jtd2f/vQRyq8xRXlSCRdyVpg=;\n\tb=HDqsgDm6BKdy1rLtXNQ9YGgJ1PhcZ3hT+5Q38ro5GWy2Q1rDp2o6P4+voiSoRs/vJE\n\tRPeOgWUsgF6NhGOleOPtmSWEG/8SjDvtfgKpFdpQ4OtlLMYYsYo3TLQty70MtDMGALKe\n\tXvDlJlwgwwr7+GMnrtHhqGAYKnTFXy23qBLnZqRu5/7nHJPbCxWeZlx3id5WguKSWtL8\n\t8ucVU+23PqkMiRD31xpbnPdF2TfoochbsKNqv2WPgWpYToifyUYl6eAqtL2si8bzSWlA\n\t5m+5HhBv8+zp8ca00OA1JqmhDlV5DO6nzAUiL8eO4dA228mW231vc+sAo8KlvP8bikm4\n\tPq3Q==",
        "X-Gm-Message-State": "AJIora+ICVM9JuA2y/5JO5/r30j54AEJhd2p9JzGHJTNUTvi1Bnu5LAK\n\tWQQQUTjz1ZFbuTcwjnBM1em8FZXmLId3Xg==",
        "X-Google-Smtp-Source": "AGRyM1tCpeQVrWdjjTuvz4njfgypQhhPRWN+XiqOfhs+VTagOPFQo3OVYgmgMs8OraaNjbTLAHOd5Q==",
        "X-Received": "by 2002:a63:fb01:0:b0:419:699f:a0bb with SMTP id\n\to1-20020a63fb01000000b00419699fa0bbmr15774065pgh.4.1658859933411; \n\tTue, 26 Jul 2022 11:25:33 -0700 (PDT)",
        "To": "libcamera-devel@lists.libcamera.org",
        "Date": "Wed, 27 Jul 2022 02:24:58 +0800",
        "Message-Id": "<20220726182500.425182-5-hanlinchen@chromium.org>",
        "X-Mailer": "git-send-email 2.37.1.359.gd136c6c3e2-goog",
        "In-Reply-To": "<20220726182500.425182-1-hanlinchen@chromium.org>",
        "References": "<20220726182500.425182-1-hanlinchen@chromium.org>",
        "MIME-Version": "1.0",
        "Content-Transfer-Encoding": "8bit",
        "Subject": "[libcamera-devel] [PATCH 4/6] android: Move StreamBuffer out of\n\tCamera3RequestDescriptor",
        "X-BeenThere": "libcamera-devel@lists.libcamera.org",
        "X-Mailman-Version": "2.1.29",
        "Precedence": "list",
        "List-Id": "<libcamera-devel.lists.libcamera.org>",
        "List-Unsubscribe": "<https://lists.libcamera.org/options/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=unsubscribe>",
        "List-Archive": "<https://lists.libcamera.org/pipermail/libcamera-devel/>",
        "List-Post": "<mailto:libcamera-devel@lists.libcamera.org>",
        "List-Help": "<mailto:libcamera-devel-request@lists.libcamera.org?subject=help>",
        "List-Subscribe": "<https://lists.libcamera.org/listinfo/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=subscribe>",
        "From": "Han-Lin Chen via libcamera-devel <libcamera-devel@lists.libcamera.org>",
        "Reply-To": "Han-Lin Chen <hanlinchen@chromium.org>",
        "Errors-To": "libcamera-devel-bounces@lists.libcamera.org",
        "Sender": "\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"
    },
    "content": "Move StreamBuffer out of Camera3RequestDescriptor as a refactory before\napplying partial result to Android adaptor. For easier adding\nCamera3ResultDescriptor which references both StreamBuffer and\nCamera3RequestDescriptor.\n\nSigned-off-by: Han-Lin Chen <hanlinchen@chromium.org>\n---\n src/android/camera_device.cpp            | 22 +++++-----\n src/android/camera_device.h              |  7 ++--\n src/android/camera_request.cpp           | 29 +++++++------\n src/android/camera_request.h             | 52 ++++++++++++++----------\n src/android/camera_stream.cpp            | 17 ++++----\n src/android/camera_stream.h              |  6 +--\n src/android/jpeg/post_processor_jpeg.cpp |  2 +-\n src/android/jpeg/post_processor_jpeg.h   |  2 +-\n src/android/post_processor.h             |  4 +-\n src/android/yuv/post_processor_yuv.cpp   |  2 +-\n src/android/yuv/post_processor_yuv.h     |  2 +-\n 11 files changed, 75 insertions(+), 70 deletions(-)",
    "diff": "diff --git a/src/android/camera_device.cpp b/src/android/camera_device.cpp\nindex b20e389b..0248f146 100644\n--- a/src/android/camera_device.cpp\n+++ b/src/android/camera_device.cpp\n@@ -860,7 +860,7 @@ void CameraDevice::abortRequest(Camera3RequestDescriptor *descriptor) const\n \tnotifyError(descriptor->frameNumber_, nullptr, CAMERA3_MSG_ERROR_REQUEST);\n \n \tfor (auto &buffer : descriptor->buffers_)\n-\t\tbuffer.status = Camera3RequestDescriptor::Status::Error;\n+\t\tbuffer.status = StreamBuffer::Status::Error;\n \n \tdescriptor->status_ = Camera3RequestDescriptor::Status::Error;\n }\n@@ -1156,7 +1156,7 @@ void CameraDevice::requestComplete(Request *request)\n \t\t\tif (fence)\n \t\t\t\tbuffer.fence = fence->release();\n \t\t}\n-\t\tbuffer.status = Camera3RequestDescriptor::Status::Success;\n+\t\tbuffer.status = StreamBuffer::Status::Success;\n \t}\n \n \t/*\n@@ -1219,12 +1219,12 @@ void CameraDevice::requestComplete(Request *request)\n \tauto iter = descriptor->pendingStreamsToProcess_.begin();\n \twhile (iter != descriptor->pendingStreamsToProcess_.end()) {\n \t\tCameraStream *stream = iter->first;\n-\t\tCamera3RequestDescriptor::StreamBuffer *buffer = iter->second;\n+\t\tStreamBuffer *buffer = iter->second;\n \n \t\tFrameBuffer *src = request->findBuffer(stream->stream());\n \t\tif (!src) {\n \t\t\tLOG(HAL, Error) << \"Failed to find a source stream buffer\";\n-\t\t\tsetBufferStatus(*buffer, Camera3RequestDescriptor::Status::Error);\n+\t\t\tsetBufferStatus(*buffer, StreamBuffer::Status::Error);\n \t\t\titer = descriptor->pendingStreamsToProcess_.erase(iter);\n \t\t\tcontinue;\n \t\t}\n@@ -1234,7 +1234,7 @@ void CameraDevice::requestComplete(Request *request)\n \t\t++iter;\n \t\tint ret = stream->process(buffer);\n \t\tif (ret) {\n-\t\t\tsetBufferStatus(*buffer, Camera3RequestDescriptor::Status::Error);\n+\t\t\tsetBufferStatus(*buffer, StreamBuffer::Status::Error);\n \t\t\tdescriptor->pendingStreamsToProcess_.erase(stream);\n \n \t\t\t/*\n@@ -1304,7 +1304,7 @@ void CameraDevice::sendCaptureResults()\n \t\tfor (auto &buffer : descriptor->buffers_) {\n \t\t\tcamera3_buffer_status status = CAMERA3_BUFFER_STATUS_ERROR;\n \n-\t\t\tif (buffer.status == Camera3RequestDescriptor::Status::Success)\n+\t\t\tif (buffer.status == StreamBuffer::Status::Success)\n \t\t\t\tstatus = CAMERA3_BUFFER_STATUS_OK;\n \n \t\t\t/*\n@@ -1328,11 +1328,11 @@ void CameraDevice::sendCaptureResults()\n \t}\n }\n \n-void CameraDevice::setBufferStatus(Camera3RequestDescriptor::StreamBuffer &streamBuffer,\n-\t\t\t\t   Camera3RequestDescriptor::Status status)\n+void CameraDevice::setBufferStatus(StreamBuffer &streamBuffer,\n+\t\t\t\t   StreamBuffer::Status status)\n {\n \tstreamBuffer.status = status;\n-\tif (status != Camera3RequestDescriptor::Status::Success) {\n+\tif (status != StreamBuffer::Status::Success) {\n \t\tnotifyError(streamBuffer.request->frameNumber_,\n \t\t\t    streamBuffer.stream->camera3Stream(),\n \t\t\t    CAMERA3_MSG_ERROR_BUFFER);\n@@ -1356,8 +1356,8 @@ void CameraDevice::setBufferStatus(Camera3RequestDescriptor::StreamBuffer &strea\n  * be generated from post-processing have been completed. Mark the descriptor as\n  * complete using completeDescriptor() in that case.\n  */\n-void CameraDevice::streamProcessingComplete(Camera3RequestDescriptor::StreamBuffer *streamBuffer,\n-\t\t\t\t\t    Camera3RequestDescriptor::Status status)\n+void CameraDevice::streamProcessingComplete(StreamBuffer *streamBuffer,\n+\t\t\t\t\t    StreamBuffer::Status status)\n {\n \tsetBufferStatus(*streamBuffer, status);\n \ndiff --git a/src/android/camera_device.h b/src/android/camera_device.h\nindex 64050416..9eb7221b 100644\n--- a/src/android/camera_device.h\n+++ b/src/android/camera_device.h\n@@ -64,8 +64,8 @@ public:\n \tint configureStreams(camera3_stream_configuration_t *stream_list);\n \tint processCaptureRequest(camera3_capture_request_t *request);\n \tvoid requestComplete(libcamera::Request *request);\n-\tvoid streamProcessingComplete(Camera3RequestDescriptor::StreamBuffer *bufferStream,\n-\t\t\t\t      Camera3RequestDescriptor::Status status);\n+\tvoid streamProcessingComplete(StreamBuffer *bufferStream,\n+\t\t\t\t      StreamBuffer::Status status);\n \n protected:\n \tstd::string logPrefix() const override;\n@@ -96,8 +96,7 @@ private:\n \tvoid completeDescriptor(Camera3RequestDescriptor *descriptor)\n \t\tLIBCAMERA_TSA_EXCLUDES(descriptorsMutex_);\n \tvoid sendCaptureResults() LIBCAMERA_TSA_REQUIRES(descriptorsMutex_);\n-\tvoid setBufferStatus(Camera3RequestDescriptor::StreamBuffer &buffer,\n-\t\t\t     Camera3RequestDescriptor::Status status);\n+\tvoid setBufferStatus(StreamBuffer &buffer, StreamBuffer::Status status);\n \tstd::unique_ptr<CameraMetadata> getResultMetadata(\n \t\tconst Camera3RequestDescriptor &descriptor) const;\n \ndiff --git a/src/android/camera_request.cpp b/src/android/camera_request.cpp\nindex 6c87adba..f5d4d314 100644\n--- a/src/android/camera_request.cpp\n+++ b/src/android/camera_request.cpp\n@@ -141,7 +141,7 @@ Camera3RequestDescriptor::Camera3RequestDescriptor(\n Camera3RequestDescriptor::~Camera3RequestDescriptor() = default;\n \n /**\n- * \\struct Camera3RequestDescriptor::StreamBuffer\n+ * \\class StreamBuffer\n  * \\brief Group information for per-stream buffer of Camera3RequestDescriptor\n  *\n  * A capture request placed to the libcamera HAL can contain multiple streams.\n@@ -150,35 +150,35 @@ Camera3RequestDescriptor::~Camera3RequestDescriptor() = default;\n  * generation. The generation of the stream will depend on its type (refer to\n  * the CameraStream::Type documentation).\n  *\n- * \\var Camera3RequestDescriptor::StreamBuffer::stream\n+ * \\var StreamBuffer::stream\n  * \\brief Pointer to the corresponding CameraStream\n  *\n- * \\var Camera3RequestDescriptor::StreamBuffer::camera3Buffer\n+ * \\var StreamBuffer::camera3Buffer\n  * \\brief Native handle to the buffer\n  *\n- * \\var Camera3RequestDescriptor::StreamBuffer::frameBuffer\n+ * \\var StreamBuffer::frameBuffer\n  * \\brief Encapsulate the dmabuf handle inside a libcamera::FrameBuffer for\n  * direct streams\n  *\n- * \\var Camera3RequestDescriptor::StreamBuffer::fence\n+ * \\var StreamBuffer::fence\n  * \\brief Acquire fence of the buffer\n  *\n- * \\var Camera3RequestDescriptor::StreamBuffer::status\n+ * \\var StreamBuffer::status\n  * \\brief Track the status of the buffer\n  *\n- * \\var Camera3RequestDescriptor::StreamBuffer::internalBuffer\n+ * \\var StreamBuffer::internalBuffer\n  * \\brief Pointer to a buffer internally handled by CameraStream (if any)\n  *\n- * \\var Camera3RequestDescriptor::StreamBuffer::srcBuffer\n+ * \\var StreamBuffer::srcBuffer\n  * \\brief Pointer to the source frame buffer used for post-processing\n  *\n- * \\var Camera3RequestDescriptor::StreamBuffer::dstBuffer\n+ * \\var StreamBuffer::dstBuffer\n  * \\brief Pointer to the destination frame buffer used for post-processing\n  *\n- * \\var Camera3RequestDescriptor::StreamBuffer::request\n+ * \\var StreamBuffer::request\n  * \\brief Back pointer to the Camera3RequestDescriptor to which the StreamBuffer belongs\n  */\n-Camera3RequestDescriptor::StreamBuffer::StreamBuffer(\n+StreamBuffer::StreamBuffer(\n \tCameraStream *cameraStream, const camera3_stream_buffer_t &buffer,\n \tCamera3RequestDescriptor *requestDescriptor)\n \t: stream(cameraStream), camera3Buffer(buffer.buffer),\n@@ -186,9 +186,8 @@ Camera3RequestDescriptor::StreamBuffer::StreamBuffer(\n {\n }\n \n-Camera3RequestDescriptor::StreamBuffer::~StreamBuffer() = default;\n+StreamBuffer::~StreamBuffer() = default;\n \n-Camera3RequestDescriptor::StreamBuffer::StreamBuffer(StreamBuffer &&) = default;\n+StreamBuffer::StreamBuffer(StreamBuffer &&) = default;\n \n-Camera3RequestDescriptor::StreamBuffer &\n-Camera3RequestDescriptor::StreamBuffer::operator=(Camera3RequestDescriptor::StreamBuffer &&) = default;\n+StreamBuffer &StreamBuffer::operator=(StreamBuffer &&) = default;\ndiff --git a/src/android/camera_request.h b/src/android/camera_request.h\nindex 37b6ae32..5aa4eea8 100644\n--- a/src/android/camera_request.h\n+++ b/src/android/camera_request.h\n@@ -24,8 +24,9 @@\n \n class CameraBuffer;\n class CameraStream;\n+class Camera3RequestDescriptor;\n \n-class Camera3RequestDescriptor\n+class StreamBuffer\n {\n public:\n \tenum class Status {\n@@ -33,27 +34,34 @@ public:\n \t\tError,\n \t};\n \n-\tstruct StreamBuffer {\n-\t\tStreamBuffer(CameraStream *stream,\n-\t\t\t     const camera3_stream_buffer_t &buffer,\n-\t\t\t     Camera3RequestDescriptor *request);\n-\t\t~StreamBuffer();\n-\n-\t\tStreamBuffer(StreamBuffer &&);\n-\t\tStreamBuffer &operator=(StreamBuffer &&);\n-\n-\t\tCameraStream *stream;\n-\t\tbuffer_handle_t *camera3Buffer;\n-\t\tstd::unique_ptr<libcamera::FrameBuffer> frameBuffer;\n-\t\tlibcamera::UniqueFD fence;\n-\t\tStatus status = Status::Success;\n-\t\tlibcamera::FrameBuffer *internalBuffer = nullptr;\n-\t\tconst libcamera::FrameBuffer *srcBuffer = nullptr;\n-\t\tstd::unique_ptr<CameraBuffer> dstBuffer;\n-\t\tCamera3RequestDescriptor *request;\n-\n-\tprivate:\n-\t\tLIBCAMERA_DISABLE_COPY(StreamBuffer)\n+\tStreamBuffer(CameraStream *stream,\n+\t\t     const camera3_stream_buffer_t &buffer,\n+\t\t     Camera3RequestDescriptor *request);\n+\t~StreamBuffer();\n+\n+\tStreamBuffer(StreamBuffer &&);\n+\tStreamBuffer &operator=(StreamBuffer &&);\n+\n+\tCameraStream *stream;\n+\tbuffer_handle_t *camera3Buffer;\n+\tstd::unique_ptr<libcamera::FrameBuffer> frameBuffer;\n+\tlibcamera::UniqueFD fence;\n+\tStatus status = Status::Success;\n+\tlibcamera::FrameBuffer *internalBuffer = nullptr;\n+\tconst libcamera::FrameBuffer *srcBuffer = nullptr;\n+\tstd::unique_ptr<CameraBuffer> dstBuffer;\n+\tCamera3RequestDescriptor *request;\n+\n+private:\n+\tLIBCAMERA_DISABLE_COPY(StreamBuffer)\n+};\n+\n+class Camera3RequestDescriptor\n+{\n+public:\n+\tenum class Status {\n+\t\tSuccess,\n+\t\tError,\n \t};\n \n \t/* Keeps track of streams requiring post-processing. */\ndiff --git a/src/android/camera_stream.cpp b/src/android/camera_stream.cpp\nindex 045e6006..02dc8922 100644\n--- a/src/android/camera_stream.cpp\n+++ b/src/android/camera_stream.cpp\n@@ -112,14 +112,14 @@ int CameraStream::configure()\n \n \t\tworker_ = std::make_unique<PostProcessorWorker>(postProcessor_.get());\n \t\tpostProcessor_->processComplete.connect(\n-\t\t\tthis, [&](Camera3RequestDescriptor::StreamBuffer *streamBuffer,\n+\t\t\tthis, [&](StreamBuffer *streamBuffer,\n \t\t\t\t  PostProcessor::Status status) {\n-\t\t\t\tCamera3RequestDescriptor::Status bufferStatus;\n+\t\t\t\tStreamBuffer::Status bufferStatus;\n \n \t\t\t\tif (status == PostProcessor::Status::Success)\n-\t\t\t\t\tbufferStatus = Camera3RequestDescriptor::Status::Success;\n+\t\t\t\t\tbufferStatus = StreamBuffer::Status::Success;\n \t\t\t\telse\n-\t\t\t\t\tbufferStatus = Camera3RequestDescriptor::Status::Error;\n+\t\t\t\t\tbufferStatus = StreamBuffer::Status::Error;\n \n \t\t\t\tcameraDevice_->streamProcessingComplete(streamBuffer,\n \t\t\t\t\t\t\t\t\tbufferStatus);\n@@ -165,7 +165,7 @@ int CameraStream::waitFence(int fence)\n \treturn -errno;\n }\n \n-int CameraStream::process(Camera3RequestDescriptor::StreamBuffer *streamBuffer)\n+int CameraStream::process(StreamBuffer *streamBuffer)\n {\n \tASSERT(type_ != Type::Direct);\n \n@@ -283,7 +283,7 @@ void CameraStream::PostProcessorWorker::start()\n \tThread::start();\n }\n \n-void CameraStream::PostProcessorWorker::queueRequest(Camera3RequestDescriptor::StreamBuffer *dest)\n+void CameraStream::PostProcessorWorker::queueRequest(StreamBuffer *dest)\n {\n \t{\n \t\tMutexLocker lock(mutex_);\n@@ -306,7 +306,7 @@ void CameraStream::PostProcessorWorker::run()\n \t\tif (state_ != State::Running)\n \t\t\tbreak;\n \n-\t\tCamera3RequestDescriptor::StreamBuffer *streamBuffer = requests_.front();\n+\t\tStreamBuffer *streamBuffer = requests_.front();\n \t\trequests_.pop();\n \t\tlocker.unlock();\n \n@@ -316,8 +316,7 @@ void CameraStream::PostProcessorWorker::run()\n \t}\n \n \tif (state_ == State::Flushing) {\n-\t\tstd::queue<Camera3RequestDescriptor::StreamBuffer *> requests =\n-\t\t\tstd::move(requests_);\n+\t\tstd::queue<StreamBuffer *> requests = std::move(requests_);\n \t\tlocker.unlock();\n \n \t\twhile (!requests.empty()) {\ndiff --git a/src/android/camera_stream.h b/src/android/camera_stream.h\nindex 4c5078b2..c3b2e325 100644\n--- a/src/android/camera_stream.h\n+++ b/src/android/camera_stream.h\n@@ -127,7 +127,7 @@ public:\n \tCameraStream *sourceStream() const { return sourceStream_; }\n \n \tint configure();\n-\tint process(Camera3RequestDescriptor::StreamBuffer *streamBuffer);\n+\tint process(StreamBuffer *streamBuffer);\n \tlibcamera::FrameBuffer *getBuffer();\n \tvoid putBuffer(libcamera::FrameBuffer *buffer);\n \tvoid flush();\n@@ -146,7 +146,7 @@ private:\n \t\t~PostProcessorWorker();\n \n \t\tvoid start();\n-\t\tvoid queueRequest(Camera3RequestDescriptor::StreamBuffer *request);\n+\t\tvoid queueRequest(StreamBuffer *request);\n \t\tvoid flush();\n \n \tprotected:\n@@ -158,7 +158,7 @@ private:\n \t\tlibcamera::Mutex mutex_;\n \t\tlibcamera::ConditionVariable cv_;\n \n-\t\tstd::queue<Camera3RequestDescriptor::StreamBuffer *> requests_\n+\t\tstd::queue<StreamBuffer *> requests_\n \t\t\tLIBCAMERA_TSA_GUARDED_BY(mutex_);\n \n \t\tState state_ LIBCAMERA_TSA_GUARDED_BY(mutex_) = State::Stopped;\ndiff --git a/src/android/jpeg/post_processor_jpeg.cpp b/src/android/jpeg/post_processor_jpeg.cpp\nindex d72ebc3c..b9ba38ce 100644\n--- a/src/android/jpeg/post_processor_jpeg.cpp\n+++ b/src/android/jpeg/post_processor_jpeg.cpp\n@@ -98,7 +98,7 @@ void PostProcessorJpeg::generateThumbnail(const FrameBuffer &source,\n \t}\n }\n \n-void PostProcessorJpeg::process(Camera3RequestDescriptor::StreamBuffer *streamBuffer)\n+void PostProcessorJpeg::process(StreamBuffer *streamBuffer)\n {\n \tASSERT(encoder_);\n \ndiff --git a/src/android/jpeg/post_processor_jpeg.h b/src/android/jpeg/post_processor_jpeg.h\nindex 98309b01..0ba3e01b 100644\n--- a/src/android/jpeg/post_processor_jpeg.h\n+++ b/src/android/jpeg/post_processor_jpeg.h\n@@ -22,7 +22,7 @@ public:\n \n \tint configure(const libcamera::StreamConfiguration &incfg,\n \t\t      const libcamera::StreamConfiguration &outcfg) override;\n-\tvoid process(Camera3RequestDescriptor::StreamBuffer *streamBuffer) override;\n+\tvoid process(StreamBuffer *streamBuffer) override;\n \n private:\n \tvoid generateThumbnail(const libcamera::FrameBuffer &source,\ndiff --git a/src/android/post_processor.h b/src/android/post_processor.h\nindex 1a205b05..ac0182cd 100644\n--- a/src/android/post_processor.h\n+++ b/src/android/post_processor.h\n@@ -27,7 +27,7 @@ public:\n \n \tvirtual int configure(const libcamera::StreamConfiguration &inCfg,\n \t\t\t      const libcamera::StreamConfiguration &outCfg) = 0;\n-\tvirtual void process(Camera3RequestDescriptor::StreamBuffer *streamBuffer) = 0;\n+\tvirtual void process(StreamBuffer *streamBuffer) = 0;\n \n-\tlibcamera::Signal<Camera3RequestDescriptor::StreamBuffer *, Status> processComplete;\n+\tlibcamera::Signal<StreamBuffer *, Status> processComplete;\n };\ndiff --git a/src/android/yuv/post_processor_yuv.cpp b/src/android/yuv/post_processor_yuv.cpp\nindex ed44e6fe..de49b378 100644\n--- a/src/android/yuv/post_processor_yuv.cpp\n+++ b/src/android/yuv/post_processor_yuv.cpp\n@@ -49,7 +49,7 @@ int PostProcessorYuv::configure(const StreamConfiguration &inCfg,\n \treturn 0;\n }\n \n-void PostProcessorYuv::process(Camera3RequestDescriptor::StreamBuffer *streamBuffer)\n+void PostProcessorYuv::process(StreamBuffer *streamBuffer)\n {\n \tconst FrameBuffer &source = *streamBuffer->srcBuffer;\n \tCameraBuffer *destination = streamBuffer->dstBuffer.get();\ndiff --git a/src/android/yuv/post_processor_yuv.h b/src/android/yuv/post_processor_yuv.h\nindex a7ac17c5..27cf4bbc 100644\n--- a/src/android/yuv/post_processor_yuv.h\n+++ b/src/android/yuv/post_processor_yuv.h\n@@ -18,7 +18,7 @@ public:\n \n \tint configure(const libcamera::StreamConfiguration &incfg,\n \t\t      const libcamera::StreamConfiguration &outcfg) override;\n-\tvoid process(Camera3RequestDescriptor::StreamBuffer *streamBuffer) override;\n+\tvoid process(StreamBuffer *streamBuffer) override;\n \n private:\n \tbool isValidBuffers(const libcamera::FrameBuffer &source,\n",
    "prefixes": [
        "libcamera-devel",
        "4/6"
    ]
}