From patchwork Mon Aug 5 14:36:40 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Laurent Pinchart X-Patchwork-Id: 20790 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 074D0C323E for ; Mon, 5 Aug 2024 14:37:35 +0000 (UTC) Received: from lancelot.ideasonboard.com (localhost [IPv6:::1]) by lancelot.ideasonboard.com (Postfix) with ESMTP id 7351C633B9; Mon, 5 Aug 2024 16:37:34 +0200 (CEST) Authentication-Results: lancelot.ideasonboard.com; dkim=pass (1024-bit key; unprotected) header.d=ideasonboard.com header.i=@ideasonboard.com header.b="hpO/DXGt"; dkim-atps=neutral Received: from perceval.ideasonboard.com (perceval.ideasonboard.com [213.167.242.64]) by lancelot.ideasonboard.com (Postfix) with ESMTPS id 1A3D663386 for ; Mon, 5 Aug 2024 16:37:23 +0200 (CEST) Received: from pendragon.ideasonboard.com (81-175-209-231.bb.dnainternet.fi [81.175.209.231]) by perceval.ideasonboard.com (Postfix) with ESMTPSA id 8BFD2A06 for ; Mon, 5 Aug 2024 16:36:31 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com; s=mail; t=1722868591; bh=DSjImp16/qyyNEhA0qPrSOR3ms+J6zDVNNC+1fBP95A=; h=From:To:Subject:Date:In-Reply-To:References:From; b=hpO/DXGtCagZEmWsYxZ+SmXc4hpyemRv63uwi6enJQuJLsfFx9KnBlqEzn36nTMnw PmZf3kxCDKIdosYo9tEf6Qo6RMjtXzFMhbcCVhsuyceYJEN2qA48EyY6Xyj5r0hXct wNRwViUKHb912weNpUZ4qTNkEDg08gh6OiBxHgzU= From: Laurent Pinchart To: libcamera-devel@lists.libcamera.org Subject: [PATCH v5 04/18] libcamera: Mark internal parts of public classes with \internal Date: Mon, 5 Aug 2024 17:36:40 +0300 Message-ID: <20240805143654.20870-5-laurent.pinchart@ideasonboard.com> X-Mailer: git-send-email 2.44.2 In-Reply-To: <20240805143654.20870-1-laurent.pinchart@ideasonboard.com> References: <20240805143654.20870-1-laurent.pinchart@ideasonboard.com> MIME-Version: 1.0 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" The libcamera public API exposes classes that have parts considered internal. They inherit the Extensible class, and their internal parts are split into a Private class. Those classes are defined in public API headers, and their Private counterparts are defined in internal headers sharing a common file name (in a different directory). Both headers are documented in the same source file. For instance, include/libcamera/camera.h contains the public API of the Camera class, and include/libcamera/internal/camera.h its internal counterpart. Both are documented in src/libcamera/camera.cpp. As the internal headers are not part of the public API, they need to be hidden from the future public API builds. To prepare for doing so, mark them with the \internal Doxygen directive. Hardcode the Doxygen INTERNAL_DOCS option to YES to include the internal API. This will be changed later for the public API documentation build. Signed-off-by: Laurent Pinchart Reviewed-by: Daniel Scally Reviewed-by: Kieran Bingham --- Documentation/Doxyfile.in | 1 + src/libcamera/camera.cpp | 1 + src/libcamera/camera_manager.cpp | 1 + src/libcamera/framebuffer.cpp | 5 ++++- src/libcamera/request.cpp | 1 + 5 files changed, 8 insertions(+), 1 deletion(-) diff --git a/Documentation/Doxyfile.in b/Documentation/Doxyfile.in index abafcf6c6c66..62e63968ce62 100644 --- a/Documentation/Doxyfile.in +++ b/Documentation/Doxyfile.in @@ -17,6 +17,7 @@ EXTENSION_MAPPING = h=C++ TOC_INCLUDE_HEADINGS = 0 +INTERNAL_DOCS = YES CASE_SENSE_NAMES = YES QUIET = YES diff --git a/src/libcamera/camera.cpp b/src/libcamera/camera.cpp index f89510ea0472..3c8f30d54401 100644 --- a/src/libcamera/camera.cpp +++ b/src/libcamera/camera.cpp @@ -118,6 +118,7 @@ */ /** + * \internal * \file libcamera/internal/camera.h * \brief Internal camera device handling */ diff --git a/src/libcamera/camera_manager.cpp b/src/libcamera/camera_manager.cpp index 95a9e3264526..5a21132a08c2 100644 --- a/src/libcamera/camera_manager.cpp +++ b/src/libcamera/camera_manager.cpp @@ -23,6 +23,7 @@ */ /** + * \internal * \file libcamera/internal/camera_manager.h * \brief Internal camera manager support */ diff --git a/src/libcamera/framebuffer.cpp b/src/libcamera/framebuffer.cpp index 63d679cb504d..f39db1223432 100644 --- a/src/libcamera/framebuffer.cpp +++ b/src/libcamera/framebuffer.cpp @@ -16,7 +16,10 @@ /** * \file libcamera/framebuffer.h * \brief Frame buffer handling - * + */ + +/** + * \internal * \file libcamera/internal/framebuffer.h * \brief Internal frame buffer handling support */ diff --git a/src/libcamera/request.cpp b/src/libcamera/request.cpp index fdf12c1e9088..24fa3a57312e 100644 --- a/src/libcamera/request.cpp +++ b/src/libcamera/request.cpp @@ -29,6 +29,7 @@ */ /** + * \internal * \file libcamera/internal/request.h * \brief Internal support for request handling */