From 697bcf5b1070bb9bbda63e371c6d4ce08fda3c3d Mon Sep 17 00:00:00 2001 From: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Date: Sun, 4 Aug 2024 22:06:53 +0300 Subject: libcamera: Mark internal parts of public classes with \internal 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 <laurent.pinchart@ideasonboard.com> Reviewed-by: Daniel Scally <dan.scally@ideasonboard.com> Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com> --- 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 abafcf6c..62e63968 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 f89510ea..3c8f30d5 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 95a9e326..5a21132a 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 63d679cb..f39db122 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 fdf12c1e..24fa3a57 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 */ -- cgit v1.2.1