diff options
-rw-r--r-- | src/ipa/libipa/fixedpoint.cpp (renamed from src/ipa/rkisp1/utils.cpp) | 10 | ||||
-rw-r--r-- | src/ipa/libipa/fixedpoint.h (renamed from src/ipa/rkisp1/utils.h) | 6 | ||||
-rw-r--r-- | src/ipa/libipa/meson.build | 2 | ||||
-rw-r--r-- | src/ipa/rkisp1/algorithms/ccm.cpp | 4 | ||||
-rw-r--r-- | src/ipa/rkisp1/meson.build | 1 | ||||
-rw-r--r-- | test/ipa/libipa/fixedpoint.cpp (renamed from test/ipa/rkisp1/rkisp1-utils.cpp) | 16 | ||||
-rw-r--r-- | test/ipa/libipa/meson.build | 1 | ||||
-rw-r--r-- | test/ipa/meson.build | 1 | ||||
-rw-r--r-- | test/ipa/rkisp1/meson.build | 15 |
9 files changed, 21 insertions, 35 deletions
diff --git a/src/ipa/rkisp1/utils.cpp b/src/ipa/libipa/fixedpoint.cpp index 960ec64e..6b698fc5 100644 --- a/src/ipa/rkisp1/utils.cpp +++ b/src/ipa/libipa/fixedpoint.cpp @@ -2,18 +2,18 @@ /* * Copyright (C) 2024, Paul Elder <paul.elder@ideasonboard.com> * - * Miscellaneous utility functions specific to rkisp1 + * Fixed / floating point conversions */ -#include "utils.h" +#include "fixedpoint.h" /** - * \file utils.h + * \file fixedpoint.h */ namespace libcamera { -namespace ipa::rkisp1::utils { +namespace ipa { /** * \fn R floatingToFixedPoint(T number) @@ -37,6 +37,6 @@ namespace ipa::rkisp1::utils { * \return The converted value */ -} /* namespace ipa::rkisp1::utils */ +} /* namespace ipa */ } /* namespace libcamera */ diff --git a/src/ipa/rkisp1/utils.h b/src/ipa/libipa/fixedpoint.h index 5f38b50b..709cf50f 100644 --- a/src/ipa/rkisp1/utils.h +++ b/src/ipa/libipa/fixedpoint.h @@ -2,7 +2,7 @@ /* * Copyright (C) 2024, Paul Elder <paul.elder@ideasonboard.com> * - * Miscellaneous utility functions specific to rkisp1 + * Fixed / floating point conversions */ #pragma once @@ -12,7 +12,7 @@ namespace libcamera { -namespace ipa::rkisp1::utils { +namespace ipa { #ifndef __DOXYGEN__ template<unsigned int I, unsigned int F, typename R, typename T, @@ -60,6 +60,6 @@ constexpr R fixedToFloatingPoint(T number) return static_cast<R>(t) / static_cast<R>(1 << F); } -} /* namespace ipa::rkisp1::utils */ +} /* namespace ipa */ } /* namespace libcamera */ diff --git a/src/ipa/libipa/meson.build b/src/ipa/libipa/meson.build index 93ae25da..a7f16ff6 100644 --- a/src/ipa/libipa/meson.build +++ b/src/ipa/libipa/meson.build @@ -7,6 +7,7 @@ libipa_headers = files([ 'colours.h', 'exposure_mode_helper.h', 'fc_queue.h', + 'fixedpoint.h', 'histogram.h', 'interpolator.h', 'lsc_polynomial.h', @@ -22,6 +23,7 @@ libipa_sources = files([ 'colours.cpp', 'exposure_mode_helper.cpp', 'fc_queue.cpp', + 'fixedpoint.cpp', 'histogram.cpp', 'interpolator.cpp', 'lsc_polynomial.cpp', diff --git a/src/ipa/rkisp1/algorithms/ccm.cpp b/src/ipa/rkisp1/algorithms/ccm.cpp index 6b7d2e2c..e2b5cf4d 100644 --- a/src/ipa/rkisp1/algorithms/ccm.cpp +++ b/src/ipa/rkisp1/algorithms/ccm.cpp @@ -18,7 +18,7 @@ #include "libcamera/internal/yaml_parser.h" -#include "../utils.h" +#include "libipa/fixedpoint.h" #include "libipa/interpolator.h" /** @@ -72,7 +72,7 @@ void Ccm::setParameters(struct rkisp1_cif_isp_ctk_config &config, for (unsigned int i = 0; i < 3; i++) { for (unsigned int j = 0; j < 3; j++) config.coeff[i][j] = - utils::floatingToFixedPoint<4, 7, uint16_t, double>(matrix[i][j]); + floatingToFixedPoint<4, 7, uint16_t, double>(matrix[i][j]); } for (unsigned int i = 0; i < 3; i++) diff --git a/src/ipa/rkisp1/meson.build b/src/ipa/rkisp1/meson.build index 34844f14..26a9fa40 100644 --- a/src/ipa/rkisp1/meson.build +++ b/src/ipa/rkisp1/meson.build @@ -9,7 +9,6 @@ rkisp1_ipa_sources = files([ 'ipa_context.cpp', 'params.cpp', 'rkisp1.cpp', - 'utils.cpp', ]) rkisp1_ipa_sources += rkisp1_ipa_algorithms diff --git a/test/ipa/rkisp1/rkisp1-utils.cpp b/test/ipa/libipa/fixedpoint.cpp index b1863894..99eb662d 100644 --- a/test/ipa/rkisp1/rkisp1-utils.cpp +++ b/test/ipa/libipa/fixedpoint.cpp @@ -2,7 +2,7 @@ /* * Copyright (C) 2024, Paul Elder <paul.elder@ideasonboard.com> * - * Miscellaneous utility tests + * Fixed / Floating point utility tests */ #include <cmath> @@ -10,22 +10,22 @@ #include <map> #include <stdint.h> -#include "../src/ipa/rkisp1/utils.h" +#include "../src/ipa/libipa/fixedpoint.h" #include "test.h" using namespace std; using namespace libcamera; -using namespace ipa::rkisp1; +using namespace ipa; -class RkISP1UtilsTest : public Test +class FixedPointUtilsTest : public Test { protected: /* R for real, I for integer */ template<unsigned int IntPrec, unsigned int FracPrec, typename I, typename R> int testFixedToFloat(I input, R expected) { - R out = utils::fixedToFloatingPoint<IntPrec, FracPrec, R>(input); + R out = fixedToFloatingPoint<IntPrec, FracPrec, R>(input); R prec = 1.0 / (1 << FracPrec); if (std::abs(out - expected) > prec) { cerr << "Reverse conversion expected " << input @@ -40,7 +40,7 @@ protected: template<unsigned int IntPrec, unsigned int FracPrec, typename T> int testSingleFixedPoint(double input, T expected) { - T ret = utils::floatingToFixedPoint<IntPrec, FracPrec, T>(input); + T ret = floatingToFixedPoint<IntPrec, FracPrec, T>(input); if (ret != expected) { cerr << "Expected " << input << " to convert to " << expected << ", got " << ret << std::endl; @@ -51,7 +51,7 @@ protected: * The precision check is fairly arbitrary but is based on what * the rkisp1 is capable of in the crosstalk module. */ - double f = utils::fixedToFloatingPoint<IntPrec, FracPrec, double>(ret); + double f = fixedToFloatingPoint<IntPrec, FracPrec, double>(ret); if (std::abs(f - input) > 0.005) { cerr << "Reverse conversion expected " << ret << " to convert to " << input @@ -105,4 +105,4 @@ protected: } }; -TEST_REGISTER(RkISP1UtilsTest) +TEST_REGISTER(FixedPointUtilsTest) diff --git a/test/ipa/libipa/meson.build b/test/ipa/libipa/meson.build index f9b3c46d..0f4155d2 100644 --- a/test/ipa/libipa/meson.build +++ b/test/ipa/libipa/meson.build @@ -1,6 +1,7 @@ # SPDX-License-Identifier: CC0-1.0 libipa_test = [ + {'name': 'fixedpoint', 'sources': ['fixedpoint.cpp']}, {'name': 'interpolator', 'sources': ['interpolator.cpp']}, {'name': 'vector', 'sources': ['vector.cpp']}, ] diff --git a/test/ipa/meson.build b/test/ipa/meson.build index 63820de5..ceed15ba 100644 --- a/test/ipa/meson.build +++ b/test/ipa/meson.build @@ -1,7 +1,6 @@ # SPDX-License-Identifier: CC0-1.0 subdir('libipa') -subdir('rkisp1') ipa_test = [ {'name': 'ipa_module_test', 'sources': ['ipa_module_test.cpp']}, diff --git a/test/ipa/rkisp1/meson.build b/test/ipa/rkisp1/meson.build deleted file mode 100644 index 894523da..00000000 --- a/test/ipa/rkisp1/meson.build +++ /dev/null @@ -1,15 +0,0 @@ -# SPDX-License-Identifier: CC0-1.0 - -rkisp1_ipa_test = [ - {'name': 'rkisp1-utils', 'sources': ['rkisp1-utils.cpp']}, -] - -foreach test : rkisp1_ipa_test - exe = executable(test['name'], test['sources'], - dependencies : [libcamera_private, libipa_dep], - link_with : [test_libraries], - include_directories : [test_includes_internal, - '../../../src/ipa/rkisp1/']) - - test(test['name'], exe, suite : 'ipa') -endforeach |