GPAC
Open Source Multimedia Framework. For more information, check out http://gpac.wp.mines-telecom.fr
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups
rast_soft.h File Reference
+ Include dependency graph for rast_soft.h:
+ This graph shows which files directly or indirectly include this file:

Data Structures

struct  EVGStencil
 
struct  EVG_Outline
 
struct  EVG_Span
 
struct  EVG_Raster_Params
 
struct  EVGSurface
 
struct  EVG_Brush
 
struct  EVG_BaseGradient
 
struct  EVG_LinearGradient
 
struct  EVG_RadialGradient
 
struct  EVG_Texture
 

Macros

#define EVGBASESTENCIL
 
#define INLINE_POINT_CONVERSION
 
#define EVG_Raster_Span_Func   EVG_SpanFunc
 
#define EVGGRADIENTSLOTS   12
 
#define EVGGRADIENTBITS   10
 
#define EVGGRADIENT
 
#define GF_TEXTURE_FILTER_DEFAULT   GF_TEXTURE_FILTER_HIGH_SPEED
 

Typedefs

typedef struct __vec2f EVG_Vector
 
typedef struct TRaster_ * EVG_Raster
 
typedef void(* EVG_SpanFunc )(int y, int count, EVG_Span *spans, void *user)
 

Functions

EVG_Raster evg_raster_new ()
 
void evg_raster_del (EVG_Raster raster)
 
int evg_raster_render (EVG_Raster raster, EVG_Raster_Params *params)
 
void evg_radial_init (EVG_RadialGradient *_this)
 
void evg_bmp_init (EVGStencil *p)
 
void evg_set_texture_active (EVGStencil *st)
 
GF_STENCIL evg_stencil_new (GF_Raster2D *, GF_StencilType type)
 
void evg_stencil_delete (GF_STENCIL st)
 
GF_Err evg_stencil_set_matrix (GF_STENCIL st, GF_Matrix2D *mx)
 
GF_Err evg_stencil_set_brush_color (GF_STENCIL st, GF_Color c)
 
GF_Err evg_stencil_set_linear_gradient (GF_STENCIL st, Fixed start_x, Fixed start_y, Fixed end_x, Fixed end_y)
 
GF_Err evg_stencil_set_radial_gradient (GF_STENCIL st, Fixed cx, Fixed cy, Fixed fx, Fixed fy, Fixed x_radius, Fixed y_radius)
 
GF_Err evg_stencil_set_gradient_interpolation (GF_STENCIL p, Fixed *pos, GF_Color *col, u32 count)
 
GF_Err evg_stencil_set_gradient_mode (GF_STENCIL p, GF_GradientMode mode)
 
GF_Err evg_stencil_set_alpha (GF_STENCIL st, u8 alpha)
 
GF_Err evg_stencil_set_texture (GF_STENCIL st, char *pixels, u32 width, u32 height, u32 stride, GF_PixelFormat pixelFormat, GF_PixelFormat destination_format_hint, Bool no_copy)
 
GF_Err evg_stencil_set_tiling (GF_STENCIL st, GF_TextureTiling mode)
 
GF_Err evg_stencil_set_filter (GF_STENCIL st, GF_TextureFilter filter_mode)
 
GF_Err evg_stencil_set_color_matrix (GF_STENCIL st, GF_ColorMatrix *cmat)
 
GF_Err evg_stencil_reset_color_matrix (GF_STENCIL st)
 
GF_Err evg_stencil_create_texture (GF_STENCIL st, u32 width, u32 height, GF_PixelFormat pixelFormat)
 
GF_SURFACE evg_surface_new (GF_Raster2D *, Bool center_coords)
 
void evg_surface_delete (GF_SURFACE _this)
 
void evg_surface_detach (GF_SURFACE _this)
 
GF_Err evg_surface_attach_to_buffer (GF_SURFACE _this, char *pixels, u32 width, u32 height, s32 pitch_x, s32 pitch_y, GF_PixelFormat pixelFormat)
 
GF_Err evg_surface_attach_to_texture (GF_SURFACE _this, GF_STENCIL sten)
 
GF_Err evg_surface_attach_to_callbacks (GF_SURFACE _this, GF_RasterCallback *callbacks, u32 width, u32 height)
 
GF_Err evg_surface_set_matrix (GF_SURFACE surf, GF_Matrix2D *mat)
 
GF_Err evg_surface_set_raster_level (GF_SURFACE surf, GF_RasterLevel RasterSetting)
 
GF_Err evg_surface_set_clipper (GF_SURFACE surf, GF_IRect *rc)
 
GF_Err evg_surface_set_path (GF_SURFACE surf, GF_Path *gp)
 
GF_Err evg_surface_fill (GF_SURFACE surf, GF_STENCIL stencil)
 
GF_Err evg_surface_clear (GF_SURFACE surf, GF_IRect *rc, u32 color)
 
void evg_bgra_fill_const (s32 y, s32 count, EVG_Span *spans, EVGSurface *surf)
 
void evg_bgra_fill_const_a (s32 y, s32 count, EVG_Span *spans, EVGSurface *surf)
 
void evg_bgra_fill_var (s32 y, s32 count, EVG_Span *spans, EVGSurface *surf)
 
GF_Err evg_surface_clear_bgra (GF_SURFACE surf, GF_IRect rc, GF_Color col)
 
void evg_rgba_fill_const (s32 y, s32 count, EVG_Span *spans, EVGSurface *surf)
 
void evg_rgba_fill_const_a (s32 y, s32 count, EVG_Span *spans, EVGSurface *surf)
 
void evg_rgba_fill_var (s32 y, s32 count, EVG_Span *spans, EVGSurface *surf)
 
GF_Err evg_surface_clear_rgba (GF_SURFACE surf, GF_IRect rc, GF_Color col)
 
void evg_bgrx_fill_const (s32 y, s32 count, EVG_Span *spans, EVGSurface *surf)
 
void evg_bgrx_fill_const_a (s32 y, s32 count, EVG_Span *spans, EVGSurface *surf)
 
void evg_bgrx_fill_var (s32 y, s32 count, EVG_Span *spans, EVGSurface *surf)
 
void evg_rgbx_fill_const (s32 y, s32 count, EVG_Span *spans, EVGSurface *surf)
 
void evg_rgbx_fill_const_a (s32 y, s32 count, EVG_Span *spans, EVGSurface *surf)
 
void evg_rgbx_fill_var (s32 y, s32 count, EVG_Span *spans, EVGSurface *surf)
 
GF_Err evg_surface_clear_rgbx (GF_SURFACE surf, GF_IRect rc, GF_Color col)
 
void evg_rgb_fill_const (s32 y, s32 count, EVG_Span *spans, EVGSurface *surf)
 
void evg_rgb_fill_const_a (s32 y, s32 count, EVG_Span *spans, EVGSurface *surf)
 
void evg_rgb_fill_var (s32 y, s32 count, EVG_Span *spans, EVGSurface *surf)
 
GF_Err evg_surface_clear_rgb (GF_SURFACE surf, GF_IRect rc, GF_Color col)
 
void evg_bgr_fill_const (s32 y, s32 count, EVG_Span *spans, EVGSurface *surf)
 
void evg_bgr_fill_const_a (s32 y, s32 count, EVG_Span *spans, EVGSurface *surf)
 
void evg_bgr_fill_var (s32 y, s32 count, EVG_Span *spans, EVGSurface *surf)
 
GF_Err evg_surface_clear_bgr (GF_SURFACE surf, GF_IRect rc, GF_Color col)
 
void evg_565_fill_const (s32 y, s32 count, EVG_Span *spans, EVGSurface *surf)
 
void evg_565_fill_const_a (s32 y, s32 count, EVG_Span *spans, EVGSurface *surf)
 
void evg_565_fill_var (s32 y, s32 count, EVG_Span *spans, EVGSurface *surf)
 
GF_Err evg_surface_clear_565 (GF_SURFACE _this, GF_IRect rc, GF_Color col)
 
void evg_user_fill_const (s32 y, s32 count, EVG_Span *spans, EVGSurface *surf)
 
void evg_user_fill_const_a (s32 y, s32 count, EVG_Span *spans, EVGSurface *surf)
 
void evg_user_fill_var (s32 y, s32 count, EVG_Span *spans, EVGSurface *surf)
 
GF_Err evg_surface_clear_user (GF_SURFACE surf, GF_IRect rc, GF_Color col)
 

Data Structure Documentation

struct EVG_Outline
+ Collaboration diagram for EVG_Outline:
Data Fields
s32 n_contours
s32 n_points
EVG_Vector * points
u8 * tags
s32 * contours
s32 flags
struct EVG_Span
+ Collaboration diagram for EVG_Span:
Data Fields
short x
unsigned short len
unsigned char coverage
struct EVG_Raster_Params
+ Collaboration diagram for EVG_Raster_Params:
Data Fields
EVG_Outline * source
GF_Matrix2D * mx
EVG_SpanFunc gray_spans
s32 clip_xMin
s32 clip_yMin
s32 clip_xMax
s32 clip_yMax
void * user

Macro Definition Documentation

#define EVGBASESTENCIL
Value:
u32 type; \
void (*fill_run)(struct _evg_base_stencil *p, EVGSurface *surf, s32 x, s32 y, u32 count); \
GF_Matrix2D pmat; \
GF_Matrix2D smat; \
GF_Rect frame; \
GF_ColorMatrix cmat; \
uint32_t u32
Definition: setup.h:246
int32_t s32
Definition: setup.h:250
#define INLINE_POINT_CONVERSION
#define EVG_Raster_Span_Func   EVG_SpanFunc
#define EVGGRADIENTSLOTS   12
#define EVGGRADIENTBITS   10
#define EVGGRADIENT
Value:
s32 mod; \
u8 alpha; \
#define EVGGRADIENTSLOTS
Definition: rast_soft.h:187
Float Fixed
Definition: math.h:122
uint32_t u32
Definition: setup.h:246
uint8_t u8
Definition: setup.h:248
int32_t s32
Definition: setup.h:250
#define EVGGRADIENTBITS
Definition: rast_soft.h:190
#define GF_TEXTURE_FILTER_DEFAULT   GF_TEXTURE_FILTER_HIGH_SPEED

Typedef Documentation

typedef struct __vec2f EVG_Vector
typedef struct TRaster_* EVG_Raster
typedef void(* EVG_SpanFunc)(int y, int count, EVG_Span *spans, void *user)

Function Documentation

EVG_Raster evg_raster_new ( )

+ Here is the caller graph for this function:

void evg_raster_del ( EVG_Raster  raster)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

int evg_raster_render ( EVG_Raster  raster,
EVG_Raster_Params params 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void evg_radial_init ( EVG_RadialGradient _this)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void evg_bmp_init ( EVGStencil p)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void evg_set_texture_active ( EVGStencil st)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

GF_STENCIL evg_stencil_new ( GF_Raster2D ,
GF_StencilType  type 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void evg_stencil_delete ( GF_STENCIL  st)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

GF_Err evg_stencil_set_matrix ( GF_STENCIL  st,
GF_Matrix2D mx 
)

+ Here is the caller graph for this function:

GF_Err evg_stencil_set_brush_color ( GF_STENCIL  st,
GF_Color  c 
)

+ Here is the caller graph for this function:

GF_Err evg_stencil_set_linear_gradient ( GF_STENCIL  st,
Fixed  start_x,
Fixed  start_y,
Fixed  end_x,
Fixed  end_y 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

GF_Err evg_stencil_set_radial_gradient ( GF_STENCIL  st,
Fixed  cx,
Fixed  cy,
Fixed  fx,
Fixed  fy,
Fixed  x_radius,
Fixed  y_radius 
)

+ Here is the caller graph for this function:

GF_Err evg_stencil_set_gradient_interpolation ( GF_STENCIL  p,
Fixed pos,
GF_Color col,
u32  count 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

GF_Err evg_stencil_set_gradient_mode ( GF_STENCIL  p,
GF_GradientMode  mode 
)

+ Here is the caller graph for this function:

GF_Err evg_stencil_set_alpha ( GF_STENCIL  st,
u8  alpha 
)

+ Here is the caller graph for this function:

GF_Err evg_stencil_set_texture ( GF_STENCIL  st,
char *  pixels,
u32  width,
u32  height,
u32  stride,
GF_PixelFormat  pixelFormat,
GF_PixelFormat  destination_format_hint,
Bool  no_copy 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

GF_Err evg_stencil_set_tiling ( GF_STENCIL  st,
GF_TextureTiling  mode 
)

+ Here is the caller graph for this function:

GF_Err evg_stencil_set_filter ( GF_STENCIL  st,
GF_TextureFilter  filter_mode 
)

+ Here is the caller graph for this function:

GF_Err evg_stencil_set_color_matrix ( GF_STENCIL  st,
GF_ColorMatrix cmat 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

GF_Err evg_stencil_reset_color_matrix ( GF_STENCIL  st)
GF_Err evg_stencil_create_texture ( GF_STENCIL  st,
u32  width,
u32  height,
GF_PixelFormat  pixelFormat 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

GF_SURFACE evg_surface_new ( GF_Raster2D ,
Bool  center_coords 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void evg_surface_delete ( GF_SURFACE  _this)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void evg_surface_detach ( GF_SURFACE  _this)

+ Here is the caller graph for this function:

GF_Err evg_surface_attach_to_buffer ( GF_SURFACE  _this,
char *  pixels,
u32  width,
u32  height,
s32  pitch_x,
s32  pitch_y,
GF_PixelFormat  pixelFormat 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

GF_Err evg_surface_attach_to_texture ( GF_SURFACE  _this,
GF_STENCIL  sten 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

GF_Err evg_surface_attach_to_callbacks ( GF_SURFACE  _this,
GF_RasterCallback callbacks,
u32  width,
u32  height 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

GF_Err evg_surface_set_matrix ( GF_SURFACE  surf,
GF_Matrix2D mat 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

GF_Err evg_surface_set_raster_level ( GF_SURFACE  surf,
GF_RasterLevel  RasterSetting 
)

+ Here is the caller graph for this function:

GF_Err evg_surface_set_clipper ( GF_SURFACE  surf,
GF_IRect rc 
)

+ Here is the caller graph for this function:

GF_Err evg_surface_set_path ( GF_SURFACE  surf,
GF_Path gp 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

GF_Err evg_surface_fill ( GF_SURFACE  surf,
GF_STENCIL  stencil 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

GF_Err evg_surface_clear ( GF_SURFACE  surf,
GF_IRect rc,
u32  color 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void evg_bgra_fill_const ( s32  y,
s32  count,
EVG_Span spans,
EVGSurface *  surf 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void evg_bgra_fill_const_a ( s32  y,
s32  count,
EVG_Span spans,
EVGSurface *  surf 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void evg_bgra_fill_var ( s32  y,
s32  count,
EVG_Span spans,
EVGSurface *  surf 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

GF_Err evg_surface_clear_bgra ( GF_SURFACE  surf,
GF_IRect  rc,
GF_Color  col 
)

+ Here is the caller graph for this function:

void evg_rgba_fill_const ( s32  y,
s32  count,
EVG_Span spans,
EVGSurface *  surf 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void evg_rgba_fill_const_a ( s32  y,
s32  count,
EVG_Span spans,
EVGSurface *  surf 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void evg_rgba_fill_var ( s32  y,
s32  count,
EVG_Span spans,
EVGSurface *  surf 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

GF_Err evg_surface_clear_rgba ( GF_SURFACE  surf,
GF_IRect  rc,
GF_Color  col 
)

+ Here is the caller graph for this function:

void evg_bgrx_fill_const ( s32  y,
s32  count,
EVG_Span spans,
EVGSurface *  surf 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void evg_bgrx_fill_const_a ( s32  y,
s32  count,
EVG_Span spans,
EVGSurface *  surf 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void evg_bgrx_fill_var ( s32  y,
s32  count,
EVG_Span spans,
EVGSurface *  surf 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void evg_rgbx_fill_const ( s32  y,
s32  count,
EVG_Span spans,
EVGSurface *  surf 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void evg_rgbx_fill_const_a ( s32  y,
s32  count,
EVG_Span spans,
EVGSurface *  surf 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void evg_rgbx_fill_var ( s32  y,
s32  count,
EVG_Span spans,
EVGSurface *  surf 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

GF_Err evg_surface_clear_rgbx ( GF_SURFACE  surf,
GF_IRect  rc,
GF_Color  col 
)

+ Here is the caller graph for this function:

void evg_rgb_fill_const ( s32  y,
s32  count,
EVG_Span spans,
EVGSurface *  surf 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void evg_rgb_fill_const_a ( s32  y,
s32  count,
EVG_Span spans,
EVGSurface *  surf 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void evg_rgb_fill_var ( s32  y,
s32  count,
EVG_Span spans,
EVGSurface *  surf 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

GF_Err evg_surface_clear_rgb ( GF_SURFACE  surf,
GF_IRect  rc,
GF_Color  col 
)

+ Here is the caller graph for this function:

void evg_bgr_fill_const ( s32  y,
s32  count,
EVG_Span spans,
EVGSurface *  surf 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void evg_bgr_fill_const_a ( s32  y,
s32  count,
EVG_Span spans,
EVGSurface *  surf 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void evg_bgr_fill_var ( s32  y,
s32  count,
EVG_Span spans,
EVGSurface *  surf 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

GF_Err evg_surface_clear_bgr ( GF_SURFACE  surf,
GF_IRect  rc,
GF_Color  col 
)

+ Here is the caller graph for this function:

void evg_565_fill_const ( s32  y,
s32  count,
EVG_Span spans,
EVGSurface *  surf 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void evg_565_fill_const_a ( s32  y,
s32  count,
EVG_Span spans,
EVGSurface *  surf 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void evg_565_fill_var ( s32  y,
s32  count,
EVG_Span spans,
EVGSurface *  surf 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

GF_Err evg_surface_clear_565 ( GF_SURFACE  _this,
GF_IRect  rc,
GF_Color  col 
)

+ Here is the caller graph for this function:

void evg_user_fill_const ( s32  y,
s32  count,
EVG_Span spans,
EVGSurface *  surf 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void evg_user_fill_const_a ( s32  y,
s32  count,
EVG_Span spans,
EVGSurface *  surf 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void evg_user_fill_var ( s32  y,
s32  count,
EVG_Span spans,
EVGSurface *  surf 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

GF_Err evg_surface_clear_user ( GF_SURFACE  surf,
GF_IRect  rc,
GF_Color  col 
)