[libcamera-devel] [PATCH 08/16] libcamera/base: Move class helpers to the base library

paul.elder at ideasonboard.com paul.elder at ideasonboard.com
Fri Jun 25 06:18:04 CEST 2021


Hi Kieran,

On Fri, Jun 25, 2021 at 02:35:31AM +0100, Kieran Bingham wrote:
> Move the class support infrastructure to the base library.
> 
> Signed-off-by: Kieran Bingham <kieran.bingham at ideasonboard.com>

Reviewed-by: Paul Elder <paul.elder at ideasonboard.com>

> ---
>  include/libcamera/{ => base}/class.h            | 0
>  include/libcamera/base/meson.build              | 1 +
>  include/libcamera/buffer.h                      | 3 ++-
>  include/libcamera/camera.h                      | 3 ++-
>  include/libcamera/camera_manager.h              | 3 ++-
>  include/libcamera/controls.h                    | 3 ++-
>  include/libcamera/framebuffer_allocator.h       | 2 +-
>  include/libcamera/internal/buffer.h             | 3 ++-
>  include/libcamera/internal/byte_stream_buffer.h | 3 ++-
>  include/libcamera/internal/camera_sensor.h      | 3 ++-
>  include/libcamera/internal/file.h               | 3 ++-
>  include/libcamera/internal/log.h                | 3 +--
>  include/libcamera/internal/media_object.h       | 2 +-
>  include/libcamera/internal/pipeline_handler.h   | 3 ++-
>  include/libcamera/internal/v4l2_subdevice.h     | 3 ++-
>  include/libcamera/internal/v4l2_videodevice.h   | 3 ++-
>  include/libcamera/meson.build                   | 1 -
>  include/libcamera/request.h                     | 3 ++-
>  src/android/camera_buffer.h                     | 3 ++-
>  src/android/camera_capabilities.h               | 3 ++-
>  src/android/camera_hal_config.h                 | 2 +-
>  src/libcamera/{ => base}/class.cpp              | 2 +-
>  src/libcamera/base/meson.build                  | 1 +
>  src/libcamera/meson.build                       | 1 -
>  24 files changed, 35 insertions(+), 22 deletions(-)
>  rename include/libcamera/{ => base}/class.h (100%)
>  rename src/libcamera/{ => base}/class.cpp (99%)
> 
> diff --git a/include/libcamera/class.h b/include/libcamera/base/class.h
> similarity index 100%
> rename from include/libcamera/class.h
> rename to include/libcamera/base/class.h
> diff --git a/include/libcamera/base/meson.build b/include/libcamera/base/meson.build
> index 9f0ba6b0e10c..2db756c504c9 100644
> --- a/include/libcamera/base/meson.build
> +++ b/include/libcamera/base/meson.build
> @@ -3,6 +3,7 @@
>  libcamera_base_include_dir = libcamera_include_dir / 'base'
>  
>  libcamera_base_headers = files([
> +    'class.h',
>      'utils.h',
>  ])
>  
> diff --git a/include/libcamera/buffer.h b/include/libcamera/buffer.h
> index e0af00900409..323d1cba41a9 100644
> --- a/include/libcamera/buffer.h
> +++ b/include/libcamera/buffer.h
> @@ -10,7 +10,8 @@
>  #include <stdint.h>
>  #include <vector>
>  
> -#include <libcamera/class.h>
> +#include <libcamera/base/class.h>
> +
>  #include <libcamera/file_descriptor.h>
>  
>  namespace libcamera {
> diff --git a/include/libcamera/camera.h b/include/libcamera/camera.h
> index d71641805c0a..ea0914009c2b 100644
> --- a/include/libcamera/camera.h
> +++ b/include/libcamera/camera.h
> @@ -12,7 +12,8 @@
>  #include <stdint.h>
>  #include <string>
>  
> -#include <libcamera/class.h>
> +#include <libcamera/base/class.h>
> +
>  #include <libcamera/controls.h>
>  #include <libcamera/object.h>
>  #include <libcamera/request.h>
> diff --git a/include/libcamera/camera_manager.h b/include/libcamera/camera_manager.h
> index c2f0b786da8e..5deede035115 100644
> --- a/include/libcamera/camera_manager.h
> +++ b/include/libcamera/camera_manager.h
> @@ -12,7 +12,8 @@
>  #include <sys/types.h>
>  #include <vector>
>  
> -#include <libcamera/class.h>
> +#include <libcamera/base/class.h>
> +
>  #include <libcamera/object.h>
>  #include <libcamera/signal.h>
>  
> diff --git a/include/libcamera/controls.h b/include/libcamera/controls.h
> index 1c9b37e617bc..f62b6cf055d6 100644
> --- a/include/libcamera/controls.h
> +++ b/include/libcamera/controls.h
> @@ -14,7 +14,8 @@
>  #include <unordered_map>
>  #include <vector>
>  
> -#include <libcamera/class.h>
> +#include <libcamera/base/class.h>
> +
>  #include <libcamera/geometry.h>
>  #include <libcamera/span.h>
>  
> diff --git a/include/libcamera/framebuffer_allocator.h b/include/libcamera/framebuffer_allocator.h
> index 0c85631a1da2..cbc9ce101889 100644
> --- a/include/libcamera/framebuffer_allocator.h
> +++ b/include/libcamera/framebuffer_allocator.h
> @@ -11,7 +11,7 @@
>  #include <memory>
>  #include <vector>
>  
> -#include <libcamera/class.h>
> +#include <libcamera/base/class.h>
>  
>  namespace libcamera {
>  
> diff --git a/include/libcamera/internal/buffer.h b/include/libcamera/internal/buffer.h
> index 9da1fbd12c27..91dd24969385 100644
> --- a/include/libcamera/internal/buffer.h
> +++ b/include/libcamera/internal/buffer.h
> @@ -10,7 +10,8 @@
>  #include <sys/mman.h>
>  #include <vector>
>  
> -#include <libcamera/class.h>
> +#include <libcamera/base/class.h>
> +
>  #include <libcamera/buffer.h>
>  #include <libcamera/span.h>
>  
> diff --git a/include/libcamera/internal/byte_stream_buffer.h b/include/libcamera/internal/byte_stream_buffer.h
> index 866cb9b0b2a6..7eefb1a71f07 100644
> --- a/include/libcamera/internal/byte_stream_buffer.h
> +++ b/include/libcamera/internal/byte_stream_buffer.h
> @@ -11,7 +11,8 @@
>  #include <stdint.h>
>  #include <type_traits>
>  
> -#include <libcamera/class.h>
> +#include <libcamera/base/class.h>
> +
>  #include <libcamera/span.h>
>  
>  namespace libcamera {
> diff --git a/include/libcamera/internal/camera_sensor.h b/include/libcamera/internal/camera_sensor.h
> index e133ebf45bf7..7bc540619721 100644
> --- a/include/libcamera/internal/camera_sensor.h
> +++ b/include/libcamera/internal/camera_sensor.h
> @@ -11,7 +11,8 @@
>  #include <string>
>  #include <vector>
>  
> -#include <libcamera/class.h>
> +#include <libcamera/base/class.h>
> +
>  #include <libcamera/controls.h>
>  #include <libcamera/geometry.h>
>  #include <libcamera/ipa/core_ipa_interface.h>
> diff --git a/include/libcamera/internal/file.h b/include/libcamera/internal/file.h
> index f0b313a5faae..44621ceb4c19 100644
> --- a/include/libcamera/internal/file.h
> +++ b/include/libcamera/internal/file.h
> @@ -11,7 +11,8 @@
>  #include <string>
>  #include <sys/types.h>
>  
> -#include <libcamera/class.h>
> +#include <libcamera/base/class.h>
> +
>  #include <libcamera/span.h>
>  
>  namespace libcamera {
> diff --git a/include/libcamera/internal/log.h b/include/libcamera/internal/log.h
> index 9c2beab6a33a..82e55a623e04 100644
> --- a/include/libcamera/internal/log.h
> +++ b/include/libcamera/internal/log.h
> @@ -10,8 +10,7 @@
>  #include <chrono>
>  #include <sstream>
>  
> -#include <libcamera/class.h>
> -
> +#include <libcamera/base/class.h>
>  #include <libcamera/base/utils.h>
>  
>  namespace libcamera {
> diff --git a/include/libcamera/internal/media_object.h b/include/libcamera/internal/media_object.h
> index 1c82c27928a8..2f5d33e1903e 100644
> --- a/include/libcamera/internal/media_object.h
> +++ b/include/libcamera/internal/media_object.h
> @@ -12,7 +12,7 @@
>  
>  #include <linux/media.h>
>  
> -#include <libcamera/class.h>
> +#include <libcamera/base/class.h>
>  
>  namespace libcamera {
>  
> diff --git a/include/libcamera/internal/pipeline_handler.h b/include/libcamera/internal/pipeline_handler.h
> index 31dadf285a58..8beb6b76dd3f 100644
> --- a/include/libcamera/internal/pipeline_handler.h
> +++ b/include/libcamera/internal/pipeline_handler.h
> @@ -15,7 +15,8 @@
>  #include <sys/types.h>
>  #include <vector>
>  
> -#include <libcamera/class.h>
> +#include <libcamera/base/class.h>
> +
>  #include <libcamera/controls.h>
>  #include <libcamera/object.h>
>  #include <libcamera/stream.h>
> diff --git a/include/libcamera/internal/v4l2_subdevice.h b/include/libcamera/internal/v4l2_subdevice.h
> index d2b9ca55439e..d07dd6b444d0 100644
> --- a/include/libcamera/internal/v4l2_subdevice.h
> +++ b/include/libcamera/internal/v4l2_subdevice.h
> @@ -11,7 +11,8 @@
>  #include <string>
>  #include <vector>
>  
> -#include <libcamera/class.h>
> +#include <libcamera/base/class.h>
> +
>  #include <libcamera/geometry.h>
>  
>  #include "libcamera/internal/formats.h"
> diff --git a/include/libcamera/internal/v4l2_videodevice.h b/include/libcamera/internal/v4l2_videodevice.h
> index 7938343bba8d..227d015e8937 100644
> --- a/include/libcamera/internal/v4l2_videodevice.h
> +++ b/include/libcamera/internal/v4l2_videodevice.h
> @@ -16,8 +16,9 @@
>  
>  #include <linux/videodev2.h>
>  
> +#include <libcamera/base/class.h>
> +
>  #include <libcamera/buffer.h>
> -#include <libcamera/class.h>
>  #include <libcamera/geometry.h>
>  #include <libcamera/pixel_format.h>
>  #include <libcamera/signal.h>
> diff --git a/include/libcamera/meson.build b/include/libcamera/meson.build
> index 1fa1bf4a4e78..7cba3de6ca96 100644
> --- a/include/libcamera/meson.build
> +++ b/include/libcamera/meson.build
> @@ -5,7 +5,6 @@ libcamera_public_headers = files([
>      'buffer.h',
>      'camera.h',
>      'camera_manager.h',
> -    'class.h',
>      'compiler.h',
>      'controls.h',
>      'file_descriptor.h',
> diff --git a/include/libcamera/request.h b/include/libcamera/request.h
> index 5596901ddd8e..00c646fea7f2 100644
> --- a/include/libcamera/request.h
> +++ b/include/libcamera/request.h
> @@ -13,7 +13,8 @@
>  #include <string>
>  #include <unordered_set>
>  
> -#include <libcamera/class.h>
> +#include <libcamera/base/class.h>
> +
>  #include <libcamera/controls.h>
>  #include <libcamera/signal.h>
>  
> diff --git a/src/android/camera_buffer.h b/src/android/camera_buffer.h
> index c88124b2b3f3..e850c4e36668 100644
> --- a/src/android/camera_buffer.h
> +++ b/src/android/camera_buffer.h
> @@ -9,7 +9,8 @@
>  
>  #include <hardware/camera3.h>
>  
> -#include <libcamera/class.h>
> +#include <libcamera/base/class.h>
> +
>  #include <libcamera/span.h>
>  
>  class CameraBuffer final : public libcamera::Extensible
> diff --git a/src/android/camera_capabilities.h b/src/android/camera_capabilities.h
> index f511607bbd90..4f5be82595d6 100644
> --- a/src/android/camera_capabilities.h
> +++ b/src/android/camera_capabilities.h
> @@ -11,8 +11,9 @@
>  #include <memory>
>  #include <vector>
>  
> +#include <libcamera/base/class.h>
> +
>  #include <libcamera/camera.h>
> -#include <libcamera/class.h>
>  #include <libcamera/formats.h>
>  #include <libcamera/geometry.h>
>  
> diff --git a/src/android/camera_hal_config.h b/src/android/camera_hal_config.h
> index 97dc69c1def5..a79d5d6c42dc 100644
> --- a/src/android/camera_hal_config.h
> +++ b/src/android/camera_hal_config.h
> @@ -10,7 +10,7 @@
>  #include <map>
>  #include <string>
>  
> -#include <libcamera/class.h>
> +#include <libcamera/base/class.h>
>  
>  struct CameraConfigData {
>  	int facing = -1;
> diff --git a/src/libcamera/class.cpp b/src/libcamera/base/class.cpp
> similarity index 99%
> rename from src/libcamera/class.cpp
> rename to src/libcamera/base/class.cpp
> index 28c35633d7db..165beafc243d 100644
> --- a/src/libcamera/class.cpp
> +++ b/src/libcamera/base/class.cpp
> @@ -5,7 +5,7 @@
>   * class.cpp - Utilities and helpers for classes
>   */
>  
> -#include <libcamera/class.h>
> +#include <libcamera/base/class.h>
>  
>  /**
>   * \file class.h
> diff --git a/src/libcamera/base/meson.build b/src/libcamera/base/meson.build
> index 6d9ec37414f8..302a288685d3 100644
> --- a/src/libcamera/base/meson.build
> +++ b/src/libcamera/base/meson.build
> @@ -1,6 +1,7 @@
>  # SPDX-License-Identifier: CC0-1.0
>  
>  libcamera_base_sources = files([
> +    'class.cpp',
>      'utils.cpp',
>  ])
>  
> diff --git a/src/libcamera/meson.build b/src/libcamera/meson.build
> index ac401c25d498..a341004c0c19 100644
> --- a/src/libcamera/meson.build
> +++ b/src/libcamera/meson.build
> @@ -10,7 +10,6 @@ libcamera_sources = files([
>      'camera_manager.cpp',
>      'camera_sensor.cpp',
>      'camera_sensor_properties.cpp',
> -    'class.cpp',
>      'controls.cpp',
>      'control_serializer.cpp',
>      'control_validator.cpp',
> -- 
> 2.30.2
> 


More information about the libcamera-devel mailing list