KleidiCV Coverage Report


Directory: ./
File: kleidicv/src/transform/warp_perspective_api.cpp
Date: 2025-09-25 14:13:34
Exec Total Coverage
Lines: 10 10 100.0%
Functions: 2 2 100.0%
Branches: 4 4 100.0%

Line Branch Exec Source
1 // SPDX-FileCopyrightText: 2024 Arm Limited and/or its affiliates <open-source-office@arm.com>
2 //
3 // SPDX-License-Identifier: Apache-2.0
4
5 #include "kleidicv/ctypes.h"
6 #include "kleidicv/dispatch.h"
7 #include "kleidicv/kleidicv.h"
8 #include "kleidicv/transform/warp_perspective.h"
9
10
2/2
✓ Branch 0 taken 3 times.
✓ Branch 1 taken 1 times.
8 KLEIDICV_MULTIVERSION_C_API(kleidicv_warp_perspective_stripe_u8,
11 &kleidicv::neon::warp_perspective_stripe<uint8_t>,
12 &kleidicv::sve2::warp_perspective_stripe<uint8_t>,
13 nullptr, nullptr);
14
15 extern "C" {
16
17 243 kleidicv_error_t kleidicv_warp_perspective_u8(
18 const uint8_t *src, size_t src_stride, size_t src_width, size_t src_height,
19 uint8_t *dst, size_t dst_stride, size_t dst_width, size_t dst_height,
20 const float transformation[9], size_t channels,
21 kleidicv_interpolation_type_t interpolation,
22 kleidicv_border_type_t border_type, const uint8_t *border_value) {
23
2/2
✓ Branch 0 taken 15 times.
✓ Branch 1 taken 228 times.
243 if (!kleidicv::warp_perspective_is_implemented<uint8_t>(
24 243 dst_width, channels, interpolation, border_type)) {
25 15 return KLEIDICV_ERROR_NOT_IMPLEMENTED;
26 }
27
28 456 return kleidicv_warp_perspective_stripe_u8(
29 228 src, src_stride, src_width, src_height, dst, dst_stride, dst_width,
30 228 dst_height, 0, dst_height, transformation, 1, interpolation, border_type,
31 228 border_value);
32 243 }
33
34 } // extern "C"
35