[PATCH 2/4] libcamera: Adapt Vector class to new location
Kieran Bingham
kieran.bingham at ideasonboard.com
Tue Feb 11 10:43:31 CET 2025
Quoting Stefan Klug (2025-02-06 14:10:09)
> Change the namespace of the Vector class from libipa to libcamera and
> add it to the build.
Reviewed-by: Kieran Bingham <kieran.bingham at ideasonboard.com>
> Signed-off-by: Stefan Klug <stefan.klug at ideasonboard.com>
> ---
> include/libcamera/internal/meson.build | 1 +
> include/libcamera/internal/vector.h | 14 +++++---------
> src/libcamera/meson.build | 1 +
> src/libcamera/vector.cpp | 6 +-----
> test/meson.build | 1 +
> test/vector.cpp | 4 ++--
> 6 files changed, 11 insertions(+), 16 deletions(-)
>
> diff --git a/include/libcamera/internal/meson.build b/include/libcamera/internal/meson.build
> index 7d6aa8b72bd7..45408b313848 100644
> --- a/include/libcamera/internal/meson.build
> +++ b/include/libcamera/internal/meson.build
> @@ -43,6 +43,7 @@ libcamera_internal_headers = files([
> 'v4l2_pixelformat.h',
> 'v4l2_subdevice.h',
> 'v4l2_videodevice.h',
> + 'vector.h',
> 'yaml_parser.h',
> ])
>
> diff --git a/include/libcamera/internal/vector.h b/include/libcamera/internal/vector.h
> index fe33c9d6fbd1..a67a09474204 100644
> --- a/include/libcamera/internal/vector.h
> +++ b/include/libcamera/internal/vector.h
> @@ -24,8 +24,6 @@ namespace libcamera {
>
> LOG_DECLARE_CATEGORY(Vector)
>
> -namespace ipa {
> -
> #ifndef __DOXYGEN__
> template<typename T, unsigned int Rows,
> std::enable_if_t<std::is_arithmetic_v<T>> * = nullptr>
> @@ -329,11 +327,9 @@ bool operator!=(const Vector<T, Rows> &lhs, const Vector<T, Rows> &rhs)
> bool vectorValidateYaml(const YamlObject &obj, unsigned int size);
> #endif /* __DOXYGEN__ */
>
> -} /* namespace ipa */
> -
> #ifndef __DOXYGEN__
> template<typename T, unsigned int Rows>
> -std::ostream &operator<<(std::ostream &out, const ipa::Vector<T, Rows> &v)
> +std::ostream &operator<<(std::ostream &out, const Vector<T, Rows> &v)
> {
> out << "Vector { ";
> for (unsigned int i = 0; i < Rows; i++) {
> @@ -346,13 +342,13 @@ std::ostream &operator<<(std::ostream &out, const ipa::Vector<T, Rows> &v)
> }
>
> template<typename T, unsigned int Rows>
> -struct YamlObject::Getter<ipa::Vector<T, Rows>> {
> - std::optional<ipa::Vector<T, Rows>> get(const YamlObject &obj) const
> +struct YamlObject::Getter<Vector<T, Rows>> {
> + std::optional<Vector<T, Rows>> get(const YamlObject &obj) const
> {
> - if (!ipa::vectorValidateYaml(obj, Rows))
> + if (!vectorValidateYaml(obj, Rows))
> return std::nullopt;
>
> - ipa::Vector<T, Rows> vector;
> + Vector<T, Rows> vector;
>
> unsigned int i = 0;
> for (const YamlObject &entry : obj.asList()) {
> diff --git a/src/libcamera/meson.build b/src/libcamera/meson.build
> index 57fde8a8fab0..de22b8e60dde 100644
> --- a/src/libcamera/meson.build
> +++ b/src/libcamera/meson.build
> @@ -53,6 +53,7 @@ libcamera_internal_sources = files([
> 'v4l2_pixelformat.cpp',
> 'v4l2_subdevice.cpp',
> 'v4l2_videodevice.cpp',
> + 'vector.cpp',
> 'yaml_parser.cpp',
> ])
>
> diff --git a/src/libcamera/vector.cpp b/src/libcamera/vector.cpp
> index 8019f8cfdc85..85ca2208245a 100644
> --- a/src/libcamera/vector.cpp
> +++ b/src/libcamera/vector.cpp
> @@ -5,7 +5,7 @@
> * Vector and related operations
> */
>
> -#include "vector.h"
> +#include "libcamera/internal/vector.h"
>
> #include <libcamera/base/log.h>
>
> @@ -18,8 +18,6 @@ namespace libcamera {
>
> LOG_DEFINE_CATEGORY(Vector)
>
> -namespace ipa {
> -
> /**
> * \class Vector
> * \brief Vector class
> @@ -346,6 +344,4 @@ bool vectorValidateYaml(const YamlObject &obj, unsigned int size)
> }
> #endif /* __DOXYGEN__ */
>
> -} /* namespace ipa */
> -
> } /* namespace libcamera */
> diff --git a/test/meson.build b/test/meson.build
> index 5ed052ed62c8..4095664994fd 100644
> --- a/test/meson.build
> +++ b/test/meson.build
> @@ -73,6 +73,7 @@ internal_tests = [
> {'name': 'timer-thread', 'sources': ['timer-thread.cpp']},
> {'name': 'unique-fd', 'sources': ['unique-fd.cpp']},
> {'name': 'utils', 'sources': ['utils.cpp']},
> + {'name': 'vector', 'sources': ['vector.cpp']},
> {'name': 'yaml-parser', 'sources': ['yaml-parser.cpp']},
> ]
>
> diff --git a/test/vector.cpp b/test/vector.cpp
> index 8e4ec77d7820..4fae960defc1 100644
> --- a/test/vector.cpp
> +++ b/test/vector.cpp
> @@ -5,14 +5,14 @@
> * Vector tests
> */
>
> -#include "../src/ipa/libipa/vector.h"
> +#include "libcamera/internal/vector.h"
>
> #include <cmath>
> #include <iostream>
>
> #include "test.h"
>
> -using namespace libcamera::ipa;
> +using namespace libcamera;
>
> #define ASSERT_EQ(a, b) \
> if ((a) != (b)) { \
> --
> 2.43.0
>
More information about the libcamera-devel
mailing list