[libcamera-devel] [PATCH v2 0/3] libcamera: Make Framebuffer class Extensible
Laurent Pinchart
laurent.pinchart at ideasonboard.com
Sun Jul 11 19:03:56 CEST 2021
Hello,
This small patch series makes the FrameBuffer class inherit from
Extensible, for two reasons:
- FrameBuffer being such a cornerstone of the libcamera API, it will
most likely need to be extended after stabilizing the public API.
Making the class Extensible prepares for this.
- There's a todo item to hide the FrameBuffer::setRequest() function
from the public API, as it's meant to be called internally only. Patch
3/3 showcases how internal functions can be hidden from the public API
by moving them to the Private data class.
This v2 incorporates parts of the comments from reviews of v1. There are
still some ongoing discussions, which may benefit from patch 2/3 (new in
v2) that shows how the _d() function can be used directly instead of
using the LIBCAMERA_D_PTR macro.
Laurent Pinchart (3):
libcamera: base: class: Expose Extensible private data to other
classes
libcamera: Drop the LIBCAMERA_D_PTR macro in favour of the _d()
function
libcamera: framebuffer: Make FrameBuffer class Extensible
include/libcamera/base/class.h | 16 ++++++---
include/libcamera/framebuffer.h | 8 ++---
include/libcamera/internal/framebuffer.h | 13 +++++++
src/android/camera_buffer.h | 15 +++-----
src/android/camera_hal_config.cpp | 3 +-
src/libcamera/base/class.cpp | 17 +++------
src/libcamera/camera.cpp | 44 +++++++++---------------
src/libcamera/camera_manager.cpp | 16 ++++-----
src/libcamera/framebuffer.cpp | 34 ++++++++++--------
src/libcamera/pipeline/ipu3/cio2.cpp | 3 +-
src/libcamera/pipeline/ipu3/frames.cpp | 5 +--
src/libcamera/request.cpp | 7 ++--
12 files changed, 91 insertions(+), 90 deletions(-)
--
Regards,
Laurent Pinchart
More information about the libcamera-devel
mailing list