RetroArch
Classes | Macros | Functions | Variables
scale2x.c File Reference
#include "softfilter.h"
#include <stdlib.h>
Include dependency graph for scale2x.c:

Classes

struct  softfilter_thread_data
 
struct  filter_data
 

Macros

#define SCALE2X_SCALE   2
 
#define SCALE2X_GENERIC(typename_t, width, height, first, last, src, src_stride, dst, dst_stride, out0, out1)
 

Functions

static void scale2x_generic_rgb565 (unsigned width, unsigned height, int first, int last, const uint16_t *src, unsigned src_stride, uint16_t *dst, unsigned dst_stride)
 
static void scale2x_generic_xrgb8888 (unsigned width, unsigned height, int first, int last, const uint32_t *src, unsigned src_stride, uint32_t *dst, unsigned dst_stride)
 
static unsigned scale2x_generic_input_fmts (void)
 
static unsigned scale2x_generic_output_fmts (unsigned input_fmts)
 
static unsigned scale2x_generic_threads (void *data)
 
static voidscale2x_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 scale2x_generic_output (void *data, unsigned *out_width, unsigned *out_height, unsigned width, unsigned height)
 
static void scale2x_generic_destroy (void *data)
 
static void scale2x_work_cb_xrgb8888 (void *data, void *thread_data)
 
static void scale2x_work_cb_rgb565 (void *data, void *thread_data)
 
static void scale2x_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_implementationsoftfilter_get_implementation (softfilter_simd_mask_t simd)
 

Variables

static const struct softfilter_implementation scale2x_generic
 

Macro Definition Documentation

◆ SCALE2X_GENERIC

#define SCALE2X_GENERIC (   typename_t,
  width,
  height,
  first,
  last,
  src,
  src_stride,
  dst,
  dst_stride,
  out0,
  out1 
)

◆ SCALE2X_SCALE

#define SCALE2X_SCALE   2

Function Documentation

◆ scale2x_generic_create()

static void* scale2x_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
Here is the call graph for this function:

◆ scale2x_generic_destroy()

static void scale2x_generic_destroy ( void data)
static
Here is the call graph for this function:

◆ scale2x_generic_input_fmts()

static unsigned scale2x_generic_input_fmts ( void  )
static

◆ scale2x_generic_output()

static void scale2x_generic_output ( void data,
unsigned *  out_width,
unsigned *  out_height,
unsigned  width,
unsigned  height 
)
static

◆ scale2x_generic_output_fmts()

static unsigned scale2x_generic_output_fmts ( unsigned  input_fmts)
static

◆ scale2x_generic_packets()

static void scale2x_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 
)
static
Here is the call graph for this function:

◆ scale2x_generic_rgb565()

static void scale2x_generic_rgb565 ( unsigned  width,
unsigned  height,
int  first,
int  last,
const uint16_t src,
unsigned  src_stride,
uint16_t dst,
unsigned  dst_stride 
)
static
Here is the caller graph for this function:

◆ scale2x_generic_threads()

static unsigned scale2x_generic_threads ( void data)
static

◆ scale2x_generic_xrgb8888()

static void scale2x_generic_xrgb8888 ( unsigned  width,
unsigned  height,
int  first,
int  last,
const uint32_t src,
unsigned  src_stride,
uint32_t dst,
unsigned  dst_stride 
)
static
Here is the caller graph for this function:

◆ scale2x_work_cb_rgb565()

static void scale2x_work_cb_rgb565 ( void data,
void thread_data 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ scale2x_work_cb_xrgb8888()

static void scale2x_work_cb_xrgb8888 ( void data,
void thread_data 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ softfilter_get_implementation()

const struct softfilter_implementation* softfilter_get_implementation ( softfilter_simd_mask_t  simd)
Here is the call graph for this function:

Variable Documentation

◆ scale2x_generic

const struct softfilter_implementation scale2x_generic
static
Initial value:
= {
"Scale2x",
"scale2x",
}
static void scale2x_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)
Definition: scale2x.c:201
#define SOFTFILTER_API_VERSION
Definition: softfilter.h:96
static void * scale2x_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)
Definition: scale2x.c:127
static unsigned scale2x_generic_input_fmts(void)
Definition: scale2x.c:111
static void scale2x_generic_output(void *data, unsigned *out_width, unsigned *out_height, unsigned width, unsigned height)
Definition: scale2x.c:150
static unsigned scale2x_generic_threads(void *data)
Definition: scale2x.c:121
static unsigned scale2x_generic_output_fmts(unsigned input_fmts)
Definition: scale2x.c:116
static void scale2x_generic_destroy(void *data)
Definition: scale2x.c:158