[{"id":32679,"web_url":"https://patchwork.libcamera.org/comment/32679/","msgid":"<l2zda5g23e7g5kvv7sc7awzz4icbhctth666jasblbusm445v7@m6josq3lwxb3>","date":"2024-12-11T14:44:53","subject":"Re: [PATCH v3 14/17] libcamera: rkisp1: make\n\tRkISP1CameraConfiguration a friend of the pipeline handler","submitter":{"id":143,"url":"https://patchwork.libcamera.org/api/people/143/","name":"Jacopo Mondi","email":"jacopo.mondi@ideasonboard.com"},"content":"Hi Stefan\n\nOn Fri, Dec 06, 2024 at 11:13:36AM +0100, Stefan Klug wrote:\n> For the validate() implementation, the RkISP1CameraConfiguration needs\n> access to dewarper related members of the PipelineHandlerRkISP1 object.\n> Allow this access by adding const versions of the pipe accessors and\n> making RkISP1CameraConfiguration a friend of PipelineHandlerRkISP1.\n>\n> Signed-off-by: Stefan Klug <stefan.klug@ideasonboard.com>\n> ---\n> Changes in v3:\n> - Added this patch\n> ---\n>  src/libcamera/pipeline/rkisp1/rkisp1.cpp | 7 +++++++\n>  1 file changed, 7 insertions(+)\n>\n> diff --git a/src/libcamera/pipeline/rkisp1/rkisp1.cpp b/src/libcamera/pipeline/rkisp1/rkisp1.cpp\n> index 2c8d670768b1..c582e164670c 100644\n> --- a/src/libcamera/pipeline/rkisp1/rkisp1.cpp\n> +++ b/src/libcamera/pipeline/rkisp1/rkisp1.cpp\n> @@ -98,6 +98,7 @@ public:\n>  \t}\n>\n>  \tPipelineHandlerRkISP1 *pipe();\n> +\tconst PipelineHandlerRkISP1 *pipe() const;\n>  \tint loadIPA(unsigned int hwRevision);\n>\n>  \tStream mainPathStream_;\n> @@ -176,6 +177,7 @@ private:\n>  \t}\n>\n>  \tfriend RkISP1CameraData;\n> +\tfriend RkISP1CameraConfiguration;\n\nAlternatively, a\n        V4L2M2MConverter *dewarper();\n\nfunction could be added.\n\nI don't mind either ways\nReviewed-by: Jacopo Mondi <jacopo.mondi@ideasonboard.com>\n\nThanks\n  j\n\n>  \tfriend RkISP1Frames;\n>\n>  \tint initLinks(Camera *camera, const CameraSensor *sensor,\n> @@ -363,6 +365,11 @@ PipelineHandlerRkISP1 *RkISP1CameraData::pipe()\n>  \treturn static_cast<PipelineHandlerRkISP1 *>(Camera::Private::pipe());\n>  }\n>\n> +const PipelineHandlerRkISP1 *RkISP1CameraData::pipe() const\n> +{\n> +\treturn static_cast<const PipelineHandlerRkISP1 *>(Camera::Private::pipe());\n> +}\n> +\n>  int RkISP1CameraData::loadIPA(unsigned int hwRevision)\n>  {\n>  \tipa_ = IPAManager::createIPA<ipa::rkisp1::IPAProxyRkISP1>(pipe(), 1, 1);\n> --\n> 2.43.0\n>","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 2737EBD80A\n\tfor <parsemail@patchwork.libcamera.org>;\n\tWed, 11 Dec 2024 14:45:00 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 565DE67EB4;\n\tWed, 11 Dec 2024 15:44:59 +0100 (CET)","from perceval.ideasonboard.com (perceval.ideasonboard.com\n\t[213.167.242.64])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id C20B667EB0\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tWed, 11 Dec 2024 15:44:57 +0100 (CET)","from ideasonboard.com (93-61-96-190.ip145.fastwebnet.it\n\t[93.61.96.190])\n\tby perceval.ideasonboard.com (Postfix) with ESMTPSA id AC3C1352;\n\tWed, 11 Dec 2024 15:44:24 +0100 (CET)"],"Authentication-Results":"lancelot.ideasonboard.com; dkim=pass (1024-bit key;\n\tunprotected) header.d=ideasonboard.com header.i=@ideasonboard.com\n\theader.b=\"O+hC/Jf4\"; dkim-atps=neutral","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1733928264;\n\tbh=e5zCPujAvoayg8Eh5BkPXRPbynS+O2lWgV/TxmpDnGE=;\n\th=Date:From:To:Cc:Subject:References:In-Reply-To:From;\n\tb=O+hC/Jf4DR7vw0lR+DmJdImwQjZ9DUMSbu/wmJCEioGXnQQKVAxZ/opr5uvTDJSkz\n\tjEmgFSxVnRR2K82WNyhh47k4d9AtV01z6Bpv4Z0caVZRFUvpqAQWVOIy5OOGc4pS2K\n\tinaaA9l9Dg09OGSa58m3OvMWo+7hl/4uYGMhPqTA=","Date":"Wed, 11 Dec 2024 15:44:53 +0100","From":"Jacopo Mondi <jacopo.mondi@ideasonboard.com>","To":"Stefan Klug <stefan.klug@ideasonboard.com>","Cc":"libcamera-devel@lists.libcamera.org","Subject":"Re: [PATCH v3 14/17] libcamera: rkisp1: make\n\tRkISP1CameraConfiguration a friend of the pipeline handler","Message-ID":"<l2zda5g23e7g5kvv7sc7awzz4icbhctth666jasblbusm445v7@m6josq3lwxb3>","References":"<20241206101344.767170-1-stefan.klug@ideasonboard.com>\n\t<20241206101344.767170-15-stefan.klug@ideasonboard.com>","MIME-Version":"1.0","Content-Type":"text/plain; charset=utf-8","Content-Disposition":"inline","In-Reply-To":"<20241206101344.767170-15-stefan.klug@ideasonboard.com>","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>","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"}},{"id":32701,"web_url":"https://patchwork.libcamera.org/comment/32701/","msgid":"<Z1rSQrvb4o_42PxL@pyrite.rasen.tech>","date":"2024-12-12T12:08:34","subject":"Re: [PATCH v3 14/17] libcamera: rkisp1: make\n\tRkISP1CameraConfiguration a friend of the pipeline handler","submitter":{"id":17,"url":"https://patchwork.libcamera.org/api/people/17/","name":"Paul Elder","email":"paul.elder@ideasonboard.com"},"content":"On Fri, Dec 06, 2024 at 11:13:36AM +0100, Stefan Klug wrote:\n> For the validate() implementation, the RkISP1CameraConfiguration needs\n> access to dewarper related members of the PipelineHandlerRkISP1 object.\n> Allow this access by adding const versions of the pipe accessors and\n> making RkISP1CameraConfiguration a friend of PipelineHandlerRkISP1.\n> \n> Signed-off-by: Stefan Klug <stefan.klug@ideasonboard.com>\n\nReviewed-by: Paul Elder <paul.elder@ideasonboard.com>\n\n> ---\n> Changes in v3:\n> - Added this patch\n> ---\n>  src/libcamera/pipeline/rkisp1/rkisp1.cpp | 7 +++++++\n>  1 file changed, 7 insertions(+)\n> \n> diff --git a/src/libcamera/pipeline/rkisp1/rkisp1.cpp b/src/libcamera/pipeline/rkisp1/rkisp1.cpp\n> index 2c8d670768b1..c582e164670c 100644\n> --- a/src/libcamera/pipeline/rkisp1/rkisp1.cpp\n> +++ b/src/libcamera/pipeline/rkisp1/rkisp1.cpp\n> @@ -98,6 +98,7 @@ public:\n>  \t}\n>  \n>  \tPipelineHandlerRkISP1 *pipe();\n> +\tconst PipelineHandlerRkISP1 *pipe() const;\n>  \tint loadIPA(unsigned int hwRevision);\n>  \n>  \tStream mainPathStream_;\n> @@ -176,6 +177,7 @@ private:\n>  \t}\n>  \n>  \tfriend RkISP1CameraData;\n> +\tfriend RkISP1CameraConfiguration;\n>  \tfriend RkISP1Frames;\n>  \n>  \tint initLinks(Camera *camera, const CameraSensor *sensor,\n> @@ -363,6 +365,11 @@ PipelineHandlerRkISP1 *RkISP1CameraData::pipe()\n>  \treturn static_cast<PipelineHandlerRkISP1 *>(Camera::Private::pipe());\n>  }\n>  \n> +const PipelineHandlerRkISP1 *RkISP1CameraData::pipe() const\n> +{\n> +\treturn static_cast<const PipelineHandlerRkISP1 *>(Camera::Private::pipe());\n> +}\n> +\n>  int RkISP1CameraData::loadIPA(unsigned int hwRevision)\n>  {\n>  \tipa_ = IPAManager::createIPA<ipa::rkisp1::IPAProxyRkISP1>(pipe(), 1, 1);\n> -- \n> 2.43.0\n>","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 AC6BCC3260\n\tfor <parsemail@patchwork.libcamera.org>;\n\tThu, 12 Dec 2024 12:08:43 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id EA15D67ED6;\n\tThu, 12 Dec 2024 13:08:42 +0100 (CET)","from perceval.ideasonboard.com (perceval.ideasonboard.com\n\t[213.167.242.64])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 5967267EC7\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tThu, 12 Dec 2024 13:08:41 +0100 (CET)","from pyrite.rasen.tech (unknown\n\t[IPv6:2404:7a81:160:2100:39eb:989c:b016:217b])\n\tby perceval.ideasonboard.com (Postfix) with ESMTPSA id B6A34316;\n\tThu, 12 Dec 2024 13:08:06 +0100 (CET)"],"Authentication-Results":"lancelot.ideasonboard.com; dkim=pass (1024-bit key;\n\tunprotected) header.d=ideasonboard.com header.i=@ideasonboard.com\n\theader.b=\"u6QWmKhY\"; dkim-atps=neutral","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1734005287;\n\tbh=QMKiCmcAgtk4c/hdnZw0dy+v17AWdUyYY7uekXGOGWE=;\n\th=Date:From:To:Cc:Subject:References:In-Reply-To:From;\n\tb=u6QWmKhYBiyXVrLJwm46hqcUvIV/+5qFkVXLnb8Qz2FvgXZAlDQYpjgxJ1MoeVWx6\n\t69btwH5r91oRUf8dds5mk/V1TbOb0YwPMV9K5cYJxDqY5G6KsR/wxnLtQUwr2I9aM2\n\tiYsfnArv3XNBEWOqYSpbRCfDoi9iINJngaxyfJvc=","Date":"Thu, 12 Dec 2024 21:08:34 +0900","From":"Paul Elder <paul.elder@ideasonboard.com>","To":"Stefan Klug <stefan.klug@ideasonboard.com>","Cc":"libcamera-devel@lists.libcamera.org","Subject":"Re: [PATCH v3 14/17] libcamera: rkisp1: make\n\tRkISP1CameraConfiguration a friend of the pipeline handler","Message-ID":"<Z1rSQrvb4o_42PxL@pyrite.rasen.tech>","References":"<20241206101344.767170-1-stefan.klug@ideasonboard.com>\n\t<20241206101344.767170-15-stefan.klug@ideasonboard.com>","MIME-Version":"1.0","Content-Type":"text/plain; charset=us-ascii","Content-Disposition":"inline","In-Reply-To":"<20241206101344.767170-15-stefan.klug@ideasonboard.com>","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>","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"}}]