111 for (y = 0; y < dsth; y++, dst_data += dst_step)
118 if ( (
unsigned) ( (
ne10_int32_t) (xs) - 1) < (
unsigned) (srcw - 4) &&
119 (
unsigned) ( (
ne10_int32_t) (ys) - 1) < (
unsigned) (srch - 4) &&
120 (
unsigned) ( (
ne10_int32_t) (xe) - 1) < (
unsigned) (srcw - 4) &&
121 (
unsigned) ( (
ne10_int32_t) (ye) - 1) < (
unsigned) (srch - 4))
123 for (x = 0; x < dstw; x++)
127 const ne10_uint8_t *ptr = src_data + src_step * iys + ixs * 4;
156 for (x = 0; x < dstw; x++)
168 if ( (
unsigned) iys < (
unsigned) (srch - 1))
170 ptr0 = src_data + src_step * iys;
171 ptr1 = ptr0 + src_step;
178 if ( (
unsigned) ixs < (
unsigned) (srcw - 1))
224 ne10_int32_t dstw = (srch * fabs (a)) + (srcw * fabs (b)) + 1;
225 ne10_int32_t dsth = (srch * fabs (b)) + (srcw * fabs (a)) + 1;
234 m[2] = srcw * 0.5f - m[0] * dx - m[1] * dy;
235 m[5] = srch * 0.5f - m[3] * dx - m[4] * dy;
242 #ifdef ENABLE_NE10_IMG_ROTATE_RGBA_NEON 250 asm(
"ne10_img_rotate_get_quad_rangle_subpix_rgba_neon");
268 ne10_int32_t dstw = (srch * fabs (a)) + (srcw * fabs (b)) + 1;
269 ne10_int32_t dsth = (srch * fabs (b)) + (srcw * fabs (a)) + 1;
278 m[2] = srcw * 0.5f - m[0] * dx - m[1] * dy;
279 m[5] = srch * 0.5f - m[3] * dx - m[4] * dy;
285 #endif // ENABLE_NE10_IMG_ROTATE_RGBA_NEON
#define NE10_F2I16_SROUND(x)
void ne10_img_rotate_get_quad_rangle_subpix_rgba_c(ne10_uint8_t *dst, ne10_uint8_t *src, ne10_int32_t srcw, ne10_int32_t srch, ne10_int32_t dstw, ne10_int32_t dsth, ne10_float32_t *matrix)
#define NE10_PI
NE10 defines a number of macros for use in its function signatures.
void ne10_img_rotate_rgba_neon(ne10_uint8_t *dst, ne10_uint32_t *dst_width, ne10_uint32_t *dst_height, ne10_uint8_t *src, ne10_uint32_t src_width, ne10_uint32_t src_height, ne10_int32_t angle)
Specific implementation of ne10_img_rotate_rgba using NEON SIMD capabilities.
void ne10_img_rotate_rgba_c(ne10_uint8_t *dst, ne10_uint32_t *dst_width, ne10_uint32_t *dst_height, ne10_uint8_t *src, ne10_uint32_t src_width, ne10_uint32_t src_height, ne10_int32_t angle)
Specific implementation of ne10_img_rotate_rgba using plain C.
void ne10_img_rotate_get_quad_rangle_subpix_rgba_neon(ne10_uint8_t *dst, ne10_uint8_t *src, ne10_int32_t srcw, ne10_int32_t srch, ne10_int32_t dstw, ne10_int32_t dsth, ne10_float32_t *matrix) asm("ne10_img_rotate_get_quad_rangle_subpix_rgba_neon")