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
visual_manager_2d.h File Reference
+ This graph shows which files directly or indirectly include this file:

Data Structures

struct  GF_RectArray
 
struct  _drawable_store
 
struct  GF_OverlayStack
 

Macros

#define gf_rect_equal(rc1, rc2)   ((rc1.width == rc2.width) && (rc1.height == rc2.height) && (rc1.x == rc2.x) && (rc1.y == rc2.y))
 
#define RA_DEFAULT_STEP   10
 
#define ra_init(ra)   { (ra)->count = 0; (ra)->alloc = RA_DEFAULT_STEP; (ra)->list = (GF_IRect*)gf_malloc(sizeof(GF_IRect)*(ra)->alloc);}
 
#define ra_del(ra)   { gf_free((ra)->list); }
 
#define ra_add(ra, rc)
 

Functions

Bool gf_irect_overlaps (GF_IRect *rc1, GF_IRect *rc2)
 
void gf_irect_intersect (GF_IRect *rc1, GF_IRect *rc2)
 
GF_Rect gf_rect_ft (GF_IRect *rc)
 
Bool gf_irect_inside (GF_IRect *rc1, GF_IRect *rc2)
 
void ra_union_rect (GF_RectArray *ra, GF_IRect *rc)
 
void ra_refresh (GF_RectArray *ra)
 
void gf_irect_union (GF_IRect *rc1, GF_IRect *rc2)
 
Bool visual_2d_draw_frame (GF_VisualManager *visual, GF_Node *root, GF_TraverseState *tr_state, Bool is_root_visual)
 
Bool visual_2d_node_cull (GF_TraverseState *tr_state, GF_Rect *bounds)
 
void visual_2d_pick_node (GF_VisualManager *visual, GF_TraverseState *tr_state, GF_Event *ev, GF_ChildNodeItem *children)
 
void visual_2d_clear_surface (GF_VisualManager *visual, GF_IRect *rc, u32 BackColor)
 
DrawableContext * visual_2d_get_drawable_context (GF_VisualManager *visual)
 
void visual_2d_remove_last_context (GF_VisualManager *visual)
 
void visual_2d_drawable_delete (GF_VisualManager *visual, Drawable *node)
 
GF_Err visual_2d_init_raster (GF_VisualManager *visual)
 
void visual_2d_release_raster (GF_VisualManager *visual)
 
void visual_2d_texture_path (GF_VisualManager *visual, GF_Path *path, DrawableContext *ctx, GF_TraverseState *tr_state)
 
void visual_2d_draw_path (GF_VisualManager *visual, GF_Path *path, DrawableContext *ctx, GF_STENCIL brush, GF_STENCIL pen, GF_TraverseState *tr_state)
 
void visual_2d_texture_path_text (GF_VisualManager *visual, DrawableContext *txt_ctx, GF_Path *path, GF_Rect *object_bounds, GF_TextureHandler *txh, GF_TraverseState *tr_state)
 
void visual_2d_fill_rect (GF_VisualManager *visual, DrawableContext *ctx, GF_Rect *rc, u32 color, u32 strike_color, GF_TraverseState *tr_state)
 
void visual_2d_texture_path_extended (GF_VisualManager *visual, GF_Path *path, GF_TextureHandler *txh, struct _drawable_context *ctx, GF_Rect *orig_bounds, GF_Matrix2D *ext_mx, GF_TraverseState *tr_state)
 
void visual_2d_draw_path_extended (GF_VisualManager *visual, GF_Path *path, DrawableContext *ctx, GF_STENCIL brush, GF_STENCIL pen, GF_TraverseState *tr_state, GF_Rect *orig_bounds, GF_Matrix2D *ext_mx)
 
Bool visual_2d_overlaps_overlay (GF_VisualManager *visual, DrawableContext *ctx, GF_TraverseState *tr_state)
 
void visual_2d_flush_overlay_areas (GF_VisualManager *visual, GF_TraverseState *tr_state)
 
void visual_2d_draw_overlays (GF_VisualManager *visual)
 

Data Structure Documentation

struct GF_RectArray
+ Collaboration diagram for GF_RectArray:
Data Fields
GF_IRect * list
u32 count
u32 alloc
struct _drawable_store
+ Collaboration diagram for _drawable_store:
Data Fields
struct _drawable * drawable
struct _drawable_store * next
struct GF_OverlayStack
+ Collaboration diagram for GF_OverlayStack:
Data Fields
struct _video_overlay * next
GF_Window src
GF_Window dst
DrawableContext * ctx
GF_RectArray ra

Macro Definition Documentation

#define gf_rect_equal (   rc1,
  rc2 
)    ((rc1.width == rc2.width) && (rc1.height == rc2.height) && (rc1.x == rc2.x) && (rc1.y == rc2.y))
#define RA_DEFAULT_STEP   10
#define ra_init (   ra)    { (ra)->count = 0; (ra)->alloc = RA_DEFAULT_STEP; (ra)->list = (GF_IRect*)gf_malloc(sizeof(GF_IRect)*(ra)->alloc);}
#define ra_del (   ra)    { gf_free((ra)->list); }
#define ra_add (   ra,
  rc 
)
Value:
{ \
if ((ra)->count==(ra)->alloc) { \
(ra)->alloc += RA_DEFAULT_STEP; \
(ra)->list = (GF_IRect*)gf_realloc((ra)->list, sizeof(GF_IRect) * (ra)->alloc); \
} \
(ra)->list[(ra)->count] = *rc; (ra)->count++; }
void * gf_realloc(void *ptr, size_t size)
Definition: alloc.c:159
pixel-aligned rectangle
Definition: math.h:329
#define RA_DEFAULT_STEP
Definition: visual_manager_2d.h:43

Function Documentation

Bool gf_irect_overlaps ( GF_IRect rc1,
GF_IRect rc2 
)

+ Here is the caller graph for this function:

void gf_irect_intersect ( GF_IRect rc1,
GF_IRect rc2 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

GF_Rect gf_rect_ft ( GF_IRect rc)

+ Here is the caller graph for this function:

Bool gf_irect_inside ( GF_IRect rc1,
GF_IRect rc2 
)

+ Here is the caller graph for this function:

void ra_union_rect ( GF_RectArray ra,
GF_IRect rc 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void ra_refresh ( GF_RectArray ra)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void gf_irect_union ( GF_IRect rc1,
GF_IRect rc2 
)

+ Here is the caller graph for this function:

Bool visual_2d_draw_frame ( GF_VisualManager *  visual,
GF_Node root,
GF_TraverseState *  tr_state,
Bool  is_root_visual 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

Bool visual_2d_node_cull ( GF_TraverseState *  tr_state,
GF_Rect bounds 
)

+ Here is the call graph for this function:

void visual_2d_pick_node ( GF_VisualManager *  visual,
GF_TraverseState *  tr_state,
GF_Event ev,
GF_ChildNodeItem children 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void visual_2d_clear_surface ( GF_VisualManager *  visual,
GF_IRect rc,
u32  BackColor 
)

+ Here is the caller graph for this function:

DrawableContext* visual_2d_get_drawable_context ( GF_VisualManager *  visual)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void visual_2d_remove_last_context ( GF_VisualManager *  visual)

+ Here is the caller graph for this function:

void visual_2d_drawable_delete ( GF_VisualManager *  visual,
Drawable *  node 
)
GF_Err visual_2d_init_raster ( GF_VisualManager *  visual)

+ Here is the caller graph for this function:

void visual_2d_release_raster ( GF_VisualManager *  visual)

+ Here is the caller graph for this function:

void visual_2d_texture_path ( GF_VisualManager *  visual,
GF_Path path,
DrawableContext *  ctx,
GF_TraverseState *  tr_state 
)

+ Here is the caller graph for this function:

void visual_2d_draw_path ( GF_VisualManager *  visual,
GF_Path path,
DrawableContext *  ctx,
GF_STENCIL  brush,
GF_STENCIL  pen,
GF_TraverseState *  tr_state 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void visual_2d_texture_path_text ( GF_VisualManager *  visual,
DrawableContext *  txt_ctx,
GF_Path path,
GF_Rect object_bounds,
GF_TextureHandler txh,
GF_TraverseState *  tr_state 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void visual_2d_fill_rect ( GF_VisualManager *  visual,
DrawableContext *  ctx,
GF_Rect rc,
u32  color,
u32  strike_color,
GF_TraverseState *  tr_state 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void visual_2d_texture_path_extended ( GF_VisualManager *  visual,
GF_Path path,
GF_TextureHandler txh,
struct _drawable_context ctx,
GF_Rect orig_bounds,
GF_Matrix2D ext_mx,
GF_TraverseState *  tr_state 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void visual_2d_draw_path_extended ( GF_VisualManager *  visual,
GF_Path path,
DrawableContext *  ctx,
GF_STENCIL  brush,
GF_STENCIL  pen,
GF_TraverseState *  tr_state,
GF_Rect orig_bounds,
GF_Matrix2D ext_mx 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

Bool visual_2d_overlaps_overlay ( GF_VisualManager *  visual,
DrawableContext *  ctx,
GF_TraverseState *  tr_state 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void visual_2d_flush_overlay_areas ( GF_VisualManager *  visual,
GF_TraverseState *  tr_state 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void visual_2d_draw_overlays ( GF_VisualManager *  visual)

+ Here is the call graph for this function:

+ Here is the caller graph for this function: