[libcamera-devel] [PATCH v2 2/3] libcamera: Move IPA headers from include/ipa/ to include/libcamera/ipa/

Jacopo Mondi jacopo at jmondi.org
Fri May 15 18:51:12 CEST 2020


Hi Laurent,

On Fri, May 15, 2020 at 07:35:03PM +0300, Laurent Pinchart wrote:
> The IPA headers are installed into $prefix/include/libcamera/ipa/, but
> are located in the source tree in include/ipa/. This requires files
> within libcamera to include them with
>
>  #include <ipa/foo.h>
>
> while a third party IPA would need to use
>
>  #include <libcamera/ipa/foo.h>
>
> Not only is this inconsistent, it can create issues later if IPA headers
> need to include each other, as the first form of include directive
> wouldn't be valid once the headers are installed.
>
> Fix the problem by moving the IPA headers to include/libcamera/ipa/.
>
> Signed-off-by: Laurent Pinchart <laurent.pinchart at ideasonboard.com>

Acked-by: Jacopo Mondi <jacopo at jmondi.org>

Thanks
  j

> ---
>  Documentation/Doxyfile.in                             | 3 +--
>  include/libcamera/internal/ipa_context_wrapper.h      | 2 +-
>  include/libcamera/internal/ipa_manager.h              | 4 ++--
>  include/libcamera/internal/ipa_module.h               | 4 ++--
>  include/libcamera/internal/ipa_proxy.h                | 2 +-
>  include/{ => libcamera}/ipa/ipa_controls.h            | 0
>  include/{ => libcamera}/ipa/ipa_interface.h           | 0
>  include/{ => libcamera}/ipa/ipa_module_info.h         | 0
>  include/{ => libcamera}/ipa/ipa_vimc.h                | 0
>  include/{ => libcamera}/ipa/meson.build               | 0
>  include/{ => libcamera}/ipa/raspberrypi.h             | 0
>  include/{ => libcamera}/ipa/rkisp1.h                  | 0
>  include/libcamera/meson.build                         | 1 +
>  include/meson.build                                   | 1 -
>  src/ipa/libipa/ipa_interface_wrapper.cpp              | 2 +-
>  src/ipa/libipa/ipa_interface_wrapper.h                | 2 +-
>  src/ipa/raspberrypi/raspberrypi.cpp                   | 7 ++++---
>  src/ipa/rkisp1/rkisp1.cpp                             | 7 ++++---
>  src/ipa/vimc/vimc.cpp                                 | 6 +++---
>  src/libcamera/control_serializer.cpp                  | 2 +-
>  src/libcamera/ipa_controls.cpp                        | 2 +-
>  src/libcamera/ipa_interface.cpp                       | 2 +-
>  src/libcamera/pipeline/raspberrypi/raspberrypi.cpp    | 2 +-
>  src/libcamera/pipeline/rkisp1/rkisp1.cpp              | 2 +-
>  src/libcamera/pipeline/vimc/vimc.cpp                  | 4 ++--
>  src/libcamera/proxy/ipa_proxy_linux.cpp               | 4 ++--
>  src/libcamera/proxy/ipa_proxy_thread.cpp              | 4 ++--
>  src/libcamera/proxy/worker/ipa_proxy_linux_worker.cpp | 2 +-
>  test/ipa/ipa_interface_test.cpp                       | 3 +--
>  29 files changed, 34 insertions(+), 34 deletions(-)
>  rename include/{ => libcamera}/ipa/ipa_controls.h (100%)
>  rename include/{ => libcamera}/ipa/ipa_interface.h (100%)
>  rename include/{ => libcamera}/ipa/ipa_module_info.h (100%)
>  rename include/{ => libcamera}/ipa/ipa_vimc.h (100%)
>  rename include/{ => libcamera}/ipa/meson.build (100%)
>  rename include/{ => libcamera}/ipa/raspberrypi.h (100%)
>  rename include/{ => libcamera}/ipa/rkisp1.h (100%)
>
> diff --git a/Documentation/Doxyfile.in b/Documentation/Doxyfile.in
> index c3fe5f663f7c..5f4847523c53 100644
> --- a/Documentation/Doxyfile.in
> +++ b/Documentation/Doxyfile.in
> @@ -794,8 +794,7 @@ WARN_LOGFILE           =
>  # spaces. See also FILE_PATTERNS and EXTENSION_MAPPING
>  # Note: If this tag is empty the current directory is searched.
>
> -INPUT                  = "@TOP_SRCDIR@/include/ipa" \
> -			 "@TOP_SRCDIR@/include/libcamera" \
> +INPUT                  = "@TOP_SRCDIR@/include/libcamera" \
>  			 "@TOP_SRCDIR@/src/ipa/libipa" \
>  			 "@TOP_SRCDIR@/src/libcamera" \
>  			 "@TOP_BUILDDIR@/include/libcamera" \
> diff --git a/include/libcamera/internal/ipa_context_wrapper.h b/include/libcamera/internal/ipa_context_wrapper.h
> index a717d4067498..bd770e132c0c 100644
> --- a/include/libcamera/internal/ipa_context_wrapper.h
> +++ b/include/libcamera/internal/ipa_context_wrapper.h
> @@ -7,7 +7,7 @@
>  #ifndef __LIBCAMERA_IPA_CONTEXT_WRAPPER_H__
>  #define __LIBCAMERA_IPA_CONTEXT_WRAPPER_H__
>
> -#include <ipa/ipa_interface.h>
> +#include <libcamera/ipa/ipa_interface.h>
>
>  #include "libcamera/internal/control_serializer.h"
>
> diff --git a/include/libcamera/internal/ipa_manager.h b/include/libcamera/internal/ipa_manager.h
> index f07d91fc7bbf..2412d75746ac 100644
> --- a/include/libcamera/internal/ipa_manager.h
> +++ b/include/libcamera/internal/ipa_manager.h
> @@ -10,8 +10,8 @@
>  #include <stdint.h>
>  #include <vector>
>
> -#include <ipa/ipa_interface.h>
> -#include <ipa/ipa_module_info.h>
> +#include <libcamera/ipa/ipa_interface.h>
> +#include <libcamera/ipa/ipa_module_info.h>
>
>  #include "libcamera/internal/ipa_module.h"
>  #include "libcamera/internal/pipeline_handler.h"
> diff --git a/include/libcamera/internal/ipa_module.h b/include/libcamera/internal/ipa_module.h
> index 2f569db0b848..5b54cb31a48a 100644
> --- a/include/libcamera/internal/ipa_module.h
> +++ b/include/libcamera/internal/ipa_module.h
> @@ -11,8 +11,8 @@
>  #include <string>
>  #include <vector>
>
> -#include <ipa/ipa_interface.h>
> -#include <ipa/ipa_module_info.h>
> +#include <libcamera/ipa/ipa_interface.h>
> +#include <libcamera/ipa/ipa_module_info.h>
>
>  #include "libcamera/internal/log.h"
>  #include "libcamera/internal/pipeline_handler.h"
> diff --git a/include/libcamera/internal/ipa_proxy.h b/include/libcamera/internal/ipa_proxy.h
> index 1111065b36a7..e9a36608bd31 100644
> --- a/include/libcamera/internal/ipa_proxy.h
> +++ b/include/libcamera/internal/ipa_proxy.h
> @@ -11,7 +11,7 @@
>  #include <string>
>  #include <vector>
>
> -#include <ipa/ipa_interface.h>
> +#include <libcamera/ipa/ipa_interface.h>
>
>  namespace libcamera {
>
> diff --git a/include/ipa/ipa_controls.h b/include/libcamera/ipa/ipa_controls.h
> similarity index 100%
> rename from include/ipa/ipa_controls.h
> rename to include/libcamera/ipa/ipa_controls.h
> diff --git a/include/ipa/ipa_interface.h b/include/libcamera/ipa/ipa_interface.h
> similarity index 100%
> rename from include/ipa/ipa_interface.h
> rename to include/libcamera/ipa/ipa_interface.h
> diff --git a/include/ipa/ipa_module_info.h b/include/libcamera/ipa/ipa_module_info.h
> similarity index 100%
> rename from include/ipa/ipa_module_info.h
> rename to include/libcamera/ipa/ipa_module_info.h
> diff --git a/include/ipa/ipa_vimc.h b/include/libcamera/ipa/ipa_vimc.h
> similarity index 100%
> rename from include/ipa/ipa_vimc.h
> rename to include/libcamera/ipa/ipa_vimc.h
> diff --git a/include/ipa/meson.build b/include/libcamera/ipa/meson.build
> similarity index 100%
> rename from include/ipa/meson.build
> rename to include/libcamera/ipa/meson.build
> diff --git a/include/ipa/raspberrypi.h b/include/libcamera/ipa/raspberrypi.h
> similarity index 100%
> rename from include/ipa/raspberrypi.h
> rename to include/libcamera/ipa/raspberrypi.h
> diff --git a/include/ipa/rkisp1.h b/include/libcamera/ipa/rkisp1.h
> similarity index 100%
> rename from include/ipa/rkisp1.h
> rename to include/libcamera/ipa/rkisp1.h
> diff --git a/include/libcamera/meson.build b/include/libcamera/meson.build
> index f9c8e64bd50c..32b8d14211a4 100644
> --- a/include/libcamera/meson.build
> +++ b/include/libcamera/meson.build
> @@ -24,6 +24,7 @@ libcamera_api = files([
>  include_dir = join_paths(libcamera_include_dir, 'libcamera')
>
>  subdir('internal')
> +subdir('ipa')
>
>  install_headers(libcamera_api,
>                  subdir : include_dir)
> diff --git a/include/meson.build b/include/meson.build
> index 4f41c9ceeb4c..2ac9a3a049f2 100644
> --- a/include/meson.build
> +++ b/include/meson.build
> @@ -3,5 +3,4 @@
>  libcamera_include_dir = 'libcamera'
>
>  subdir('android')
> -subdir('ipa')
>  subdir('libcamera')
> diff --git a/src/ipa/libipa/ipa_interface_wrapper.cpp b/src/ipa/libipa/ipa_interface_wrapper.cpp
> index 90f270c021a9..2a2e43abc708 100644
> --- a/src/ipa/libipa/ipa_interface_wrapper.cpp
> +++ b/src/ipa/libipa/ipa_interface_wrapper.cpp
> @@ -12,7 +12,7 @@
>  #include <unistd.h>
>  #include <vector>
>
> -#include <ipa/ipa_interface.h>
> +#include <libcamera/ipa/ipa_interface.h>
>
>  #include "libcamera/internal/byte_stream_buffer.h"
>  #include "libcamera/internal/camera_sensor.h"
> diff --git a/src/ipa/libipa/ipa_interface_wrapper.h b/src/ipa/libipa/ipa_interface_wrapper.h
> index b426034d551d..a1c701599b56 100644
> --- a/src/ipa/libipa/ipa_interface_wrapper.h
> +++ b/src/ipa/libipa/ipa_interface_wrapper.h
> @@ -9,7 +9,7 @@
>
>  #include <memory>
>
> -#include <ipa/ipa_interface.h>
> +#include <libcamera/ipa/ipa_interface.h>
>
>  #include "libcamera/internal/control_serializer.h"
>
> diff --git a/src/ipa/raspberrypi/raspberrypi.cpp b/src/ipa/raspberrypi/raspberrypi.cpp
> index 46b244538e32..9669f2126e6c 100644
> --- a/src/ipa/raspberrypi/raspberrypi.cpp
> +++ b/src/ipa/raspberrypi/raspberrypi.cpp
> @@ -12,14 +12,15 @@
>  #include <string.h>
>  #include <sys/mman.h>
>
> -#include <ipa/ipa_interface.h>
> -#include <ipa/ipa_module_info.h>
> -#include <ipa/raspberrypi.h>
>  #include <libcamera/buffer.h>
>  #include <libcamera/control_ids.h>
>  #include <libcamera/controls.h>
> +#include <libcamera/ipa/ipa_interface.h>
> +#include <libcamera/ipa/ipa_module_info.h>
> +#include <libcamera/ipa/raspberrypi.h>
>  #include <libcamera/request.h>
>  #include <libcamera/span.h>
> +
>  #include <libipa/ipa_interface_wrapper.h>
>
>  #include "libcamera/internal/camera_sensor.h"
> diff --git a/src/ipa/rkisp1/rkisp1.cpp b/src/ipa/rkisp1/rkisp1.cpp
> index 4f6e0342dac1..fbdc908fc816 100644
> --- a/src/ipa/rkisp1/rkisp1.cpp
> +++ b/src/ipa/rkisp1/rkisp1.cpp
> @@ -14,12 +14,13 @@
>
>  #include <linux/rkisp1-config.h>
>
> -#include <ipa/ipa_interface.h>
> -#include <ipa/ipa_module_info.h>
> -#include <ipa/rkisp1.h>
>  #include <libcamera/buffer.h>
>  #include <libcamera/control_ids.h>
> +#include <libcamera/ipa/ipa_interface.h>
> +#include <libcamera/ipa/ipa_module_info.h>
> +#include <libcamera/ipa/rkisp1.h>
>  #include <libcamera/request.h>
> +
>  #include <libipa/ipa_interface_wrapper.h>
>
>  #include "libcamera/internal/log.h"
> diff --git a/src/ipa/vimc/vimc.cpp b/src/ipa/vimc/vimc.cpp
> index 3fa6be6535e2..af278a482b8a 100644
> --- a/src/ipa/vimc/vimc.cpp
> +++ b/src/ipa/vimc/vimc.cpp
> @@ -5,7 +5,7 @@
>   * ipa_vimc.cpp - Vimc Image Processing Algorithm module
>   */
>
> -#include <ipa/ipa_vimc.h>
> +#include <libcamera/ipa/ipa_vimc.h>
>
>  #include <fcntl.h>
>  #include <string.h>
> @@ -14,8 +14,8 @@
>
>  #include <iostream>
>
> -#include <ipa/ipa_interface.h>
> -#include <ipa/ipa_module_info.h>
> +#include <libcamera/ipa/ipa_interface.h>
> +#include <libcamera/ipa/ipa_module_info.h>
>
>  #include <libipa/ipa_interface_wrapper.h>
>
> diff --git a/src/libcamera/control_serializer.cpp b/src/libcamera/control_serializer.cpp
> index bf162b6cc471..258db6dfbf5a 100644
> --- a/src/libcamera/control_serializer.cpp
> +++ b/src/libcamera/control_serializer.cpp
> @@ -11,9 +11,9 @@
>  #include <memory>
>  #include <vector>
>
> -#include <ipa/ipa_controls.h>
>  #include <libcamera/control_ids.h>
>  #include <libcamera/controls.h>
> +#include <libcamera/ipa/ipa_controls.h>
>  #include <libcamera/span.h>
>
>  #include "libcamera/internal/byte_stream_buffer.h"
> diff --git a/src/libcamera/ipa_controls.cpp b/src/libcamera/ipa_controls.cpp
> index b1d14190e3fe..8fd726513182 100644
> --- a/src/libcamera/ipa_controls.cpp
> +++ b/src/libcamera/ipa_controls.cpp
> @@ -5,7 +5,7 @@
>   * ipa_controls.cpp - IPA control handling
>   */
>
> -#include <ipa/ipa_controls.h>
> +#include <libcamera/ipa/ipa_controls.h>
>
>  /**
>   * \file ipa_controls.h
> diff --git a/src/libcamera/ipa_interface.cpp b/src/libcamera/ipa_interface.cpp
> index c890eadaf6c8..69835e63ab46 100644
> --- a/src/libcamera/ipa_interface.cpp
> +++ b/src/libcamera/ipa_interface.cpp
> @@ -5,7 +5,7 @@
>   * ipa_interface.cpp - Image Processing Algorithm interface
>   */
>
> -#include <ipa/ipa_interface.h>
> +#include <libcamera/ipa/ipa_interface.h>
>
>  /**
>   * \file ipa_interface.h
> diff --git a/src/libcamera/pipeline/raspberrypi/raspberrypi.cpp b/src/libcamera/pipeline/raspberrypi/raspberrypi.cpp
> index e254e5558d92..07ca9f5d7f53 100644
> --- a/src/libcamera/pipeline/raspberrypi/raspberrypi.cpp
> +++ b/src/libcamera/pipeline/raspberrypi/raspberrypi.cpp
> @@ -11,9 +11,9 @@
>  #include <queue>
>  #include <sys/mman.h>
>
> -#include <ipa/raspberrypi.h>
>  #include <libcamera/camera.h>
>  #include <libcamera/control_ids.h>
> +#include <libcamera/ipa/raspberrypi.h>
>  #include <libcamera/logging.h>
>  #include <libcamera/request.h>
>  #include <libcamera/stream.h>
> diff --git a/src/libcamera/pipeline/rkisp1/rkisp1.cpp b/src/libcamera/pipeline/rkisp1/rkisp1.cpp
> index 7a0c8771ba54..d807fc2cf535 100644
> --- a/src/libcamera/pipeline/rkisp1/rkisp1.cpp
> +++ b/src/libcamera/pipeline/rkisp1/rkisp1.cpp
> @@ -13,10 +13,10 @@
>
>  #include <linux/media-bus-format.h>
>
> -#include <ipa/rkisp1.h>
>  #include <libcamera/buffer.h>
>  #include <libcamera/camera.h>
>  #include <libcamera/control_ids.h>
> +#include <libcamera/ipa/rkisp1.h>
>  #include <libcamera/request.h>
>  #include <libcamera/stream.h>
>
> diff --git a/src/libcamera/pipeline/vimc/vimc.cpp b/src/libcamera/pipeline/vimc/vimc.cpp
> index 50a9f2df4c24..ca36348a5eb6 100644
> --- a/src/libcamera/pipeline/vimc/vimc.cpp
> +++ b/src/libcamera/pipeline/vimc/vimc.cpp
> @@ -14,11 +14,11 @@
>  #include <linux/media-bus-format.h>
>  #include <linux/version.h>
>
> -#include <ipa/ipa_interface.h>
> -#include <ipa/ipa_module_info.h>
>  #include <libcamera/camera.h>
>  #include <libcamera/control_ids.h>
>  #include <libcamera/controls.h>
> +#include <libcamera/ipa/ipa_interface.h>
> +#include <libcamera/ipa/ipa_module_info.h>
>  #include <libcamera/request.h>
>  #include <libcamera/stream.h>
>
> diff --git a/src/libcamera/proxy/ipa_proxy_linux.cpp b/src/libcamera/proxy/ipa_proxy_linux.cpp
> index 7d6f8799f8ff..be34f20aa857 100644
> --- a/src/libcamera/proxy/ipa_proxy_linux.cpp
> +++ b/src/libcamera/proxy/ipa_proxy_linux.cpp
> @@ -7,8 +7,8 @@
>
>  #include <vector>
>
> -#include <ipa/ipa_interface.h>
> -#include <ipa/ipa_module_info.h>
> +#include <libcamera/ipa/ipa_interface.h>
> +#include <libcamera/ipa/ipa_module_info.h>
>
>  #include "libcamera/internal/ipa_module.h"
>  #include "libcamera/internal/ipa_proxy.h"
> diff --git a/src/libcamera/proxy/ipa_proxy_thread.cpp b/src/libcamera/proxy/ipa_proxy_thread.cpp
> index 03d4c0d927b9..6fbebed2ba72 100644
> --- a/src/libcamera/proxy/ipa_proxy_thread.cpp
> +++ b/src/libcamera/proxy/ipa_proxy_thread.cpp
> @@ -7,8 +7,8 @@
>
>  #include <memory>
>
> -#include <ipa/ipa_interface.h>
> -#include <ipa/ipa_module_info.h>
> +#include <libcamera/ipa/ipa_interface.h>
> +#include <libcamera/ipa/ipa_module_info.h>
>
>  #include "libcamera/internal/ipa_context_wrapper.h"
>  #include "libcamera/internal/ipa_module.h"
> diff --git a/src/libcamera/proxy/worker/ipa_proxy_linux_worker.cpp b/src/libcamera/proxy/worker/ipa_proxy_linux_worker.cpp
> index 9ba94d01d0ca..0c4687f737a3 100644
> --- a/src/libcamera/proxy/worker/ipa_proxy_linux_worker.cpp
> +++ b/src/libcamera/proxy/worker/ipa_proxy_linux_worker.cpp
> @@ -9,8 +9,8 @@
>  #include <sys/types.h>
>  #include <unistd.h>
>
> -#include <ipa/ipa_interface.h>
>  #include <libcamera/event_dispatcher.h>
> +#include <libcamera/ipa/ipa_interface.h>
>  #include <libcamera/logging.h>
>
>  #include "libcamera/internal/ipa_module.h"
> diff --git a/test/ipa/ipa_interface_test.cpp b/test/ipa/ipa_interface_test.cpp
> index c394377dacd0..2f02af49cce9 100644
> --- a/test/ipa/ipa_interface_test.cpp
> +++ b/test/ipa/ipa_interface_test.cpp
> @@ -14,10 +14,9 @@
>
>  #include <libcamera/event_dispatcher.h>
>  #include <libcamera/event_notifier.h>
> +#include <libcamera/ipa/ipa_vimc.h>
>  #include <libcamera/timer.h>
>
> -#include <ipa/ipa_vimc.h>
> -
>  #include "libcamera/internal/device_enumerator.h"
>  #include "libcamera/internal/ipa_manager.h"
>  #include "libcamera/internal/ipa_module.h"
> --
> Regards,
>
> Laurent Pinchart
>
> _______________________________________________
> libcamera-devel mailing list
> libcamera-devel at lists.libcamera.org
> https://lists.libcamera.org/listinfo/libcamera-devel


More information about the libcamera-devel mailing list