From patchwork Thu Nov 13 10:04:13 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Antoine Bouyer X-Patchwork-Id: 25010 Return-Path: X-Original-To: parsemail@patchwork.libcamera.org Delivered-To: parsemail@patchwork.libcamera.org Received: from lancelot.ideasonboard.com (lancelot.ideasonboard.com [92.243.16.209]) by patchwork.libcamera.org (Postfix) with ESMTPS id 57912C3263 for ; Thu, 13 Nov 2025 10:02:59 +0000 (UTC) Received: from lancelot.ideasonboard.com (localhost [IPv6:::1]) by lancelot.ideasonboard.com (Postfix) with ESMTP id A45E860AA4; Thu, 13 Nov 2025 11:02:55 +0100 (CET) Authentication-Results: lancelot.ideasonboard.com; dkim=pass (2048-bit key; unprotected) header.d=nxp.com header.i=@nxp.com header.b="QR0Far0q"; dkim-atps=neutral Received: from GVXPR05CU001.outbound.protection.outlook.com (mail-swedencentralazlp170130007.outbound.protection.outlook.com [IPv6:2a01:111:f403:c202::7]) by lancelot.ideasonboard.com (Postfix) with ESMTPS id 2E7D0609D8 for ; Thu, 13 Nov 2025 11:02:53 +0100 (CET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=yEsemMXExd77XwBtUoNFlm+2+uPrCuyPDpbqmmFoiEVd10qxVbR+YDiqXrsH/ZmRoUmrcgDyhWuYGlIDpKynd5a615y/58PXFaj+ff6+Ic5Gm7u0QyJJlGeE3rcsI+Ir5IL+TnRCNqPr8mUu0ZuT19PaMPImtHo6v6jLkdsZ8iiAlOpeZM9mI/66uBxXlIu71C55YlTBb663ZGE2uquXFKNTNCaZW4BNXgN2eH9THpGFfybNbl6nhvmLSidq1Z7xCV8r4ev+85Ny1+15saAoHZgJjPJnhSXhhWXm9sAs4zRW4yIkCh7nZLIzyJydDlbWzLEk7rZejMGJagM/dRiN9w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=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; bh=t2KDiwRAVBsG9atwHQ/e2bt2NRCUlPjWoEgb0X5GDto=; b=fYNWgwZmYXoQ524WbJIKCuCp4/d6tD5R1hpp7uQU613h6hMQfW4u4PB3si8pT7l/RFNjLOl+03zzLGyyZN1VxJ3etUNSNqY+sLv9zLVNrNEL0JJR6hhmKO6SPNbVFNARxhTBY+K5K0338Int+v4GvQyafThxbinmh+bM3f0pfuARzsdvIQ74xxEu8dpuejMvy053mLPX4EAPX4t0KfH+PypiBTgNR9q2k+Fia2Vz75jbQannXWKLl/54Q28qHhTvY982O1h+5TVgSO9p0QcpqeBR5UVTMqJx9Dd/eyaMwVqj9TBV0nXdyr5Dy0f1f7CfjM5yKqD3R4fRAi9lT8gMJg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nxp.com; dmarc=pass action=none header.from=nxp.com; dkim=pass header.d=nxp.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=t2KDiwRAVBsG9atwHQ/e2bt2NRCUlPjWoEgb0X5GDto=; b=QR0Far0qDfe6SJCi0poostT+BaGNrQixg+MjcsSQt41dTyuRVoNMOy0eg0pyviTAYlefDUF5hIVR5RNjBsnmWESV65/d5Qo/PcL8TsWyJknDFuOeanpCbUGis5x/6SvpVZEtqNEpLmmxQHYM5VJHdn18jHL5vLnBm9EmLPdlAt4/AFOxzOZVxOHIWrbhlqn1oTc3ww/HvTGXZe2U89GkN1s5TaM2JNp6bRVgYxPGdt7XvQEIxnub25ZpKcXTlGz4NFNeUMwdjAA6P9zv27s0JNrrER2K10bawubLhNpv9n3xTtWLc2fMe8/cW9w9kpRMQO3lkqUpr9FvgRstEHGd/Q== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nxp.com; Received: from GVXPR04MB9831.eurprd04.prod.outlook.com (2603:10a6:150:11c::8) by AM8PR04MB7235.eurprd04.prod.outlook.com (2603:10a6:20b:1d1::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9320.17; Thu, 13 Nov 2025 10:02:51 +0000 Received: from GVXPR04MB9831.eurprd04.prod.outlook.com ([fe80::4634:3d9c:c4a:641a]) by GVXPR04MB9831.eurprd04.prod.outlook.com ([fe80::4634:3d9c:c4a:641a%6]) with mapi id 15.20.9320.013; Thu, 13 Nov 2025 10:02:51 +0000 From: Antoine Bouyer To: libcamera-devel@lists.libcamera.org Cc: julien.vuillaumier@nxp.com, Andrei Gansari , Antoine Bouyer Subject: [PATCH v1 1/2] libamera: media_pipeline: Move entities list to public Date: Thu, 13 Nov 2025 11:04:13 +0100 Message-Id: <20251113100414.535550-2-antoine.bouyer@nxp.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20251113100414.535550-1-antoine.bouyer@nxp.com> References: <20251113100414.535550-1-antoine.bouyer@nxp.com> X-ClientProxiedBy: AM0PR02CA0198.eurprd02.prod.outlook.com (2603:10a6:20b:28e::35) To GVXPR04MB9831.eurprd04.prod.outlook.com (2603:10a6:150:11c::8) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: GVXPR04MB9831:EE_|AM8PR04MB7235:EE_ X-MS-Office365-Filtering-Correlation-Id: 7aa3ba4a-d875-499a-14b8-08de229bcdeb X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230040|366016|376014|19092799006|1800799024|52116014|38350700014; X-Microsoft-Antispam-Message-Info: ODnW2f2QiDWOCCn9quSp0OS4xZkwq+HDElPD5K+8iKZpLtkBFR8Xy6JxYPXMVgUJShtzl7PlyAmEGsqKxWtFuxT+e7Dp8HdIHjzckhHO5xy1Gb5JKNWVnkZrdYQV9WiPqKP7zgDPktOBORNmQLum64GcD+l4K79pj1msJOA8MkkgxqoTWPAEwpmctl2SqG1wAc1+ChHo2mBz04EwDCycb3TuyBnvQOHbmXYs+thdmTMzaEhcTsQKqs3thdLL/CbuPeDmP+OBt3SryTPiJW1kFYGfsQzqe+IbXcuYYCTG2/1JM0b3w0yniF/m3DGP8lEkxI+x+g0XiJqut8+0zzZifI7oDvH/7kg41F4BY4+bKZDXYsD0cwCEBxI1box0wBPv3pe7PRTWpzetrPvvnlaYE89w6APkUqfn6SG3J6OrXns0gf+mmrFHQddZZ++tJRCSzS0xptWsghle/Oq8hRtTCBCeL7DB/9RoF9yc+M+kv9lJ7UA4WFSQFbuSBWehjKa/bSL/OwDVjWIyKBDhHX4baHZgyPVFZU+pxsyVhPm/1W5DSLQMqd+x/NCOsKzszyYw9wL97SMHbjKrnDoWzc0h/cdQooAtz1LntCDSAdWcM8osU96ndH0YytOA1ocuPAKd69aPnkAbddvk17Jo3f4KcYvoUj5MQYYuWq0zmUpCV3BS1zskUuktGU3pstOmNAop30NCcrAHLrlsTF16ut2H+9x9/vPubDYuISiwEzpo2x7jhTN+wU/GP67mTHh8TfJHcHCYq8sPKq1x6f/LKJ8xQ/8Hn8IlLTGdwCrApm4c/P38fWuBkyFqpd7wJkY7MfN86QW8xPn0R5qrRtqin2wFw1joRLnxIAJydHhHr4AqwyC82MW/ytnyZrecafX2B3dv81C9v0DMIffrRXvO62Vqc26CVH8nCX2vhC+rua7rp5m8sMHur6vQJkRsSW7LeVOW902xB741uSXu0l4i6MOCbzDxk1mFMEpYAkJQnAMTbrXgrFeUQj+pcndM3GwhqBMFO636X0SFXKd320UQ92hyIe5wFzgMKKlwOq9swmpys5BolPGdrZR8eKWZZ3ySSeMOsoXQVk3CtbGY5GtjqODEbhvXvLShsqxUZ3u2k7vH5J3X4R2gb7TzWy6wgoQJ4/A2ZP4cGTuy7mlSUiJCq6u5LZS/SKEycUQXzTssdgS3JLGG8UqtRlC1dX2gymefqYY8b6UKOBz8J5fyliA95AgoJmYBDkVHG6XvpTUH1W/j5IdPUNccMwZp4RHxEL4FEJ9k1GIRAgaNPJanYhcNHM2uMeNHFj4BDA2+PVAL/rGVOT+2WehWYMrtnP3YQDnHGLcN88x4V0N4hN9ZRy2PrITVN4O/g9hBJGBmXoRADBZCDM41QtcF7sitD1SMVFwN+zg1cw5KNzOs9rdX931eCYuJq5wFaMc9asyPnvw7vHCG6UkIGSFeJMZ1CUPIoIgQkchN1Z6ahJvO2bIepDBeNrN6BoVnh9T0xFtfBYgqUw3F2VtsJl4ZAMuhy/El8ghJ/58b X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:GVXPR04MB9831.eurprd04.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(366016)(376014)(19092799006)(1800799024)(52116014)(38350700014); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: 4tZ3+tDtIyB2tcYfZyf8zl0IaCFSyvAMzge5pgl2HieVNvmft+QKTaUIohUg3vH3z8umnraSMsKbmNahus5041uapx2WLLn3kWNQL4UnzAHlrZX5j0ftpZk0ELYk+rpETetkZJAd42YP+XUmhbzD4XuDeQj/bLjyhrxzBv0b5CXUuMvRYGWmOs2qwVgBl83pq+FrIuUdL0s05ADRZjV2w/AZCtZ7twzHS/NtYGM7+stHtVI2bnnbCxoaLoArFR2OE1+JrEfSfEH7eadOdDiIqJiJvIEkO34HrOAzGCDvrIKSw7WTAFxKFbbb6g0CR+5dbinl4mQMA6SDmvY+bLJZTYjkVWKM/MzJ/lf8MQuteJbf4Gb/LROUPbiJ/ai+3gs9thBfE1DYY5ES1Sh52Te+qR1A+5W5ouQEBpn2nz0HzB70rF8jtW0ctLAX4dNUUzNFQ9pNbkAhuRLsf7Iu4Xx3Tprs2DKVfshPzAh7Cc+8LtN+dhD26oYEd7noMoTupIgxocmIwwy3aFrJQKV+PqiEvca+rfGcDitsrM4+4S3cR4La6tQliq0YtYufoBD8n22xCsG+eErd4bTQVx3WKnhJQdY0PRdoBOLjyPt6/AcpT5OOKHtfB5iwvElb4PTckB1nZpnT3D4l05yYP2DDC1sDl+tNsPB4PzO9g4VFIQA808205c2duQx6dW9lokaKQPbF7advNy4sQPMxg46Tq8ok+CDoHw8rwzBdZoeexA0NeDThSrdGfwbXm2QSZC49EfLzVKCYUN0zKEEXavm8L8bnEUpD3mhCEpZuk3Xbql9iWtt9GAvmCW/8QDTVzWOLeZQ2+vd4d56Q31+aEdOOST3jc7XKA63YFa3WDnNsNtATqMtyWz3KAIK7bg5LLIaQRWrnX1P1PgocfRQ/a1MlHAxQP7pCjdYbqEa53sHM6udIQlY+YGkmBKPno8iEe6e1okhrGIxuPWxTMhvPzE9f6TyBF9nIMf85QlsevKQmlHsNBMUAe9z31cJDAmTr3JHuuYCgy0kYlUyC0sTjzrEZfPRW9krPOr+HcvyISy3s54Ilim3M5JA5r6RFLCguLXgL2OUPODbijyoykT0OCuP6L2NIsZbwcTsGFfyDaM5qDVl1GI78VZ73JmlRmr3rj7CrN2+VK52rsH8ETvLbGhWDt8MG7cyO60h3mlsA5vy5nD5Rgfw9/vzqujFk39aKjb8pVorQtUzIowwXfWM2ZxF7FOddQlXhqbJD5o+y88LHmfVIuJyEr4gSbjakAsy1woSsFhIz1kjDdVHVDe3JTHAtoAhfv7B1QHz1xixczNQd2ZDOZjyNTJRx67LLvxHcMP5zyNSpypPu2jx5ROCaNdnNH2fn+FBbHRXQCGcaJGg7YDc43N4NzkEXrE3iPcrE3xYERn7DqqMVyDo+mlGKHO3kRod77RqbueREY1u+WxhIh9UlLEgUs/3AFXY2gMPrfw97vaJymT3JxiibTWhzIRwweYRuiv2ftCTp34/s4HXmSmtiGsMMGwKFefOSUKc2lvF/eRZ+JBbpCRwOOnCQ3adfVvVd+lSuDBsjyIV+23PljuFXA+uB22BeoAU2XEpVc9XyuAUy/3z3KpGv/JQZ3JK8UpZWFw== X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: 7aa3ba4a-d875-499a-14b8-08de229bcdeb X-MS-Exchange-CrossTenant-AuthSource: GVXPR04MB9831.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Nov 2025 10:02:50.5142 (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: b3JIugSsGfWHzBnbR0ng+iQLnoaSkJh0catjaKG1DaNH7Ih3vHe5atOI6eISeM/ShWohpFaqhxspnAolEy3CEA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8PR04MB7235 X-BeenThere: libcamera-devel@lists.libcamera.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: libcamera-devel-bounces@lists.libcamera.org Sender: "libcamera-devel" From: Andrei Gansari Exposes internal MediaEntity::Entity list to help extracting more information regarding linked entities. For example, when the pad index of the last device in the list need to be retrieved from the media pipeline user. Exposes as const to prevent any corruption from user. Then it is still protected so as when the list was private. Signed-off-by: Andrei Gansari Signed-off-by: Antoine Bouyer --- include/libcamera/internal/media_pipeline.h | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/include/libcamera/internal/media_pipeline.h b/include/libcamera/internal/media_pipeline.h index a7a4b8c559cd..5f37d4bd57a7 100644 --- a/include/libcamera/internal/media_pipeline.h +++ b/include/libcamera/internal/media_pipeline.h @@ -27,7 +27,6 @@ public: int initLinks(); int configure(CameraSensor *sensor, V4L2SubdeviceFormat *); -private: struct Entity { /* The media entity, always valid. */ MediaEntity *entity; @@ -53,6 +52,9 @@ private: MediaLink *sourceLink; }; + const std::list &entities() { return entities_; } + +private: std::list entities_; };