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

Message ID 20200515163505.24330-2-laurent.pinchart@ideasonboard.com
State Accepted
Headers show
Series
  • [libcamera-devel,v2,1/3] libcamera: Move internal headers to include/libcamera/internal/
Related show

Commit Message

Laurent Pinchart May 15, 2020, 4:35 p.m. UTC
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@ideasonboard.com>
---
 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%)

Comments

Jacopo Mondi May 15, 2020, 4:51 p.m. UTC | #1
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@ideasonboard.com>

Acked-by: Jacopo Mondi <jacopo@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@lists.libcamera.org
> https://lists.libcamera.org/listinfo/libcamera-devel

Patch

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"