[{"id":36787,"web_url":"https://patchwork.libcamera.org/comment/36787/","msgid":"<372e8672-b320-4369-b00b-829885b9bdb9@ideasonboard.com>","date":"2025-11-13T10:11:39","subject":"Re: [PATCH v1 1/2] libamera: media_pipeline: Move entities list to\n\tpublic","submitter":{"id":216,"url":"https://patchwork.libcamera.org/api/people/216/","name":"Barnabás Pőcze","email":"barnabas.pocze@ideasonboard.com"},"content":"Hi\n\n2025. 11. 13. 11:04 keltezéssel, Antoine Bouyer írta:\n> From: Andrei Gansari <andrei.gansari@nxp.com>\n> \n> Exposes internal MediaEntity::Entity list to help extracting more\n> information regarding linked entities.\n> \n> For example, when the pad index of the last device in the list need to\n> be retrieved from the media pipeline user.\n> \n> Exposes as const to prevent any corruption from user. Then it is still\n> protected so as when the list was private.\n> \n> Signed-off-by: Andrei Gansari <andrei.gansari@nxp.com>\n> Signed-off-by: Antoine Bouyer <antoine.bouyer@nxp.com>\n> ---\n>   include/libcamera/internal/media_pipeline.h | 4 +++-\n>   1 file changed, 3 insertions(+), 1 deletion(-)\n> \n> diff --git a/include/libcamera/internal/media_pipeline.h b/include/libcamera/internal/media_pipeline.h\n> index a7a4b8c559cd..5f37d4bd57a7 100644\n> --- a/include/libcamera/internal/media_pipeline.h\n> +++ b/include/libcamera/internal/media_pipeline.h\n> @@ -27,7 +27,6 @@ public:\n>   \tint initLinks();\n>   \tint configure(CameraSensor *sensor, V4L2SubdeviceFormat *);\n>   \n> -private:\n>   \tstruct Entity {\n>   \t\t/* The media entity, always valid. */\n>   \t\tMediaEntity *entity;\n> @@ -53,6 +52,9 @@ private:\n>   \t\tMediaLink *sourceLink;\n>   \t};\n>   \n> +\tconst std::list<Entity> &entities() { return entities_; }\n\nI'm pretty sure you will now have to document both the `Entity` type with its\nmembers and the `entities()` function in media_pipeline.cpp.\n\n\nRegards,\nBarnabás Pőcze\n\n\n> +\n> +private:\n>   \tstd::list<Entity> entities_;\n>   };\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 61BF8C3241\n\tfor <parsemail@patchwork.libcamera.org>;\n\tThu, 13 Nov 2025 10:11:47 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 556C360A8B;\n\tThu, 13 Nov 2025 11:11:46 +0100 (CET)","from perceval.ideasonboard.com (perceval.ideasonboard.com\n\t[213.167.242.64])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 68D74608CF\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tThu, 13 Nov 2025 11:11:44 +0100 (CET)","from [192.168.33.32] (185.221.140.239.nat.pool.zt.hu\n\t[185.221.140.239])\n\tby perceval.ideasonboard.com (Postfix) with ESMTPSA id 11A8D5B2;\n\tThu, 13 Nov 2025 11:09:43 +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=\"DvYE42el\"; dkim-atps=neutral","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1763028584;\n\tbh=zOu71IGddwpnGTK58kMqqfIA62KbbB8dHguXWC5Eme4=;\n\th=Date:Subject:To:Cc:References:From:In-Reply-To:From;\n\tb=DvYE42elueLaHgIGoyBbRmEJ6IcaABfuv2xolI9B+siHSMtLqRQhVMIklU9Md0WBt\n\tCXRqOMVpTL9xqctjX3f+GoX80pzzn/evkEO9fLURB0c8zYMrUWwhGEc+xlWJ7TKC3q\n\tCFr7s3NCNamqytowktLLW1IFp01OKrzxYbUF05Kc=","Message-ID":"<372e8672-b320-4369-b00b-829885b9bdb9@ideasonboard.com>","Date":"Thu, 13 Nov 2025 11:11:39 +0100","MIME-Version":"1.0","User-Agent":"Mozilla Thunderbird","Subject":"Re: [PATCH v1 1/2] libamera: media_pipeline: Move entities list to\n\tpublic","To":"Antoine Bouyer <antoine.bouyer@nxp.com>,\n\tlibcamera-devel@lists.libcamera.org","Cc":"julien.vuillaumier@nxp.com, Andrei Gansari <andrei.gansari@nxp.com>","References":"<20251113100414.535550-1-antoine.bouyer@nxp.com>\n\t<20251113100414.535550-2-antoine.bouyer@nxp.com>","From":"=?utf-8?q?Barnab=C3=A1s_P=C5=91cze?= <barnabas.pocze@ideasonboard.com>","Content-Language":"en-US, hu-HU","In-Reply-To":"<20251113100414.535550-2-antoine.bouyer@nxp.com>","Content-Type":"text/plain; charset=UTF-8; format=flowed","Content-Transfer-Encoding":"8bit","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":36815,"web_url":"https://patchwork.libcamera.org/comment/36815/","msgid":"<b2bf1276-6870-4d23-937c-da13f5f95188@nxp.com>","date":"2025-11-14T13:10:10","subject":"Re: Re: [PATCH v1 1/2] libamera: media_pipeline: Move entities list\n\tto public","submitter":{"id":218,"url":"https://patchwork.libcamera.org/api/people/218/","name":"Antoine Bouyer","email":"antoine.bouyer@nxp.com"},"content":"Hi Barnabás,\n\nOn 11/13/25 11:11 AM, Barnabás Pőcze wrote:\n> Caution: This is an external email. Please take care when clicking links \n> or opening attachments. When in doubt, report the message using the \n> 'Report this email' button\n> \n> \n> Hi\n> \n> 2025. 11. 13. 11:04 keltezéssel, Antoine Bouyer írta:\n>> From: Andrei Gansari <andrei.gansari@nxp.com>\n>>\n>> Exposes internal MediaEntity::Entity list to help extracting more\n>> information regarding linked entities.\n>>\n>> For example, when the pad index of the last device in the list need to\n>> be retrieved from the media pipeline user.\n>>\n>> Exposes as const to prevent any corruption from user. Then it is still\n>> protected so as when the list was private.\n>>\n>> Signed-off-by: Andrei Gansari <andrei.gansari@nxp.com>\n>> Signed-off-by: Antoine Bouyer <antoine.bouyer@nxp.com>\n>> ---\n>>   include/libcamera/internal/media_pipeline.h | 4 +++-\n>>   1 file changed, 3 insertions(+), 1 deletion(-)\n>>\n>> diff --git a/include/libcamera/internal/media_pipeline.h b/include/ \n>> libcamera/internal/media_pipeline.h\n>> index a7a4b8c559cd..5f37d4bd57a7 100644\n>> --- a/include/libcamera/internal/media_pipeline.h\n>> +++ b/include/libcamera/internal/media_pipeline.h\n>> @@ -27,7 +27,6 @@ public:\n>>       int initLinks();\n>>       int configure(CameraSensor *sensor, V4L2SubdeviceFormat *);\n>>\n>> -private:\n>>       struct Entity {\n>>               /* The media entity, always valid. */\n>>               MediaEntity *entity;\n>> @@ -53,6 +52,9 @@ private:\n>>               MediaLink *sourceLink;\n>>       };\n>>\n>> +     const std::list<Entity> &entities() { return entities_; }\n> \n> I'm pretty sure you will now have to document both the `Entity` type \n> with its\n> members and the `entities()` function in media_pipeline.cpp.\n\nYes indeed :( saw the same on this job:\nhttps://gitlab.freedesktop.org/camera/libcamera/-/jobs/87812646#L685\n\nI managed to reproduce locally. So I hope V2 should be fine.\n\nBest regards\nAntoine\n\n> \n> \n> Regards,\n> Barnabás Pőcze\n> \n> \n>> +\n>> +private:\n>>       std::list<Entity> entities_;\n>>   };\n>>\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 777D9C3263\n\tfor <parsemail@patchwork.libcamera.org>;\n\tFri, 14 Nov 2025 13:10:19 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 2D7BC60A80;\n\tFri, 14 Nov 2025 14:10:18 +0100 (CET)","from DUZPR83CU001.outbound.protection.outlook.com\n\t(mail-northeuropeazlp170120005.outbound.protection.outlook.com\n\t[IPv6:2a01:111:f403:c200::5])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id DC2C0606E6\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tFri, 14 Nov 2025 14:10:16 +0100 (CET)","from GVXPR04MB9831.eurprd04.prod.outlook.com (2603:10a6:150:11c::8)\n\tby GVXPR04MB9928.eurprd04.prod.outlook.com (2603:10a6:150:117::17)\n\twith Microsoft SMTP Server (version=TLS1_2,\n\tcipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9320.18;\n\tFri, 14 Nov 2025 13:10:11 +0000","from GVXPR04MB9831.eurprd04.prod.outlook.com\n\t([fe80::4634:3d9c:c4a:641a]) by\n\tGVXPR04MB9831.eurprd04.prod.outlook.com\n\t([fe80::4634:3d9c:c4a:641a%6]) with mapi id 15.20.9320.018;\n\tFri, 14 Nov 2025 13:10:11 +0000"],"Authentication-Results":["lancelot.ideasonboard.com; dkim=pass (2048-bit key;\n\tunprotected) header.d=nxp.com header.i=@nxp.com header.b=\"Cf9gALdC\";\n\tdkim-atps=neutral","dkim=none (message not signed)\n\theader.d=none;dmarc=none action=none header.from=nxp.com;"],"ARC-Seal":"i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none;\n\tb=aLJjH31VbOHNoBOGRd2zQVuFmYqHEIqLPl1bxlSpzAU85hI0SigD1vQ5vZ8MDnSV1guIVHN8tusqSilFD7fD1NQ+NNxf9d/7dRcEC4tc7TlqKOOcKV43Q9p0FtHU9yPDl7gnl2BObqY+PFAtFOnU9Nn9b/fFTKLk0iTF+Quragu9WhXLPzYMtXXPSl/VdNpBiyZrma6QXO6YgKP7De6lWC+H6ab55x/8O6ZgsuwAnPELZFV6kP3vauu6zP28T1/mN9Bz01yiOJq+QQfEmep2/kWA0KxAvOmwIx1jXsOWUS7Z3M/i3ftRWzUCOARA0FHyXIPnybxhnplMgdvpfSWqMg==","ARC-Message-Signature":"i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;\n\ts=arcselector10001;\n\th=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;\n\tbh=eQgBtauc0G3NwNdbdkMXr2JrhA2TpUyFTj6+Pd+qlKE=;\n\tb=kpQFDkttSEtDl8cox9BhxBO9tsdelV75JfVWeCI+BvEBSzSGujl1d24KAYnxiI4u9pxyFEtXwfTJ7FXVya021U7W1DqtDryqSBJQXvsPlH1ssB8KGMZTgGtpZ1vvmtcqyEwW8pm0J5I89VNsKzEnsJu2432XJNrJOvBsujsRb5j3E/klallPEXjqRON79bHwGNv83kZq/c0JISUfPvwGzXAvRwxmsyjCnhGw2fDzs52d4hvV7PfdtlSzd4zVXKavY/KtCbBvRWEdJSJkRbtMO0N7c/9yTLQNiX9OEkDZV/dsy8lM8eMpdZDArpqpGQlnKOLWtxRk9N5ttVpmy62pNA==","ARC-Authentication-Results":"i=1; mx.microsoft.com 1; spf=pass\n\tsmtp.mailfrom=nxp.com; dmarc=pass action=none header.from=nxp.com;\n\tdkim=pass header.d=nxp.com; arc=none","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector1;\n\th=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;\n\tbh=eQgBtauc0G3NwNdbdkMXr2JrhA2TpUyFTj6+Pd+qlKE=;\n\tb=Cf9gALdCRxUcIbW6IHnI9Tt1royvcSIVfkVYwgd7+A+Dz88VmSrlHY8vofJt2zVUidEXmbwMo3yUmXUUiohtjnz93o2kxUmI/Mlwl16r9fa7F/hi1ZKvypVTR/bq7WEEmHT48qOxdzXANRFvw3j5v7hZD2prhWwNLib/8g8CdzaitgGRoEah9GYOLlEqX2JdGLJHRmtc9/8shmnmZ6TqWLdv7hpGnIjfc9hfH8lQuWrVXtE6Ey6NX7b3hNnGWTWBaoHeI7jcVXXqKKD+OUWgq6h4WTDay/6F8SvcfieUpWfLx+q5nkfRp4qBx1qlyYXp+c0qZrtQcCUoKiWUeCiI4w==","Message-ID":"<b2bf1276-6870-4d23-937c-da13f5f95188@nxp.com>","Date":"Fri, 14 Nov 2025 14:10:10 +0100","User-Agent":"Mozilla Thunderbird","Subject":"Re: Re: [PATCH v1 1/2] libamera: media_pipeline: Move entities list\n\tto public","To":"=?utf-8?q?Barnab=C3=A1s_P=C5=91cze?= <barnabas.pocze@ideasonboard.com>,\n\tlibcamera-devel@lists.libcamera.org","Cc":"julien.vuillaumier@nxp.com, Andrei Gansari <andrei.gansari@nxp.com>","References":"<20251113100414.535550-1-antoine.bouyer@nxp.com>\n\t<20251113100414.535550-2-antoine.bouyer@nxp.com>\n\t<372e8672-b320-4369-b00b-829885b9bdb9@ideasonboard.com>","Content-Language":"en-US","From":"Antoine Bouyer <antoine.bouyer@nxp.com>","In-Reply-To":"<372e8672-b320-4369-b00b-829885b9bdb9@ideasonboard.com>","Content-Type":"text/plain; charset=UTF-8; format=flowed","Content-Transfer-Encoding":"8bit","X-ClientProxiedBy":"AM0PR04CA0052.eurprd04.prod.outlook.com\n\t(2603:10a6:208:1::29) To GVXPR04MB9831.eurprd04.prod.outlook.com\n\t(2603:10a6:150:11c::8)","MIME-Version":"1.0","X-MS-PublicTrafficType":"Email","X-MS-TrafficTypeDiagnostic":"GVXPR04MB9831:EE_|GVXPR04MB9928:EE_","X-MS-Office365-Filtering-Correlation-Id":"228f9599-8b92-4213-1482-08de237f248a","X-MS-Exchange-SenderADCheck":"1","X-MS-Exchange-AntiSpam-Relay":"0","X-Microsoft-Antispam":"BCL:0;\n\tARA:13230040|19092799006|366016|1800799024|376014; ","X-Microsoft-Antispam-Message-Info":"=?utf-8?q?7O+iAaqhOmoAzHJVcyaeMMdkarVE?=\n\t=?utf-8?q?towm3v6LVsmWkVZPe4PbSH1Z8ygz0kIp+7gdkfps1zHIMxjdCJYaw/tH?=\n\t=?utf-8?q?eExdPy/d24Y6Tb9rJSR7CR6Ah1aVbrh5XciUqquxmZfAFM0V3l2aDB3w?=\n\t=?utf-8?q?b+ZMurwJEOKBfWnYP5v4fCGK0MVW+YJQRytgis98nxo2sUwYAKpLXePU?=\n\t=?utf-8?q?CsTOiTEPAvwBrYpr3gSQBPkgWevLENogk42aMqiU7nE3a6Pl0dB+jhH5?=\n\t=?utf-8?q?hzgXYX82d3BohNQsPNpox7T3eGmSkoPjqfn1ee6pTSsFBsvII27fZpHL?=\n\t=?utf-8?q?/KryOSIeU8DID7C3xHVNUqnH1V3p4ueRQreJaCzKt+GfTRmJ5XXP2qFb?=\n\t=?utf-8?q?fDyYUFSHtC5Ve0xKA6HnQzUG5MnXFofN4iAjwTQ5/dtrllSh7f8fuCMG?=\n\t=?utf-8?q?vFoqMKaFOwN+a8b2zzTuKna3NGVUrSNO92X+kHIi60KcIThs3vHpspoE?=\n\t=?utf-8?q?lAoYfi8Zg7YvE040vBQPc743mFuK+9D2P9t1YEN6h/KMPhFpKXxGL2qg?=\n\t=?utf-8?q?dW0/YOcdZswug6RyvGNWpck09DkFSFjQTqpqELxrXoeOCypIdv2jwdwj?=\n\t=?utf-8?q?oiccYy7MnNii/k/HfBVxB0jA8eVXcbInJcueAa4tRMmDu9U781B1YrOm?=\n\t=?utf-8?q?E8nXsPiWYAXyUQJ85KAqrnvTAJezSC36EGxr62ht30jsK1mPbjzIrTjc?=\n\t=?utf-8?q?oY8YkA64NCsjoqv2Wg5jgcYyn31R7gskqqIH6N8YL+/apZ2Zm8ddUG9d?=\n\t=?utf-8?q?YNXdrtCnX5rrC13HNHF2gJ5UR1TF8hGiHNJYpTL8MzWauOqdHgaUmQzx?=\n\t=?utf-8?q?tWIl5xPSv0Qg0Br5Fj/FLkneYJVhAGL+/521LoAIVtkpNzlz1ScHUih7?=\n\t=?utf-8?q?uk+EFy3/JqosCuuPCuSkN8rCBMtx+0AkeqsDUtQccIeIRPItWRITDhoC?=\n\t=?utf-8?q?F7h2k9dMPzDHAxkcJIWNHCpV074Ba3Uz2keCr1dOnIQXr1+5X2wmi3sk?=\n\t=?utf-8?q?2YGVrQUKLprY8JjoT9oWGbQsUVH/jo3uHLY5ary9dNiMgiq8YY+g3MXD?=\n\t=?utf-8?q?jHa8x2rTOUUFKkxjDBQyKndo3a7X59kF8al1qIa56C+5KjARWLHDdPya?=\n\t=?utf-8?q?raNQJEUnBuyoeNCqqC9jHzt+V6yaR03BAIJc4YGzSb4frIVrsPXI4I+T?=\n\t=?utf-8?q?XFcsZ6J/AS8ekhEjxsdzg3ZKf0P4Uzbbx02sOLBSV56DxgB8jucIZ93a?=\n\t=?utf-8?q?IKAyELw8Vm7B+oeKOECshkxGkra1ZdNU3ttmWlykt6LUyvogTQsny23K?=\n\t=?utf-8?q?E9C9C+N7RT5HMzAoCSV41usDisKMCpVvu5eOtU0IBh2sgnH6Zw+BJv8T?=\n\t=?utf-8?q?k37pO3iDPXYDCKVIS+6GUYUXzoOJVhQBevf8vfHee5+4WgfI+iaAcq5q?=\n\t=?utf-8?q?sVLPXLMZ/76Ag2Qje56jcW/MUMC1z4qN1iAkraA8SQoKQKbPDTq85RFl?=\n\t=?utf-8?q?zA=3D=3D?=","X-Forefront-Antispam-Report":"CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:;\n\tIPV:NLI; SFV:NSPM; H:GVXPR04MB9831.eurprd04.prod.outlook.com; PTR:;\n\tCAT:NONE; \n\tSFS:(13230040)(19092799006)(366016)(1800799024)(376014); DIR:OUT;\n\tSFP:1101; ","X-MS-Exchange-AntiSpam-MessageData-ChunkCount":"1","X-MS-Exchange-AntiSpam-MessageData-0":"=?utf-8?q?T6KKN8F4Bk5VjZMZW7dpxVzMk?=\n\t=?utf-8?q?mSpugO2J2gprnnsAn9fxLdDkB0TbyWR8Inr809fNDv0SiB/kH/C4koIf?=\n\t=?utf-8?q?ZmsX1RM14qSQ7JyE/1hffvlNziDA+oJcz07gRshhSEELzeizi2r0v1a5?=\n\t=?utf-8?q?HZzuto2+YRNlxexOyyNwHtfvmSP9JSTwkqYeDLj6tDNQWwDz6Xxhf0rh?=\n\t=?utf-8?q?V+Si+iBTEB362aS2Js4782SBXawdf4dj21FmC+TkVZsNoaoeA3nKB+D0?=\n\t=?utf-8?q?C9iuwTR52a9VJnT1JfapPjYqCAJxSv1dDhFaA2efvv16zw3BAQxEdDyM?=\n\t=?utf-8?q?bJjjhKmur57B4KSSeHFSh4aS6tDZ5kYBoy8MTkFA+e8ttY3UZupOYoC/?=\n\t=?utf-8?q?8/AVz4FDRgnjJRSSyMAhjT289w2WGBdp/0oHmyKJHsAJU3ENDDDf4cXs?=\n\t=?utf-8?q?GkVWLEKIRE0wiDGiFBKqJco+RzeNnKINn9IYDkNfLPCwxD8587SUY2Yl?=\n\t=?utf-8?q?r/W9w/kyQCmUxm3GJAZ/Qdj1ndn+bVktlIxNh5B4lcubSkma1U6cIWq7?=\n\t=?utf-8?q?ekmqsctONhTmu5lM1NRYuWdYIZ8Gg0DB6HNcz9K/PaXM2ClQMoqRY01W?=\n\t=?utf-8?q?FjW7tK0gzwN1lFTcsR8dVOnbgqtze2oDdUoGjIj1GVVodK0oxBSJgpud?=\n\t=?utf-8?q?yXclbThmixps4CO7JW+IYXzq7x34JKSeu4S1uDG9L4qkaMLkFt6bqwc2?=\n\t=?utf-8?q?puyInHlZLbcF+TLeGpbAjhRpkj9DGKAh0FXL/TCrF/vBTgPtz0t5Oer5?=\n\t=?utf-8?q?NWqfHEAQHafwaChTTGIBduMM3FTQyfrcWxe2ibt/4UxzBMrK99KDng/e?=\n\t=?utf-8?q?2E12Hl19zEbjRUuRsFTmzUBN7yOZoD7kW1JImxqWUIAtMmVlTtLsXd6H?=\n\t=?utf-8?q?kI3nyd1PCcAKxHKTy5r/IkVhr9eWjw5Itx8uO3TxpUd4D35jR1EiacNa?=\n\t=?utf-8?q?QbWcpH0m3rKn0+H1wyucO3ixrcwRgu1owndC8s4Pj4igHZPNlmWsap8P?=\n\t=?utf-8?q?rXf4ZmPX0gOHmebWNWQqlyrge39Dwp1Rbff2ruQJMt0pxF8i1rKGrK0H?=\n\t=?utf-8?q?7LsGF/ImR9iSzxJ1LBmHMtd23bxMTxkz4GuNYy4X2kPpTanvsUmVrUsb?=\n\t=?utf-8?q?tpR2BMsXtyfTUGqXHiYe/ufGkrY/DLT2PcAgMVSZCQHyjnSItUnw6bOQ?=\n\t=?utf-8?q?fLBZZxmT9reI9dpoTL+bRz0Fda5INaS1C+7eETG9EZunYMqDvmRyrz8o?=\n\t=?utf-8?q?M/3lE389OTSEQ1q0Y1Lirrh6y+HbBnpUXDg5b2rofua/na2S7OsCV0Sw?=\n\t=?utf-8?q?QucMn0jCtmC3/ZPxbQQ/vWBN7jN9G76qZ1nj2av+/XtgcODxHVrdahR6?=\n\t=?utf-8?q?NYVwRv9TkLJQSyWcuum8N8uhu1tiJ1mutcIeRYpCOZfRbMLdpQKMMqlg?=\n\t=?utf-8?q?SbtyZPWbU9BVgBAPHH9s89ygGlGgJLDeT0pmITYMZRE1qRMM0D0cL+TO?=\n\t=?utf-8?q?gKxVO/7u7W1k4d4UKUUu33DrlvTOAsx57l0k1G91+45obiSG8CL/4SUF?=\n\t=?utf-8?q?A4jmmz4vDo33aZ0f0KM3mhg94NjF13KmcaR2GIfZxLpywUVHBtIy4jJv?=\n\t=?utf-8?q?ZlhsLxx7cqI2tyS9FSZsyBz1zC6vLgiZyxH8PqB5ORY3xZPd/94bbxJF?=\n\t=?utf-8?q?IXKaVhW5qfbldfizNQcHhMHhqUP4g=3D=3D?=","X-OriginatorOrg":"nxp.com","X-MS-Exchange-CrossTenant-Network-Message-Id":"228f9599-8b92-4213-1482-08de237f248a","X-MS-Exchange-CrossTenant-AuthSource":"GVXPR04MB9831.eurprd04.prod.outlook.com","X-MS-Exchange-CrossTenant-AuthAs":"Internal","X-MS-Exchange-CrossTenant-OriginalArrivalTime":"14 Nov 2025 13:10:11.5776\n\t(UTC)","X-MS-Exchange-CrossTenant-FromEntityHeader":"Hosted","X-MS-Exchange-CrossTenant-Id":"686ea1d3-bc2b-4c6f-a92c-d99c5c301635","X-MS-Exchange-CrossTenant-MailboxType":"HOSTED","X-MS-Exchange-CrossTenant-UserPrincipalName":"Q3uijzCrO4kpZvwfCBqK+0+m17pcwGtZ7x86YYkyGaP1l/uCvYBsYShbW92n2jK388ouYuBUEhF1Ub3oYC3Ivg==","X-MS-Exchange-Transport-CrossTenantHeadersStamped":"GVXPR04MB9928","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":36818,"web_url":"https://patchwork.libcamera.org/comment/36818/","msgid":"<zbu6w7z2goyhiphgiwhwfld4sqiqfn5skqoiusgi5zt6badf6e@73gge2theqmp>","date":"2025-11-14T15:12:40","subject":"Re: [PATCH v1 1/2] libamera: media_pipeline: Move entities list to\n\tpublic","submitter":{"id":143,"url":"https://patchwork.libcamera.org/api/people/143/","name":"Jacopo Mondi","email":"jacopo.mondi@ideasonboard.com"},"content":"Hi\n\nOn Thu, Nov 13, 2025 at 11:04:13AM +0100, Antoine Bouyer wrote:\n> From: Andrei Gansari <andrei.gansari@nxp.com>\n>\n> Exposes internal MediaEntity::Entity list to help extracting more\n> information regarding linked entities.\n>\n> For example, when the pad index of the last device in the list need to\n> be retrieved from the media pipeline user.\n>\n> Exposes as const to prevent any corruption from user. Then it is still\n> protected so as when the list was private.\n>\n> Signed-off-by: Andrei Gansari <andrei.gansari@nxp.com>\n> Signed-off-by: Antoine Bouyer <antoine.bouyer@nxp.com>\n> ---\n>  include/libcamera/internal/media_pipeline.h | 4 +++-\n>  1 file changed, 3 insertions(+), 1 deletion(-)\n>\n> diff --git a/include/libcamera/internal/media_pipeline.h b/include/libcamera/internal/media_pipeline.h\n> index a7a4b8c559cd..5f37d4bd57a7 100644\n> --- a/include/libcamera/internal/media_pipeline.h\n> +++ b/include/libcamera/internal/media_pipeline.h\n> @@ -27,7 +27,6 @@ public:\n>  \tint initLinks();\n>  \tint configure(CameraSensor *sensor, V4L2SubdeviceFormat *);\n>\n> -private:\n>  \tstruct Entity {\n>  \t\t/* The media entity, always valid. */\n>  \t\tMediaEntity *entity;\n> @@ -53,6 +52,9 @@ private:\n>  \t\tMediaLink *sourceLink;\n>  \t};\n\nDocumentation apart, I would move the struct type definition to the\ntop of the public: section\n\n>\n> +\tconst std::list<Entity> &entities() { return entities_; }\n\n\tconst std::list<Entity> &entities() const { return entities_; }\n\nMaybe the function should be marked as const-callable as well ?\n\nThanks\n  j\n\n> +\n> +private:\n>  \tstd::list<Entity> entities_;\n>  };\n>\n> --\n> 2.34.1\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 83C7EC3241\n\tfor <parsemail@patchwork.libcamera.org>;\n\tFri, 14 Nov 2025 15:12:46 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id C3835609D8;\n\tFri, 14 Nov 2025 16:12:45 +0100 (CET)","from perceval.ideasonboard.com (perceval.ideasonboard.com\n\t[213.167.242.64])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 7DE0C606E6\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tFri, 14 Nov 2025 16:12:43 +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 6F2B92D8;\n\tFri, 14 Nov 2025 16:10:42 +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=\"aP0voLRd\"; dkim-atps=neutral","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1763133042;\n\tbh=+WlKtBd8ZZL0vjY8T4o5iNFMrKYywJEcyHdWY1CqIhU=;\n\th=Date:From:To:Cc:Subject:References:In-Reply-To:From;\n\tb=aP0voLRd38CjDBZw/yJhpg4BDr9EFkOWfHO/VsitxEnyMAx160oLImn7nSV2+7eI6\n\tg26aOUKkUazXocFQpmCF8ad2x4gUyoadm1wiMi3f1VhY43n5ZarO1C4sv5QVZxD2l9\n\tjMN+EjF1TVqVWxI+gnQ8TLq4tPkbTO8ZTpY6kQ4A=","Date":"Fri, 14 Nov 2025 16:12:40 +0100","From":"Jacopo Mondi <jacopo.mondi@ideasonboard.com>","To":"Antoine Bouyer <antoine.bouyer@nxp.com>","Cc":"libcamera-devel@lists.libcamera.org, julien.vuillaumier@nxp.com, \n\tAndrei Gansari <andrei.gansari@nxp.com>","Subject":"Re: [PATCH v1 1/2] libamera: media_pipeline: Move entities list to\n\tpublic","Message-ID":"<zbu6w7z2goyhiphgiwhwfld4sqiqfn5skqoiusgi5zt6badf6e@73gge2theqmp>","References":"<20251113100414.535550-1-antoine.bouyer@nxp.com>\n\t<20251113100414.535550-2-antoine.bouyer@nxp.com>","MIME-Version":"1.0","Content-Type":"text/plain; charset=utf-8","Content-Disposition":"inline","In-Reply-To":"<20251113100414.535550-2-antoine.bouyer@nxp.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>"}}]