|
#define | TWOXSAI_SCALE 2 |
|
#define | twoxsai_interpolate_xrgb8888(A, B) ((((A) & 0xFEFEFEFE) >> 1) + (((B) & 0xFEFEFEFE) >> 1) + ((A) & (B) & 0x01010101)) |
|
#define | twoxsai_interpolate2_xrgb8888(A, B, C, D) ((((A) & 0xFCFCFCFC) >> 2) + (((B) & 0xFCFCFCFC) >> 2) + (((C) & 0xFCFCFCFC) >> 2) + (((D) & 0xFCFCFCFC) >> 2) + (((((A) & 0x03030303) + ((B) & 0x03030303) + ((C) & 0x03030303) + ((D) & 0x03030303)) >> 2) & 0x03030303)) |
|
#define | twoxsai_interpolate_rgb565(A, B) ((((A) & 0xF7DE) >> 1) + (((B) & 0xF7DE) >> 1) + ((A) & (B) & 0x0821)) |
|
#define | twoxsai_interpolate2_rgb565(A, B, C, D) ((((A) & 0xE79C) >> 2) + (((B) & 0xE79C) >> 2) + (((C) & 0xE79C) >> 2) + (((D) & 0xE79C) >> 2) + (((((A) & 0x1863) + ((B) & 0x1863) + ((C) & 0x1863) + ((D) & 0x1863)) >> 2) & 0x1863)) |
|
#define | twoxsai_interpolate_4444(A, B) (((A & 0xEEEE) >> 1) + ((B & 0xEEEE) >> 1) + (A & B & 0x1111)) |
|
#define | twoxsai_interpolate2_4444(A, B, C, D) (((A & 0xCCCC) >> 2) + ((B & 0xCCCC) >> 2) + ((C & 0xCCCC) >> 2) + ((D & 0xCCCC) >> 2) + ((((A & 0x3333) + (B & 0x3333) + (C & 0x3333) + (D & 0x3333)) >> 2) & 0x3333)) |
|
#define | twoxsai_result(A, B, C, D) (((A) != (C) || (A) != (D)) - ((B) != (C) || (B) != (D))); |
|
#define | twoxsai_declare_variables(typename_t, in, nextline) |
|
#define | twoxsai_function(result_cb, interpolate_cb, interpolate2_cb) |
|
|
static unsigned | twoxsai_generic_input_fmts (void) |
|
static unsigned | twoxsai_generic_output_fmts (unsigned input_fmts) |
|
static unsigned | twoxsai_generic_threads (void *data) |
|
static void * | twoxsai_generic_create (const struct softfilter_config *config, unsigned in_fmt, unsigned out_fmt, unsigned max_width, unsigned max_height, unsigned threads, softfilter_simd_mask_t simd, void *userdata) |
|
static void | twoxsai_generic_output (void *data, unsigned *out_width, unsigned *out_height, unsigned width, unsigned height) |
|
static void | twoxsai_generic_destroy (void *data) |
|
static void | twoxsai_generic_xrgb8888 (unsigned width, unsigned height, int first, int last, uint32_t *src, unsigned src_stride, uint32_t *dst, unsigned dst_stride) |
|
static void | twoxsai_generic_rgb565 (unsigned width, unsigned height, int first, int last, uint16_t *src, unsigned src_stride, uint16_t *dst, unsigned dst_stride) |
|
static void | twoxsai_work_cb_rgb565 (void *data, void *thread_data) |
|
static void | twoxsai_work_cb_xrgb8888 (void *data, void *thread_data) |
|
static void | twoxsai_generic_packets (void *data, struct softfilter_work_packet *packets, void *output, size_t output_stride, const void *input, unsigned width, unsigned height, size_t input_stride) |
|
const struct softfilter_implementation * | softfilter_get_implementation (softfilter_simd_mask_t simd) |
|