ARM NEON Compositor  master
Fast SIMD alpha overlay and blending for ARM
overlay_alpha.h
Go to the documentation of this file.
1 #pragma once
2 
3 #ifdef __cplusplus
4 #include <cstddef> // size_t
5 #include <cstdint> // uint8_t
6 extern "C" {
7 #else
8 #include <stddef.h> // size_t
9 #include <stdint.h> // uint8_t
10 #endif
11 
14 
16 void overlay_alpha_stride_div255_round(const uint8_t *bg_img,
17  const uint8_t *fg_img, uint8_t *out_img,
18  size_t bg_full_cols, size_t fg_rows,
19  size_t fg_cols, size_t fg_full_cols);
22  const uint8_t *bg_img, const uint8_t *fg_img, uint8_t *out_img,
23  size_t bg_full_cols, size_t fg_rows, size_t fg_cols, size_t fg_full_cols);
25 void overlay_alpha_stride_div255_floor(const uint8_t *bg_img,
26  const uint8_t *fg_img, uint8_t *out_img,
27  size_t bg_full_cols, size_t fg_rows,
28  size_t fg_cols, size_t fg_full_cols);
30 void overlay_alpha_stride_div256_round(const uint8_t *bg_img,
31  const uint8_t *fg_img, uint8_t *out_img,
32  size_t bg_full_cols, size_t fg_rows,
33  size_t fg_cols, size_t fg_full_cols);
35 void overlay_alpha_stride_div256_floor(const uint8_t *bg_img,
36  const uint8_t *fg_img, uint8_t *out_img,
37  size_t bg_full_cols, size_t fg_rows,
38  size_t fg_cols, size_t fg_full_cols);
39 
41 
42 #ifdef __cplusplus
43 } // extern "C"
44 #endif
overlay_alpha_stride_div256_round
void overlay_alpha_stride_div256_round(const uint8_t *bg_img, const uint8_t *fg_img, uint8_t *out_img, size_t bg_full_cols, size_t fg_rows, size_t fg_cols, size_t fg_full_cols)
C wrapper for overlay_alpha_stride().
Definition: src/alpha-lib/src/overlay_alpha.cpp:197
overlay_alpha_stride_div255_round
void overlay_alpha_stride_div255_round(const uint8_t *bg_img, const uint8_t *fg_img, uint8_t *out_img, size_t bg_full_cols, size_t fg_rows, size_t fg_cols, size_t fg_full_cols)
C wrapper for overlay_alpha_stride().
Definition: src/alpha-lib/src/overlay_alpha.cpp:177
perf_test.fg_img
fg_img
Definition: perf_test.py:113
overlay_alpha_stride_div255_floor
void overlay_alpha_stride_div255_floor(const uint8_t *bg_img, const uint8_t *fg_img, uint8_t *out_img, size_t bg_full_cols, size_t fg_rows, size_t fg_cols, size_t fg_full_cols)
C wrapper for overlay_alpha_stride().
Definition: src/alpha-lib/src/overlay_alpha.cpp:190
overlay_alpha_stride_div256_floor
void overlay_alpha_stride_div256_floor(const uint8_t *bg_img, const uint8_t *fg_img, uint8_t *out_img, size_t bg_full_cols, size_t fg_rows, size_t fg_cols, size_t fg_full_cols)
C wrapper for overlay_alpha_stride().
Definition: src/alpha-lib/src/overlay_alpha.cpp:204
perf_test.out_img
out_img
Definition: perf_test.py:114
overlay_alpha_stride_div255_round_approx
void overlay_alpha_stride_div255_round_approx(const uint8_t *bg_img, const uint8_t *fg_img, uint8_t *out_img, size_t bg_full_cols, size_t fg_rows, size_t fg_cols, size_t fg_full_cols)
C wrapper for overlay_alpha_stride().
Definition: src/alpha-lib/src/overlay_alpha.cpp:184
perf_test.bg_img
bg_img
Definition: perf_test.py:112