libgpac
Documentation of the core library of GPAC
stencil.c File Reference
#include "rast_soft.h"
+ Include dependency graph for stencil.c:

Macros

#define EVGGRADIENTBUFFERSIZE   (1<<EVGGRADIENTBITS)
 
#define EVGGRADIENTMAXINTPOS   EVGGRADIENTBUFFERSIZE - 1
 
#define edgeFunction_pre2(a, b_minus_a_x, b_minus_a_y)    ( (_x - a.x) * (b_minus_a_y) - (_y - a.y) * (b_minus_a_x) ) / surf->tri_area
 
#define PERSP_VARS_DECL
 
#define PERSP_APPLY
 
#define TEX_UNTRANSFORM_COORDS
 
#define USE_BILINEAR   1
 
#define GET_LE_10BIT_AS_8(_ptr)   ( (*(u16 *)(_ptr)) >> 2 )
 
#define GET_LE_10BIT_AS_16(_ptr)   ( (*(u16 *)(_ptr)) << 6 )
 
#define GET_LE_10BIT_LEFT_AS_8(_ptr)   ( (*(u16 *)(_ptr)) >> 8 )
 
#define GET_LE_10BIT_LEFT_AS_16(_ptr)   ( (*(u16 *)(_ptr)) & 0xFFC0 )
 
#define GET_BE_10BIT_AS_8(_ptr)   ( (((u16)(_ptr)[0])<<8 | (u16)(_ptr)[1] ) >> 2 )
 
#define GET_BE_10BIT_AS_16(_ptr)   ( (((u16)(_ptr)[0])<<8 | (u16)(_ptr)[1] ) << 6 )
 
#define mix_run_func(_type, _val, _shift, _R, _G, _B, _ARGB)
 
#define mixa_run_func(_type, _val, _shift, _A, _R, _G, _B, _ARGB)
 
#define repa_run_func(_type, _shift, _mask, _A)
 
#define repa_m1_run_func(_type, _val, _shift, _mask, _A)
 
#define mix_dyn_run_func(_type, _val, _shift, _A, _R, _G, _B, _ARGB)
 
#define mix_dyna_run_func(_type, _val, _shift, _A, _R, _G, _B, _ARGB)
 

Functions

static GF_EVGStencil * evg_solid_brush ()
 
static GF_EVGStencil * evg_texture_brush ()
 
static GF_EVGStencil * evg_linear_gradient_brush ()
 
static GF_EVGStencil * evg_radial_gradient_brush ()
 
GF_Color color_interpolate (u32 a, u32 b, u8 pos)
 
static void gradient_update (EVG_BaseGradient *_this)
 
static u32 gradient_get_color (EVG_BaseGradient *_this, s32 pos)
 
GF_EXPORT GF_Err gf_evg_stencil_set_gradient_interpolation (GF_EVGStencil *p, Fixed *pos, GF_Color *col, u32 count)
 
GF_EXPORT GF_Err gf_evg_stencil_push_gradient_interpolation (GF_EVGStencil *p, Fixed pos, GF_Color col)
 
GF_EXPORT GF_Err gf_evg_stencil_set_gradient_mode (GF_EVGStencil *p, GF_GradientMode mode)
 
GF_EXPORT GF_EVGStencil * gf_evg_stencil_new (GF_StencilType type)
 
GF_EXPORT void gf_evg_stencil_delete (GF_EVGStencil *st)
 
GF_EXPORT GF_Err gf_evg_stencil_set_auto_matrix (GF_EVGStencil *st, Bool auto_on)
 
GF_EXPORT Bool gf_evg_stencil_get_auto_matrix (GF_EVGStencil *st)
 
GF_EXPORT GF_Err gf_evg_stencil_set_matrix (GF_EVGStencil *st, GF_Matrix2D *mx)
 
GF_EXPORT Bool gf_evg_stencil_get_matrix (GF_EVGStencil *st, GF_Matrix2D *mx)
 
GF_EXPORT GF_StencilType gf_evg_stencil_type (GF_EVGStencil *sten)
 
static void sc_fill_run (GF_EVGStencil *p, EVGRasterCtx *rctx, s32 x, s32 y, u32 count)
 
GF_EXPORT GF_Err gf_evg_stencil_set_brush_color (GF_EVGStencil *st, GF_Color c)
 
GF_EXPORT GF_Color gf_evg_stencil_get_brush_color (GF_EVGStencil *st)
 
static void lg_fill_run (GF_EVGStencil *p, EVGRasterCtx *rctx, s32 _x, s32 _y, u32 count)
 
GF_EXPORT GF_Err gf_evg_stencil_set_linear_gradient (GF_EVGStencil *st, Fixed start_x, Fixed start_y, Fixed end_x, Fixed end_y)
 
static void rg_fill_run (GF_EVGStencil *p, EVGRasterCtx *rctx, s32 _x, s32 _y, u32 count)
 
void evg_radial_init (EVG_RadialGradient *_this)
 
GF_EXPORT GF_Err gf_evg_stencil_set_radial_gradient (GF_EVGStencil *st, Fixed cx, Fixed cy, Fixed fx, Fixed fy, Fixed x_radius, Fixed y_radius)
 
void evg_gradient_precompute (EVG_BaseGradient *grad, GF_EVGSurface *surf)
 
static GFINLINE s32 mul255 (s32 a, s32 b)
 
static u32 EVG_LERP (u32 c0, u32 c1, u8 t)
 
static GFINLINE s64 mul_wide (s64 a, s64 b)
 
static u64 EVG_LERP_WIDE (u64 c0, u64 c1, u8 t)
 
static void tex_untransform_coord (EVG_Texture *_this, s32 _x, s32 _y, Fixed *outx, Fixed *outy)
 
static u32 evg_paramtx_get_pixel (struct __evg_texture *_this, u32 x, u32 y, EVGRasterCtx *rctx)
 
u64 evg_paramtx_get_pixel_wide (struct __evg_texture *_this, u32 x, u32 y, EVGRasterCtx *rctx)
 
static void tex_fill_run_callback (GF_EVGStencil *_p, EVGRasterCtx *rctx, s32 _x, s32 _y, u32 count)
 
static void tex_fill_run_callback_wide (GF_EVGStencil *_p, EVGRasterCtx *rctx, s32 _x, s32 _y, u32 count)
 
static void tex_fill_run (GF_EVGStencil *p, EVGRasterCtx *rctx, s32 _x, s32 _y, u32 count)
 
static void tex_fill_run_straight (GF_EVGStencil *p, EVGRasterCtx *rctx, s32 _x, s32 _y, u32 count)
 
u64 evg_col_to_wide (u32 col)
 
static void tex_fill_run_wide (GF_EVGStencil *p, EVGRasterCtx *rctx, s32 _x, s32 _y, u32 count)
 
static void tex_fill_run_straight_wide (GF_EVGStencil *p, EVGRasterCtx *rctx, s32 _x, s32 _y, u32 count)
 
static void tex_fill_run_3d (GF_EVGStencil *p, EVGRasterCtx *rctx, s32 _x, s32 _y, u32 count)
 
static void tex_fill_run_3d_wide (GF_EVGStencil *p, EVGRasterCtx *rctx, s32 _x, s32 _y, u32 count)
 
u32 get_pix_argb (EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx *ctx)
 
u32 get_pix_rgba (EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx *ctx)
 
u32 get_pix_grba (EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx *ctx)
 
u32 get_pix_abgr (EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx *ctx)
 
u32 get_pix_bgra (EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx *ctx)
 
u32 get_pix_rgbx (EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx *ctx)
 
u32 get_pix_xrgb (EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx *ctx)
 
u32 get_pix_xbgr (EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx *ctx)
 
u32 get_pix_bgrx (EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx *ctx)
 
u32 get_pix_rgb_24 (EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx *ctx)
 
u32 get_pix_gbr_24 (EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx *ctx)
 
u32 get_pix_bgr_24 (EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx *ctx)
 
u32 get_pix_444 (EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx *ctx)
 
u32 get_pix_555 (EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx *ctx)
 
u32 get_pix_565 (EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx *ctx)
 
u32 get_pix_palette_alpha (EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx *ctx)
 
u32 get_pix_palette (EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx *ctx)
 
u32 get_pix_grey (EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx *ctx)
 
u32 get_pix_alphagrey (EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx *ctx)
 
u32 get_pix_greyalpha (EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx *ctx)
 
u32 get_pix_yuv420p (EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx *ctx)
 
u32 get_pix_yuv420p_10 (EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx *ctx)
 
u64 get_pix_yuv420p_10_wide (EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx *ctx)
 
u32 get_pix_yuv420p_a (EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx *ctx)
 
u32 get_pix_yuv422p (EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx *ctx)
 
u32 get_pix_yuv422p_10 (EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx *ctx)
 
u64 get_pix_yuv422p_10_wide (EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx *ctx)
 
u32 get_pix_yuv444p (EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx *ctx)
 
u32 get_pix_yuv444p_10 (EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx *ctx)
 
u64 get_pix_yuv444p_10_wide (EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx *ctx)
 
u32 get_pix_yuv444p_a (EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx *ctx)
 
u32 get_pix_yuv_nv12 (EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx *ctx)
 
u32 get_pix_yuv_nv12_10 (EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx *ctx)
 
u64 get_pix_yuv_nv12_10_wide (EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx *ctx)
 
u32 get_pix_yuv_nv21 (EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx *ctx)
 
u32 get_pix_yuv_nv21_10 (EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx *ctx)
 
u64 get_pix_yuv_nv21_10_wide (EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx *ctx)
 
u32 get_pix_yuyv (EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx *ctx)
 
u32 get_pix_yvyu (EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx *ctx)
 
u32 get_pix_uyvy (EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx *ctx)
 
u32 get_pix_vyuy (EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx *ctx)
 
u32 get_pix_yuv444_10 (EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx *ctx)
 
u64 get_pix_yuv444_10_wide (EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx *ctx)
 
u32 get_pix_v210 (EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx *ctx)
 
u64 get_pix_v210_wide (EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx *ctx)
 
u32 get_pix_yuyv_10 (EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx *ctx)
 
u64 get_pix_yuyv_10_wide (EVG_Texture *_this, u32 x, u32 y, EVGRasterCtx *ctx)
 
u64 default_get_pixel_wide (struct __evg_texture *_this, u32 x, u32 y, EVGRasterCtx *rctx)
 
static void texture_set_callbacks (EVG_Texture *_this)
 
static GF_Err gf_evg_stencil_set_texture_internal (GF_EVGStencil *st, u32 width, u32 height, GF_PixelFormat pixelFormat, const char *pixels, u32 stride, const char *u_plane, const char *v_plane, u32 uv_stride, const char *alpha_plane, u32 alpha_stride)
 
GF_EXPORT GF_Err gf_evg_stencil_set_texture_planes (GF_EVGStencil *stencil, u32 width, u32 height, GF_PixelFormat pixelFormat, const u8 *y_or_rgb, u32 stride, const u8 *u_plane, const u8 *v_plane, u32 uv_stride, const u8 *alpha_plane, u32 stride_alpha)
 
GF_EXPORT GF_Err gf_evg_stencil_set_texture (GF_EVGStencil *stencil, u8 *pixels, u32 width, u32 height, u32 stride, GF_PixelFormat pixelFormat)
 
GF_EXPORT Bool gf_evg_texture_format_ok (GF_PixelFormat pixelFormat)
 
GF_EXPORT GF_Err gf_evg_stencil_set_palette (GF_EVGStencil *stencil, const u8 *palette, u32 pix_fmt, u32 nb_cols)
 
GF_EXPORT GF_Err gf_evg_stencil_get_texture_planes (GF_EVGStencil *stencil, u8 **pY_or_RGB, u8 **pU, u8 **pV, u8 **pA, u32 *stride, u32 *stride_uv)
 
GF_EXPORT GF_Err gf_evg_stencil_set_texture_parametric (GF_EVGStencil *stencil, u32 width, u32 height, GF_PixelFormat pixelFormat, gf_evg_texture_callback callback, void *cbk_data, Bool use_screen_coords)
 
void evg_texture_init (GF_EVGStencil *p, GF_EVGSurface *surf)
 
GF_EXPORT GF_Err gf_evg_stencil_set_pad_color (GF_EVGStencil *st, GF_Color pad_color)
 
GF_EXPORT u32 gf_evg_stencil_get_pad_color (GF_EVGStencil *st)
 
GF_EXPORT GF_Err gf_evg_stencil_set_mapping (GF_EVGStencil *st, GF_TextureMapFlags mode)
 
GF_EXPORT GF_Err gf_evg_stencil_set_filter (GF_EVGStencil *st, GF_TextureFilter filter_mode)
 
GF_EXPORT GF_Err gf_evg_stencil_set_color_matrix (GF_EVGStencil *st, GF_ColorMatrix *cmat)
 
GF_EXPORT GF_Err gf_evg_stencil_get_color_matrix (GF_EVGStencil *st, GF_ColorMatrix *cmat)
 
static u32 gf_evg_stencil_get_pixel_intern (EVG_Texture *_this, s32 x, s32 y, Bool want_yuv)
 
GF_EXPORT u32 gf_evg_stencil_get_pixel (GF_EVGStencil *st, s32 x, s32 y)
 
GF_EXPORT u32 gf_evg_stencil_get_pixel_yuv (GF_EVGStencil *st, s32 x, s32 y)
 
u32 gf_evg_stencil_get_pixel_fast (GF_EVGStencil *st, s32 x, s32 y)
 
u64 gf_evg_stencil_get_pixel_wide_fast (GF_EVGStencil *st, s32 x, s32 y)
 
static u64 gf_evg_stencil_get_pixel_wide_intern (EVG_Texture *_this, s32 x, s32 y, Bool want_yuv)
 
GF_EXPORT u64 gf_evg_stencil_get_pixel_wide (GF_EVGStencil *st, s32 x, s32 y)
 
GF_EXPORT u64 gf_evg_stencil_get_pixel_yuv_wide (GF_EVGStencil *st, s32 x, s32 y)
 
static GF_Vec4 gf_evg_stencil_get_pixel_f_intern (EVG_Texture *_this, Float x, Float y, Bool want_yuv)
 
GF_EXPORT GF_Vec4 gf_evg_stencil_get_pixel_f (GF_EVGStencil *st, Float x, Float y)
 
GF_EXPORT GF_Vec4 gf_evg_stencil_get_pixel_yuv_f (GF_EVGStencil *st, Float x, Float y)
 
GF_EXPORT GF_Err gf_evg_stencil_set_alpha (GF_EVGStencil *st, u8 alpha)
 
GF_EXPORT u8 gf_evg_stencil_get_alpha (GF_EVGStencil *st)
 
void * evg_fill_run (GF_EVGStencil *p, EVGRasterCtx *rctx, EVG_Span *span, s32 y)
 
void * evg_fill_run_mask (GF_EVGStencil *p, EVGRasterCtx *rctx, EVG_Span *span, s32 y)
 
void * evg_fill_run_mask_inv (GF_EVGStencil *p, EVGRasterCtx *rctx, EVG_Span *span, s32 y)
 
void evg_fill_span_mask (int y, int count, EVG_Span *spans, GF_EVGSurface *surf, EVGRasterCtx *rctx)
 
static void mix_run (EVGRasterCtx *rctx, u32 count)
 
static void mix_run_wide (EVGRasterCtx *rctx, u32 count)
 
static void mixa_run (EVGRasterCtx *rctx, u32 count)
 
static void mixa_run_wide (EVGRasterCtx *rctx, u32 count)
 
static void replace_alpha_run_a (EVGRasterCtx *rctx, u32 count)
 
static void replace_alpha_run_a_wide (EVGRasterCtx *rctx, u32 count)
 
static void replace_alpha_run_r (EVGRasterCtx *rctx, u32 count)
 
static void replace_alpha_run_r_wide (EVGRasterCtx *rctx, u32 count)
 
static void replace_alpha_run_g (EVGRasterCtx *rctx, u32 count)
 
static void replace_alpha_run_g_wide (EVGRasterCtx *rctx, u32 count)
 
static void replace_alpha_run_b (EVGRasterCtx *rctx, u32 count)
 
static void replace_alpha_run_b_wide (EVGRasterCtx *rctx, u32 count)
 
static void replace_alpha_m1_run_a (EVGRasterCtx *rctx, u32 count)
 
static void replace_alpha_m1_run_a_wide (EVGRasterCtx *rctx, u32 count)
 
static void replace_alpha_m1_run_r (EVGRasterCtx *rctx, u32 count)
 
static void replace_alpha_m1_run_r_wide (EVGRasterCtx *rctx, u32 count)
 
static void replace_alpha_m1_run_g (EVGRasterCtx *rctx, u32 count)
 
static void replace_alpha_m1_run_g_wide (EVGRasterCtx *rctx, u32 count)
 
static void replace_alpha_m1_run_b (EVGRasterCtx *rctx, u32 count)
 
static void replace_alpha_m1_run_b_wide (EVGRasterCtx *rctx, u32 count)
 
static void mix_dyn_run_a (EVGRasterCtx *rctx, u32 count)
 
static void mix_dyn_run_a_wide (EVGRasterCtx *rctx, u32 count)
 
static void mix_dyn_run_r (EVGRasterCtx *rctx, u32 count)
 
static void mix_dyn_run_r_wide (EVGRasterCtx *rctx, u32 count)
 
static void mix_dyn_run_g (EVGRasterCtx *rctx, u32 count)
 
static void mix_dyn_run_g_wide (EVGRasterCtx *rctx, u32 count)
 
static void mix_dyn_run_b (EVGRasterCtx *rctx, u32 count)
 
static void mix_dyn_run_b_wide (EVGRasterCtx *rctx, u32 count)
 
static void mix_dyna_run_a (EVGRasterCtx *rctx, u32 count)
 
static void mix_dyna_run_a_wide (EVGRasterCtx *rctx, u32 count)
 
static void mix_dyna_run_r (EVGRasterCtx *rctx, u32 count)
 
static void mix_dyna_run_r_wide (EVGRasterCtx *rctx, u32 count)
 
static void mix_dyna_run_g (EVGRasterCtx *rctx, u32 count)
 
static void mix_dyna_run_g_wide (EVGRasterCtx *rctx, u32 count)
 
static void mix_dyna_run_b (EVGRasterCtx *rctx, u32 count)
 
static void mix_dyna_run_b_wide (EVGRasterCtx *rctx, u32 count)
 
GF_Err gf_evg_setup_multi_texture (GF_EVGSurface *surf, GF_EVGMultiTextureMode operand, GF_EVGStencil *sten2, GF_EVGStencil *sten3, Float *params)
 

Macro Definition Documentation

◆ EVGGRADIENTBUFFERSIZE

#define EVGGRADIENTBUFFERSIZE   (1<<EVGGRADIENTBITS)

◆ EVGGRADIENTMAXINTPOS

#define EVGGRADIENTMAXINTPOS   EVGGRADIENTBUFFERSIZE - 1

◆ edgeFunction_pre2

#define edgeFunction_pre2 (   a,
  b_minus_a_x,
  b_minus_a_y 
)     ( (_x - a.x) * (b_minus_a_y) - (_y - a.y) * (b_minus_a_x) ) / surf->tri_area

◆ PERSP_VARS_DECL

#define PERSP_VARS_DECL
Value:
GF_EVGSurface *surf = rctx->surf; \
Float bc1 = edgeFunction_pre2(surf->s_v2, surf->s3_m_s2_x, surf->s3_m_s2_y); \
Float bc3 = edgeFunction_pre2(surf->s_v1, surf->s2_m_s1_x, surf->s2_m_s1_y); \
Float bc1_inc = surf->s3_m_s2_y / surf->tri_area; \
Float bc3_inc = surf->s2_m_s1_y / surf->tri_area; \
Float pbc1 = bc1 * surf->s_v1.q; \
Float pbc3 = bc3 * surf->s_v3.q; \
Float pbc2 = (1.0f - bc1 - bc3) * surf->s_v2.q; \
Float pbc1_inc = bc1_inc * surf->s_v1.q; \
Float pbc3_inc = bc3_inc * surf->s_v3.q; \
Float pbc2_inc = - (bc1_inc + bc3_inc) * surf->s_v2.q; \
Float persp_denum = pbc1 + pbc2 + pbc3; \
Float pers_denum_inc = pbc1_inc + pbc2_inc + pbc3_inc;
float Float
Definition: setup.h:423
#define edgeFunction_pre2(a, b_minus_a_x, b_minus_a_y)
Definition: stencil.c:306

◆ PERSP_APPLY

#define PERSP_APPLY
Value:
Fixed ix = FLT2FIX(pbc2 / persp_denum);\
Fixed iy = FLT2FIX(pbc3 / persp_denum);\
pbc2 += pbc2_inc;\
pbc3 += pbc3_inc;\
persp_denum += pers_denum_inc;
#define FLT2FIX(v)
Float Fixed
Definition: maths.h:117

◆ TEX_UNTRANSFORM_COORDS

#define TEX_UNTRANSFORM_COORDS
Value:
x += _this->inc_x; \
y += _this->inc_y; \

◆ USE_BILINEAR

#define USE_BILINEAR   1

◆ GET_LE_10BIT_AS_8

#define GET_LE_10BIT_AS_8 (   _ptr)    ( (*(u16 *)(_ptr)) >> 2 )

◆ GET_LE_10BIT_AS_16

#define GET_LE_10BIT_AS_16 (   _ptr)    ( (*(u16 *)(_ptr)) << 6 )

◆ GET_LE_10BIT_LEFT_AS_8

#define GET_LE_10BIT_LEFT_AS_8 (   _ptr)    ( (*(u16 *)(_ptr)) >> 8 )

◆ GET_LE_10BIT_LEFT_AS_16

#define GET_LE_10BIT_LEFT_AS_16 (   _ptr)    ( (*(u16 *)(_ptr)) & 0xFFC0 )

◆ GET_BE_10BIT_AS_8

#define GET_BE_10BIT_AS_8 (   _ptr)    ( (((u16)(_ptr)[0])<<8 | (u16)(_ptr)[1] ) >> 2 )

◆ GET_BE_10BIT_AS_16

#define GET_BE_10BIT_AS_16 (   _ptr)    ( (((u16)(_ptr)[0])<<8 | (u16)(_ptr)[1] ) << 6 )

◆ mix_run_func

#define mix_run_func (   _type,
  _val,
  _shift,
  _R,
  _G,
  _B,
  _ARGB 
)
Value:
u32 r1, g1, b1, r2, g2, b2; \
u32 mix = rctx->surf->mix_val; \
u32 imix = _val - mix; \
u32 i=0; \
_type col1, col2, *col1p = rctx->stencil_pix_run, *col2p = rctx->stencil_pix_run2; \
if (!mix) return; \
if (!imix) return;\
\
while (i<count) { \
col1 = col1p[i]; \
col2 = col2p[i]; \
r1 = _R(col1); \
g1 = _G(col1); \
b1 = _B(col1); \
r2 = _R(col2); \
g2 = _G(col2); \
b2 = _B(col2); \
r1 = (r1 * imix + r2 * mix) >> _shift; \
g1 = (g1 * imix + g2 * mix) >> _shift; \
b1 = (b1 * imix + b2 * mix) >> _shift; \
col1p[i] = _ARGB(_val, r1, g1, b1); \
i++; \
} \
uint32_t u32
Definition: setup.h:326

◆ mixa_run_func

#define mixa_run_func (   _type,
  _val,
  _shift,
  _A,
  _R,
  _G,
  _B,
  _ARGB 
)
Value:
u32 a1, r1, g1, b1, a2, r2, g2, b2; \
u32 mix = rctx->surf->mix_val; \
u32 imix = _val - mix; \
u32 i=0; \
_type col1, col2, *col1p = rctx->stencil_pix_run, *col2p = rctx->stencil_pix_run2; \
if (!mix) return; \
if (!imix) return; \
\
while (i<count) { \
col1 = col1p[i]; \
col2 = col2p[i]; \
a1 = _A(col1); \
r1 = _R(col1); \
g1 = _G(col1); \
b1 = _B(col1); \
a2 = _A(col2); \
r2 = _R(col2); \
g2 = _G(col2); \
b2 = _B(col2); \
a1 = (a1 * imix + a2 * mix) >> _shift; \
r1 = (r1 * imix + r2 * mix) >> _shift; \
g1 = (g1 * imix + g2 * mix) >> _shift; \
b1 = (b1 * imix + b2 * mix) >> _shift; \
col1p[i] = _ARGB(a1, r1, g1, b1); \
i++; \
} \

◆ repa_run_func

#define repa_run_func (   _type,
  _shift,
  _mask,
  _A 
)
Value:
u32 i=0; \
_type a2, col1, col2, *col1p = rctx->stencil_pix_run, *col2p = rctx->stencil_pix_run2; \
\
while (i<count) { \
col1 = col1p[i]; \
col2 = col2p[i]; \
a2 = _A(col2);\
col1p[i] = (a2<<_shift) | (col1 & _mask);\
i++; \
} \

◆ repa_m1_run_func

#define repa_m1_run_func (   _type,
  _val,
  _shift,
  _mask,
  _A 
)
Value:
u32 i=0; \
_type a2, col1, col2, *col1p = rctx->stencil_pix_run, *col2p = rctx->stencil_pix_run2; \
\
while (i<count) { \
col1 = col1p[i]; \
col2 = col2p[i]; \
a2 = _val - _A(col2);\
col1p[i] = (a2<<_shift) | (col1 & _mask);\
i++; \
} \

◆ mix_dyn_run_func

#define mix_dyn_run_func (   _type,
  _val,
  _shift,
  _A,
  _R,
  _G,
  _B,
  _ARGB 
)
Value:
u32 r1, g1, b1, r2, g2, b2; \
u32 i=0; \
_type col1, col2, *col1p = rctx->stencil_pix_run, *col2p = rctx->stencil_pix_run2, *col3p = rctx->stencil_pix_run3; \
\
while (i<count) { \
u32 mix = _A(col3p[i]); \
u32 imix = _val - mix; \
col1 = col1p[i]; \
col2 = col2p[i]; \
r1 = _R(col1); \
g1 = _G(col1); \
b1 = _B(col1); \
r2 = _R(col2); \
g2 = _G(col2); \
b2 = _B(col2); \
r1 = (r1 * imix + r2 * mix) >> _shift; \
g1 = (g1 * imix + g2 * mix) >> _shift; \
b1 = (b1 * imix + b2 * mix) >> _shift; \
col1p[i] = _ARGB(_val, r1, g1, b1); \
i++; \
} \

◆ mix_dyna_run_func

#define mix_dyna_run_func (   _type,
  _val,
  _shift,
  _A,
  _R,
  _G,
  _B,
  _ARGB 
)
Value:
u32 a1, r1, g1, b1, a2, r2, g2, b2; \
u32 i=0; \
_type col1, col2, *col1p = rctx->stencil_pix_run, *col2p = rctx->stencil_pix_run2, *col3p = rctx->stencil_pix_run3; \
\
while (i<count) { \
u32 mix = _A(col3p[i]); \
u32 imix = _val - mix; \
col1 = col1p[i]; \
col2 = col2p[i]; \
a1 = _A(col1); \
r1 = _R(col1); \
g1 = _G(col1); \
b1 = _B(col1); \
a2 = _A(col2); \
r2 = _R(col2); \
g2 = _G(col2); \
b2 = _B(col2); \
a1 = (a1 * imix + a2 * mix) >> _shift; \
r1 = (r1 * imix + r2 * mix) >> _shift; \
g1 = (g1 * imix + g2 * mix) >> _shift; \
b1 = (b1 * imix + b2 * mix) >> _shift; \
col1p[i] = _ARGB(a1, r1, g1, b1); \
i++; \
} \

Function Documentation

◆ evg_solid_brush()

static GF_EVGStencil * evg_solid_brush ( )
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ evg_texture_brush()

GF_EVGStencil * evg_texture_brush ( )
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ evg_linear_gradient_brush()

static GF_EVGStencil * evg_linear_gradient_brush ( )
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ evg_radial_gradient_brush()

static GF_EVGStencil * evg_radial_gradient_brush ( )
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ color_interpolate()

GF_Color color_interpolate ( u32  a,
u32  b,
u8  pos 
)
+ Here is the caller graph for this function:

◆ gradient_update()

static void gradient_update ( EVG_BaseGradient _this)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gradient_get_color()

static u32 gradient_get_color ( EVG_BaseGradient _this,
s32  pos 
)
static
+ Here is the caller graph for this function:

◆ sc_fill_run()

static void sc_fill_run ( GF_EVGStencil *  p,
EVGRasterCtx *  rctx,
s32  x,
s32  y,
u32  count 
)
static
+ Here is the caller graph for this function:

◆ lg_fill_run()

static void lg_fill_run ( GF_EVGStencil *  p,
EVGRasterCtx *  rctx,
s32  _x,
s32  _y,
u32  count 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ rg_fill_run()

static void rg_fill_run ( GF_EVGStencil *  p,
EVGRasterCtx *  rctx,
s32  _x,
s32  _y,
u32  count 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ evg_radial_init()

void evg_radial_init ( EVG_RadialGradient _this)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ evg_gradient_precompute()

void evg_gradient_precompute ( EVG_BaseGradient grad,
GF_EVGSurface *  surf 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ mul255()

static GFINLINE s32 mul255 ( s32  a,
s32  b 
)
static
+ Here is the caller graph for this function:

◆ EVG_LERP()

static u32 EVG_LERP ( u32  c0,
u32  c1,
u8  t 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ mul_wide()

static GFINLINE s64 mul_wide ( s64  a,
s64  b 
)
static
+ Here is the caller graph for this function:

◆ EVG_LERP_WIDE()

static u64 EVG_LERP_WIDE ( u64  c0,
u64  c1,
u8  t 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ tex_untransform_coord()

static void tex_untransform_coord ( EVG_Texture _this,
s32  _x,
s32  _y,
Fixed outx,
Fixed outy 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ evg_paramtx_get_pixel()

static u32 evg_paramtx_get_pixel ( struct __evg_texture *  _this,
u32  x,
u32  y,
EVGRasterCtx *  rctx 
)
static
+ Here is the caller graph for this function:

◆ evg_paramtx_get_pixel_wide()

u64 evg_paramtx_get_pixel_wide ( struct __evg_texture *  _this,
u32  x,
u32  y,
EVGRasterCtx *  rctx 
)
+ Here is the caller graph for this function:

◆ tex_fill_run_callback()

static void tex_fill_run_callback ( GF_EVGStencil *  _p,
EVGRasterCtx *  rctx,
s32  _x,
s32  _y,
u32  count 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ tex_fill_run_callback_wide()

static void tex_fill_run_callback_wide ( GF_EVGStencil *  _p,
EVGRasterCtx *  rctx,
s32  _x,
s32  _y,
u32  count 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ tex_fill_run()

static void tex_fill_run ( GF_EVGStencil *  p,
EVGRasterCtx *  rctx,
s32  _x,
s32  _y,
u32  count 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ tex_fill_run_straight()

static void tex_fill_run_straight ( GF_EVGStencil *  p,
EVGRasterCtx *  rctx,
s32  _x,
s32  _y,
u32  count 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ evg_col_to_wide()

u64 evg_col_to_wide ( u32  col)
+ Here is the caller graph for this function:

◆ tex_fill_run_wide()

static void tex_fill_run_wide ( GF_EVGStencil *  p,
EVGRasterCtx *  rctx,
s32  _x,
s32  _y,
u32  count 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ tex_fill_run_straight_wide()

static void tex_fill_run_straight_wide ( GF_EVGStencil *  p,
EVGRasterCtx *  rctx,
s32  _x,
s32  _y,
u32  count 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ tex_fill_run_3d()

static void tex_fill_run_3d ( GF_EVGStencil *  p,
EVGRasterCtx *  rctx,
s32  _x,
s32  _y,
u32  count 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ tex_fill_run_3d_wide()

static void tex_fill_run_3d_wide ( GF_EVGStencil *  p,
EVGRasterCtx *  rctx,
s32  _x,
s32  _y,
u32  count 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ get_pix_argb()

u32 get_pix_argb ( EVG_Texture _this,
u32  x,
u32  y,
EVGRasterCtx *  ctx 
)
+ Here is the caller graph for this function:

◆ get_pix_rgba()

u32 get_pix_rgba ( EVG_Texture _this,
u32  x,
u32  y,
EVGRasterCtx *  ctx 
)
+ Here is the caller graph for this function:

◆ get_pix_grba()

u32 get_pix_grba ( EVG_Texture _this,
u32  x,
u32  y,
EVGRasterCtx *  ctx 
)
+ Here is the caller graph for this function:

◆ get_pix_abgr()

u32 get_pix_abgr ( EVG_Texture _this,
u32  x,
u32  y,
EVGRasterCtx *  ctx 
)
+ Here is the caller graph for this function:

◆ get_pix_bgra()

u32 get_pix_bgra ( EVG_Texture _this,
u32  x,
u32  y,
EVGRasterCtx *  ctx 
)
+ Here is the caller graph for this function:

◆ get_pix_rgbx()

u32 get_pix_rgbx ( EVG_Texture _this,
u32  x,
u32  y,
EVGRasterCtx *  ctx 
)
+ Here is the caller graph for this function:

◆ get_pix_xrgb()

u32 get_pix_xrgb ( EVG_Texture _this,
u32  x,
u32  y,
EVGRasterCtx *  ctx 
)
+ Here is the caller graph for this function:

◆ get_pix_xbgr()

u32 get_pix_xbgr ( EVG_Texture _this,
u32  x,
u32  y,
EVGRasterCtx *  ctx 
)
+ Here is the caller graph for this function:

◆ get_pix_bgrx()

u32 get_pix_bgrx ( EVG_Texture _this,
u32  x,
u32  y,
EVGRasterCtx *  ctx 
)
+ Here is the caller graph for this function:

◆ get_pix_rgb_24()

u32 get_pix_rgb_24 ( EVG_Texture _this,
u32  x,
u32  y,
EVGRasterCtx *  ctx 
)
+ Here is the caller graph for this function:

◆ get_pix_gbr_24()

u32 get_pix_gbr_24 ( EVG_Texture _this,
u32  x,
u32  y,
EVGRasterCtx *  ctx 
)
+ Here is the caller graph for this function:

◆ get_pix_bgr_24()

u32 get_pix_bgr_24 ( EVG_Texture _this,
u32  x,
u32  y,
EVGRasterCtx *  ctx 
)
+ Here is the caller graph for this function:

◆ get_pix_444()

u32 get_pix_444 ( EVG_Texture _this,
u32  x,
u32  y,
EVGRasterCtx *  ctx 
)
+ Here is the caller graph for this function:

◆ get_pix_555()

u32 get_pix_555 ( EVG_Texture _this,
u32  x,
u32  y,
EVGRasterCtx *  ctx 
)
+ Here is the caller graph for this function:

◆ get_pix_565()

u32 get_pix_565 ( EVG_Texture _this,
u32  x,
u32  y,
EVGRasterCtx *  ctx 
)
+ Here is the caller graph for this function:

◆ get_pix_palette_alpha()

u32 get_pix_palette_alpha ( EVG_Texture _this,
u32  x,
u32  y,
EVGRasterCtx *  ctx 
)
+ Here is the caller graph for this function:

◆ get_pix_palette()

u32 get_pix_palette ( EVG_Texture _this,
u32  x,
u32  y,
EVGRasterCtx *  ctx 
)
+ Here is the caller graph for this function:

◆ get_pix_grey()

u32 get_pix_grey ( EVG_Texture _this,
u32  x,
u32  y,
EVGRasterCtx *  ctx 
)
+ Here is the caller graph for this function:

◆ get_pix_alphagrey()

u32 get_pix_alphagrey ( EVG_Texture _this,
u32  x,
u32  y,
EVGRasterCtx *  ctx 
)
+ Here is the caller graph for this function:

◆ get_pix_greyalpha()

u32 get_pix_greyalpha ( EVG_Texture _this,
u32  x,
u32  y,
EVGRasterCtx *  ctx 
)
+ Here is the caller graph for this function:

◆ get_pix_yuv420p()

u32 get_pix_yuv420p ( EVG_Texture _this,
u32  x,
u32  y,
EVGRasterCtx *  ctx 
)
+ Here is the caller graph for this function:

◆ get_pix_yuv420p_10()

u32 get_pix_yuv420p_10 ( EVG_Texture _this,
u32  x,
u32  y,
EVGRasterCtx *  ctx 
)
+ Here is the caller graph for this function:

◆ get_pix_yuv420p_10_wide()

u64 get_pix_yuv420p_10_wide ( EVG_Texture _this,
u32  x,
u32  y,
EVGRasterCtx *  ctx 
)
+ Here is the caller graph for this function:

◆ get_pix_yuv420p_a()

u32 get_pix_yuv420p_a ( EVG_Texture _this,
u32  x,
u32  y,
EVGRasterCtx *  ctx 
)
+ Here is the caller graph for this function:

◆ get_pix_yuv422p()

u32 get_pix_yuv422p ( EVG_Texture _this,
u32  x,
u32  y,
EVGRasterCtx *  ctx 
)
+ Here is the caller graph for this function:

◆ get_pix_yuv422p_10()

u32 get_pix_yuv422p_10 ( EVG_Texture _this,
u32  x,
u32  y,
EVGRasterCtx *  ctx 
)
+ Here is the caller graph for this function:

◆ get_pix_yuv422p_10_wide()

u64 get_pix_yuv422p_10_wide ( EVG_Texture _this,
u32  x,
u32  y,
EVGRasterCtx *  ctx 
)
+ Here is the caller graph for this function:

◆ get_pix_yuv444p()

u32 get_pix_yuv444p ( EVG_Texture _this,
u32  x,
u32  y,
EVGRasterCtx *  ctx 
)
+ Here is the caller graph for this function:

◆ get_pix_yuv444p_10()

u32 get_pix_yuv444p_10 ( EVG_Texture _this,
u32  x,
u32  y,
EVGRasterCtx *  ctx 
)
+ Here is the caller graph for this function:

◆ get_pix_yuv444p_10_wide()

u64 get_pix_yuv444p_10_wide ( EVG_Texture _this,
u32  x,
u32  y,
EVGRasterCtx *  ctx 
)
+ Here is the caller graph for this function:

◆ get_pix_yuv444p_a()

u32 get_pix_yuv444p_a ( EVG_Texture _this,
u32  x,
u32  y,
EVGRasterCtx *  ctx 
)
+ Here is the caller graph for this function:

◆ get_pix_yuv_nv12()

u32 get_pix_yuv_nv12 ( EVG_Texture _this,
u32  x,
u32  y,
EVGRasterCtx *  ctx 
)
+ Here is the caller graph for this function:

◆ get_pix_yuv_nv12_10()

u32 get_pix_yuv_nv12_10 ( EVG_Texture _this,
u32  x,
u32  y,
EVGRasterCtx *  ctx 
)
+ Here is the caller graph for this function:

◆ get_pix_yuv_nv12_10_wide()

u64 get_pix_yuv_nv12_10_wide ( EVG_Texture _this,
u32  x,
u32  y,
EVGRasterCtx *  ctx 
)
+ Here is the caller graph for this function:

◆ get_pix_yuv_nv21()

u32 get_pix_yuv_nv21 ( EVG_Texture _this,
u32  x,
u32  y,
EVGRasterCtx *  ctx 
)
+ Here is the caller graph for this function:

◆ get_pix_yuv_nv21_10()

u32 get_pix_yuv_nv21_10 ( EVG_Texture _this,
u32  x,
u32  y,
EVGRasterCtx *  ctx 
)
+ Here is the caller graph for this function:

◆ get_pix_yuv_nv21_10_wide()

u64 get_pix_yuv_nv21_10_wide ( EVG_Texture _this,
u32  x,
u32  y,
EVGRasterCtx *  ctx 
)
+ Here is the caller graph for this function:

◆ get_pix_yuyv()

u32 get_pix_yuyv ( EVG_Texture _this,
u32  x,
u32  y,
EVGRasterCtx *  ctx 
)
+ Here is the caller graph for this function:

◆ get_pix_yvyu()

u32 get_pix_yvyu ( EVG_Texture _this,
u32  x,
u32  y,
EVGRasterCtx *  ctx 
)
+ Here is the caller graph for this function:

◆ get_pix_uyvy()

u32 get_pix_uyvy ( EVG_Texture _this,
u32  x,
u32  y,
EVGRasterCtx *  ctx 
)
+ Here is the caller graph for this function:

◆ get_pix_vyuy()

u32 get_pix_vyuy ( EVG_Texture _this,
u32  x,
u32  y,
EVGRasterCtx *  ctx 
)
+ Here is the caller graph for this function:

◆ get_pix_yuv444_10()

u32 get_pix_yuv444_10 ( EVG_Texture _this,
u32  x,
u32  y,
EVGRasterCtx *  ctx 
)
+ Here is the caller graph for this function:

◆ get_pix_yuv444_10_wide()

u64 get_pix_yuv444_10_wide ( EVG_Texture _this,
u32  x,
u32  y,
EVGRasterCtx *  ctx 
)
+ Here is the caller graph for this function:

◆ get_pix_v210()

u32 get_pix_v210 ( EVG_Texture _this,
u32  x,
u32  y,
EVGRasterCtx *  ctx 
)
+ Here is the caller graph for this function:

◆ get_pix_v210_wide()

u64 get_pix_v210_wide ( EVG_Texture _this,
u32  x,
u32  y,
EVGRasterCtx *  ctx 
)
+ Here is the caller graph for this function:

◆ get_pix_yuyv_10()

u32 get_pix_yuyv_10 ( EVG_Texture _this,
u32  x,
u32  y,
EVGRasterCtx *  ctx 
)
+ Here is the caller graph for this function:

◆ get_pix_yuyv_10_wide()

u64 get_pix_yuyv_10_wide ( EVG_Texture _this,
u32  x,
u32  y,
EVGRasterCtx *  ctx 
)
+ Here is the caller graph for this function:

◆ default_get_pixel_wide()

u64 default_get_pixel_wide ( struct __evg_texture *  _this,
u32  x,
u32  y,
EVGRasterCtx *  rctx 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ texture_set_callbacks()

static void texture_set_callbacks ( EVG_Texture _this)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_evg_stencil_set_texture_internal()

static GF_Err gf_evg_stencil_set_texture_internal ( GF_EVGStencil *  st,
u32  width,
u32  height,
GF_PixelFormat  pixelFormat,
const char *  pixels,
u32  stride,
const char *  u_plane,
const char *  v_plane,
u32  uv_stride,
const char *  alpha_plane,
u32  alpha_stride 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_evg_stencil_get_texture_planes()

GF_EXPORT GF_Err gf_evg_stencil_get_texture_planes ( GF_EVGStencil *  stencil,
u8 **  pY_or_RGB,
u8 **  pU,
u8 **  pV,
u8 **  pA,
u32 stride,
u32 stride_uv 
)

◆ evg_texture_init()

void evg_texture_init ( GF_EVGStencil *  p,
GF_EVGSurface *  surf 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_evg_stencil_get_pixel_intern()

static u32 gf_evg_stencil_get_pixel_intern ( EVG_Texture _this,
s32  x,
s32  y,
Bool  want_yuv 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_evg_stencil_get_pixel_fast()

u32 gf_evg_stencil_get_pixel_fast ( GF_EVGStencil *  st,
s32  x,
s32  y 
)

◆ gf_evg_stencil_get_pixel_wide_fast()

u64 gf_evg_stencil_get_pixel_wide_fast ( GF_EVGStencil *  st,
s32  x,
s32  y 
)

◆ gf_evg_stencil_get_pixel_wide_intern()

static u64 gf_evg_stencil_get_pixel_wide_intern ( EVG_Texture _this,
s32  x,
s32  y,
Bool  want_yuv 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_evg_stencil_get_pixel_f_intern()

static GF_Vec4 gf_evg_stencil_get_pixel_f_intern ( EVG_Texture _this,
Float  x,
Float  y,
Bool  want_yuv 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ evg_fill_run()

void* evg_fill_run ( GF_EVGStencil *  p,
EVGRasterCtx *  rctx,
EVG_Span span,
s32  y 
)
+ Here is the caller graph for this function:

◆ evg_fill_run_mask()

void* evg_fill_run_mask ( GF_EVGStencil *  p,
EVGRasterCtx *  rctx,
EVG_Span span,
s32  y 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ evg_fill_run_mask_inv()

void* evg_fill_run_mask_inv ( GF_EVGStencil *  p,
EVGRasterCtx *  rctx,
EVG_Span span,
s32  y 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ evg_fill_span_mask()

void evg_fill_span_mask ( int  y,
int  count,
EVG_Span spans,
GF_EVGSurface *  surf,
EVGRasterCtx *  rctx 
)
+ Here is the caller graph for this function:

◆ mix_run()

static void mix_run ( EVGRasterCtx *  rctx,
u32  count 
)
static
+ Here is the caller graph for this function:

◆ mix_run_wide()

static void mix_run_wide ( EVGRasterCtx *  rctx,
u32  count 
)
static
+ Here is the caller graph for this function:

◆ mixa_run()

static void mixa_run ( EVGRasterCtx *  rctx,
u32  count 
)
static
+ Here is the caller graph for this function:

◆ mixa_run_wide()

static void mixa_run_wide ( EVGRasterCtx *  rctx,
u32  count 
)
static
+ Here is the caller graph for this function:

◆ replace_alpha_run_a()

static void replace_alpha_run_a ( EVGRasterCtx *  rctx,
u32  count 
)
static
+ Here is the caller graph for this function:

◆ replace_alpha_run_a_wide()

static void replace_alpha_run_a_wide ( EVGRasterCtx *  rctx,
u32  count 
)
static
+ Here is the caller graph for this function:

◆ replace_alpha_run_r()

static void replace_alpha_run_r ( EVGRasterCtx *  rctx,
u32  count 
)
static
+ Here is the caller graph for this function:

◆ replace_alpha_run_r_wide()

static void replace_alpha_run_r_wide ( EVGRasterCtx *  rctx,
u32  count 
)
static
+ Here is the caller graph for this function:

◆ replace_alpha_run_g()

static void replace_alpha_run_g ( EVGRasterCtx *  rctx,
u32  count 
)
static
+ Here is the caller graph for this function:

◆ replace_alpha_run_g_wide()

static void replace_alpha_run_g_wide ( EVGRasterCtx *  rctx,
u32  count 
)
static
+ Here is the caller graph for this function:

◆ replace_alpha_run_b()

static void replace_alpha_run_b ( EVGRasterCtx *  rctx,
u32  count 
)
static
+ Here is the caller graph for this function:

◆ replace_alpha_run_b_wide()

static void replace_alpha_run_b_wide ( EVGRasterCtx *  rctx,
u32  count 
)
static
+ Here is the caller graph for this function:

◆ replace_alpha_m1_run_a()

static void replace_alpha_m1_run_a ( EVGRasterCtx *  rctx,
u32  count 
)
static
+ Here is the caller graph for this function:

◆ replace_alpha_m1_run_a_wide()

static void replace_alpha_m1_run_a_wide ( EVGRasterCtx *  rctx,
u32  count 
)
static
+ Here is the caller graph for this function:

◆ replace_alpha_m1_run_r()

static void replace_alpha_m1_run_r ( EVGRasterCtx *  rctx,
u32  count 
)
static
+ Here is the caller graph for this function:

◆ replace_alpha_m1_run_r_wide()

static void replace_alpha_m1_run_r_wide ( EVGRasterCtx *  rctx,
u32  count 
)
static
+ Here is the caller graph for this function:

◆ replace_alpha_m1_run_g()

static void replace_alpha_m1_run_g ( EVGRasterCtx *  rctx,
u32  count 
)
static
+ Here is the caller graph for this function:

◆ replace_alpha_m1_run_g_wide()

static void replace_alpha_m1_run_g_wide ( EVGRasterCtx *  rctx,
u32  count 
)
static
+ Here is the caller graph for this function:

◆ replace_alpha_m1_run_b()

static void replace_alpha_m1_run_b ( EVGRasterCtx *  rctx,
u32  count 
)
static
+ Here is the caller graph for this function:

◆ replace_alpha_m1_run_b_wide()

static void replace_alpha_m1_run_b_wide ( EVGRasterCtx *  rctx,
u32  count 
)
static
+ Here is the caller graph for this function:

◆ mix_dyn_run_a()

static void mix_dyn_run_a ( EVGRasterCtx *  rctx,
u32  count 
)
static
+ Here is the caller graph for this function:

◆ mix_dyn_run_a_wide()

static void mix_dyn_run_a_wide ( EVGRasterCtx *  rctx,
u32  count 
)
static
+ Here is the caller graph for this function:

◆ mix_dyn_run_r()

static void mix_dyn_run_r ( EVGRasterCtx *  rctx,
u32  count 
)
static
+ Here is the caller graph for this function:

◆ mix_dyn_run_r_wide()

static void mix_dyn_run_r_wide ( EVGRasterCtx *  rctx,
u32  count 
)
static
+ Here is the caller graph for this function:

◆ mix_dyn_run_g()

static void mix_dyn_run_g ( EVGRasterCtx *  rctx,
u32  count 
)
static
+ Here is the caller graph for this function:

◆ mix_dyn_run_g_wide()

static void mix_dyn_run_g_wide ( EVGRasterCtx *  rctx,
u32  count 
)
static
+ Here is the caller graph for this function:

◆ mix_dyn_run_b()

static void mix_dyn_run_b ( EVGRasterCtx *  rctx,
u32  count 
)
static
+ Here is the caller graph for this function:

◆ mix_dyn_run_b_wide()

static void mix_dyn_run_b_wide ( EVGRasterCtx *  rctx,
u32  count 
)
static
+ Here is the caller graph for this function:

◆ mix_dyna_run_a()

static void mix_dyna_run_a ( EVGRasterCtx *  rctx,
u32  count 
)
static
+ Here is the caller graph for this function:

◆ mix_dyna_run_a_wide()

static void mix_dyna_run_a_wide ( EVGRasterCtx *  rctx,
u32  count 
)
static
+ Here is the caller graph for this function:

◆ mix_dyna_run_r()

static void mix_dyna_run_r ( EVGRasterCtx *  rctx,
u32  count 
)
static
+ Here is the caller graph for this function:

◆ mix_dyna_run_r_wide()

static void mix_dyna_run_r_wide ( EVGRasterCtx *  rctx,
u32  count 
)
static
+ Here is the caller graph for this function:

◆ mix_dyna_run_g()

static void mix_dyna_run_g ( EVGRasterCtx *  rctx,
u32  count 
)
static
+ Here is the caller graph for this function:

◆ mix_dyna_run_g_wide()

static void mix_dyna_run_g_wide ( EVGRasterCtx *  rctx,
u32  count 
)
static
+ Here is the caller graph for this function:

◆ mix_dyna_run_b()

static void mix_dyna_run_b ( EVGRasterCtx *  rctx,
u32  count 
)
static
+ Here is the caller graph for this function:

◆ mix_dyna_run_b_wide()

static void mix_dyna_run_b_wide ( EVGRasterCtx *  rctx,
u32  count 
)
static
+ Here is the caller graph for this function:

◆ gf_evg_setup_multi_texture()

GF_Err gf_evg_setup_multi_texture ( GF_EVGSurface *  surf,
GF_EVGMultiTextureMode  operand,
GF_EVGStencil *  sten2,
GF_EVGStencil *  sten3,
Float params 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function: