RetroArch
Classes | Macros | Typedefs | Functions
softfilter.h File Reference
#include <stdint.h>
#include <stddef.h>
Include dependency graph for softfilter.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  softfilter_config
 
struct  softfilter_work_packet
 
struct  softfilter_implementation
 

Macros

#define SOFTFILTER_SIMD_SSE   (1 << 0)
 
#define SOFTFILTER_SIMD_SSE2   (1 << 1)
 
#define SOFTFILTER_SIMD_VMX   (1 << 2)
 
#define SOFTFILTER_SIMD_VMX128   (1 << 3)
 
#define SOFTFILTER_SIMD_AVX   (1 << 4)
 
#define SOFTFILTER_SIMD_NEON   (1 << 5)
 
#define SOFTFILTER_SIMD_SSE3   (1 << 6)
 
#define SOFTFILTER_SIMD_SSSE3   (1 << 7)
 
#define SOFTFILTER_SIMD_MMX   (1 << 8)
 
#define SOFTFILTER_SIMD_MMXEXT   (1 << 9)
 
#define SOFTFILTER_SIMD_SSE4   (1 << 10)
 
#define SOFTFILTER_SIMD_SSE42   (1 << 11)
 
#define SOFTFILTER_SIMD_AVX2   (1 << 12)
 
#define SOFTFILTER_SIMD_VFPU   (1 << 13)
 
#define SOFTFILTER_SIMD_PS   (1 << 14)
 
#define SOFTFILTER_API_VERSION   2
 
#define SOFTFILTER_FMT_NONE   0
 
#define SOFTFILTER_FMT_RGB565   (1 << 0)
 
#define SOFTFILTER_FMT_XRGB8888   (1 << 1)
 
#define SOFTFILTER_FMT_RGB4444   (1 << 2)
 
#define SOFTFILTER_BPP_RGB565   2
 
#define SOFTFILTER_BPP_XRGB8888   4
 

Typedefs

typedef unsigned softfilter_simd_mask_t
 
typedef int(* softfilter_config_get_float_t) (void *userdata, const char *key, float *value, float default_value)
 
typedef int(* softfilter_config_get_int_t) (void *userdata, const char *key, int *value, int default_value)
 
typedef int(* softfilter_config_get_float_array_t) (void *userdata, const char *key, float **values, unsigned *out_num_values, const float *default_values, unsigned num_default_values)
 
typedef int(* softfilter_config_get_int_array_t) (void *userdata, const char *key, int **values, unsigned *out_num_values, const int *default_values, unsigned num_default_values)
 
typedef int(* softfilter_config_get_string_t) (void *userdata, const char *key, char **output, const char *default_output)
 
typedef void(* softfilter_config_free_t) (void *ptr)
 
typedef const struct softfilter_implementation *(* softfilter_get_implementation_t) (softfilter_simd_mask_t)
 
typedef unsigned(* softfilter_query_input_formats_t) (void)
 
typedef unsigned(* softfilter_query_output_formats_t) (unsigned input_format)
 
typedef void(* softfilter_work_t) (void *data, void *thread_data)
 
typedef void *(* softfilter_create_t) (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)
 
typedef void(* softfilter_destroy_t) (void *data)
 
typedef void(* softfilter_query_output_size_t) (void *data, unsigned *out_width, unsigned *out_height, unsigned width, unsigned height)
 
typedef void(* softfilter_get_work_packets_t) (void *data, struct softfilter_work_packet *packets, void *output, size_t output_stride, const void *input, unsigned width, unsigned height, size_t input_stride)
 
typedef unsigned(* softfilter_query_num_threads_t) (void *data)
 

Functions

const struct softfilter_implementationsoftfilter_get_implementation (softfilter_simd_mask_t simd)
 

Macro Definition Documentation

◆ SOFTFILTER_API_VERSION

#define SOFTFILTER_API_VERSION   2

◆ SOFTFILTER_BPP_RGB565

#define SOFTFILTER_BPP_RGB565   2

◆ SOFTFILTER_BPP_XRGB8888

#define SOFTFILTER_BPP_XRGB8888   4

◆ SOFTFILTER_FMT_NONE

#define SOFTFILTER_FMT_NONE   0

◆ SOFTFILTER_FMT_RGB4444

#define SOFTFILTER_FMT_RGB4444   (1 << 2)

◆ SOFTFILTER_FMT_RGB565

#define SOFTFILTER_FMT_RGB565   (1 << 0)

◆ SOFTFILTER_FMT_XRGB8888

#define SOFTFILTER_FMT_XRGB8888   (1 << 1)

◆ SOFTFILTER_SIMD_AVX

#define SOFTFILTER_SIMD_AVX   (1 << 4)

◆ SOFTFILTER_SIMD_AVX2

#define SOFTFILTER_SIMD_AVX2   (1 << 12)

◆ SOFTFILTER_SIMD_MMX

#define SOFTFILTER_SIMD_MMX   (1 << 8)

◆ SOFTFILTER_SIMD_MMXEXT

#define SOFTFILTER_SIMD_MMXEXT   (1 << 9)

◆ SOFTFILTER_SIMD_NEON

#define SOFTFILTER_SIMD_NEON   (1 << 5)

◆ SOFTFILTER_SIMD_PS

#define SOFTFILTER_SIMD_PS   (1 << 14)

◆ SOFTFILTER_SIMD_SSE

#define SOFTFILTER_SIMD_SSE   (1 << 0)

◆ SOFTFILTER_SIMD_SSE2

#define SOFTFILTER_SIMD_SSE2   (1 << 1)

◆ SOFTFILTER_SIMD_SSE3

#define SOFTFILTER_SIMD_SSE3   (1 << 6)

◆ SOFTFILTER_SIMD_SSE4

#define SOFTFILTER_SIMD_SSE4   (1 << 10)

◆ SOFTFILTER_SIMD_SSE42

#define SOFTFILTER_SIMD_SSE42   (1 << 11)

◆ SOFTFILTER_SIMD_SSSE3

#define SOFTFILTER_SIMD_SSSE3   (1 << 7)

◆ SOFTFILTER_SIMD_VFPU

#define SOFTFILTER_SIMD_VFPU   (1 << 13)

◆ SOFTFILTER_SIMD_VMX

#define SOFTFILTER_SIMD_VMX   (1 << 2)

◆ SOFTFILTER_SIMD_VMX128

#define SOFTFILTER_SIMD_VMX128   (1 << 3)

Typedef Documentation

◆ softfilter_config_free_t

typedef void(* softfilter_config_free_t) (void *ptr)

◆ softfilter_config_get_float_array_t

typedef int(* softfilter_config_get_float_array_t) (void *userdata, const char *key, float **values, unsigned *out_num_values, const float *default_values, unsigned num_default_values)

◆ softfilter_config_get_float_t

typedef int(* softfilter_config_get_float_t) (void *userdata, const char *key, float *value, float default_value)

◆ softfilter_config_get_int_array_t

typedef int(* softfilter_config_get_int_array_t) (void *userdata, const char *key, int **values, unsigned *out_num_values, const int *default_values, unsigned num_default_values)

◆ softfilter_config_get_int_t

typedef int(* softfilter_config_get_int_t) (void *userdata, const char *key, int *value, int default_value)

◆ softfilter_config_get_string_t

typedef int(* softfilter_config_get_string_t) (void *userdata, const char *key, char **output, const char *default_output)

◆ softfilter_create_t

typedef void*(* softfilter_create_t) (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)

◆ softfilter_destroy_t

typedef void(* softfilter_destroy_t) (void *data)

◆ softfilter_get_implementation_t

typedef const struct softfilter_implementation*(* softfilter_get_implementation_t) (softfilter_simd_mask_t)

◆ softfilter_get_work_packets_t

typedef void(* softfilter_get_work_packets_t) (void *data, struct softfilter_work_packet *packets, void *output, size_t output_stride, const void *input, unsigned width, unsigned height, size_t input_stride)

◆ softfilter_query_input_formats_t

typedef unsigned(* softfilter_query_input_formats_t) (void)

◆ softfilter_query_num_threads_t

typedef unsigned(* softfilter_query_num_threads_t) (void *data)

◆ softfilter_query_output_formats_t

typedef unsigned(* softfilter_query_output_formats_t) (unsigned input_format)

◆ softfilter_query_output_size_t

typedef void(* softfilter_query_output_size_t) (void *data, unsigned *out_width, unsigned *out_height, unsigned width, unsigned height)

◆ softfilter_simd_mask_t

typedef unsigned softfilter_simd_mask_t

◆ softfilter_work_t

typedef void(* softfilter_work_t) (void *data, void *thread_data)

Function Documentation

◆ softfilter_get_implementation()

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