libgpac
Documentation of the core library of GPAC
|
#include <gpac/internal/compositor_dev.h>
Data Structures | |
struct | BoundInfo |
struct | DRInfo |
struct | Drawable |
struct | DrawAspect2D |
struct | DrawableContext |
struct | StrikeInfo2D |
Macros | |
#define | CTX_3DTYPE_MASK 0x7800 |
#define | CTX_REDRAW_MASK 0x00000003 |
Enumerations | |
enum | { DRAWABLE_USE_TRAVERSE_DRAW = 1 , DRAWABLE_HAS_CHANGED = 1<<1 , DRAWABLE_HAS_CHANGED_IN_LAST_TRAVERSE = 1<<2 , DRAWABLE_DRAWN_ON_VISUAL = 1<<3 , DRAWABLE_REGISTERED_WITH_VISUAL = 1<<4 , DRAWABLE_IS_OVERLAY = 1<<5 , DRAWABLE_IS_CACHED = 1<<6 , DRAWABLE_HYBGL_INIT = 1<<7 } |
enum | { CTX_APP_DIRTY = 1 , CTX_TEXTURE_DIRTY = 1<<1 , CTX_HAS_APPEARANCE = 1<<2 , CTX_IS_TRANSPARENT = 1<<3 , CTX_IS_TEXT = 1<<4 , CTX_IS_BACKGROUND = 1<<5 , CTX_NO_ANTIALIAS = 1<<6 , CTX_PATH_FILLED = 1<<7 , CTX_PATH_STROKE = 1<<8 , CTX_SVG_OUTLINE_GEOMETRY_DIRTY = 1<<9 , CTX_FLIPED_COORDS = 1<<10 , CTX_HYBOGL_NO_CLEAR = 1<<11 , CTX_BACKROUND_NOT_LAYER = 1<<12 , CTX_BACKROUND_NO_CLEAR = 1<<13 } |
Functions | |
Drawable * | drawable_new () |
void | drawable_del (Drawable *dr) |
void | drawable_del_ex (Drawable *dr, GF_Compositor *compositor, Bool no_free) |
void | drawable_node_del (GF_Node *node) |
void | drawable_init_ex (Drawable *tmp) |
void | drawable_finalize_sort (DrawableContext *ctx, GF_TraverseState *tr_state, GF_Rect *orig_bounds) |
void | drawable_finalize_sort_ex (DrawableContext *ctx, GF_TraverseState *tr_state, GF_Rect *orig_bounds, Bool skip_focus) |
Drawable * | drawable_stack_new (GF_Compositor *compositor, GF_Node *node) |
void | drawable_reset_path (Drawable *st) |
void | drawable_reset_path_outline (Drawable *st) |
void | drawable_mark_modified (Drawable *st, GF_TraverseState *tr_state) |
void | drawable_check_focus_highlight (GF_Node *node, GF_TraverseState *tr_state, GF_Rect *orig_bounds) |
void | drawable_reset_group_highlight (GF_TraverseState *tr_state, GF_Node *n) |
Bool | drawable_flush_bounds (Drawable *node, GF_VisualManager *on_visual, u32 mode2d) |
Bool | drawable_has_same_bounds (DrawableContext *ctx, GF_VisualManager *visual) |
Bool | drawable_get_previous_bound (Drawable *node, GF_IRect *rc, GF_VisualManager *visual) |
void | drawable_reset_bounds (Drawable *dr, GF_VisualManager *visual) |
void | drawable_check_bounds (DrawableContext *ctx, GF_VisualManager *visual) |
void | drawable_traverse_focus (GF_Node *node, void *rs, Bool is_destroy) |
u32 | drawable_get_aspect_2d_mpeg4 (GF_Node *node, DrawAspect2D *asp, GF_TraverseState *tr_state) |
Bool | drawable_get_aspect_2d_svg (GF_Node *node, DrawAspect2D *asp, GF_TraverseState *tr_state) |
DrawableContext * | NewDrawableContext () |
void | DeleteDrawableContext (DrawableContext *) |
void | drawctx_reset (DrawableContext *ctx) |
void | drawctx_update_info (DrawableContext *ctx, GF_VisualManager *visual) |
DrawableContext * | drawable_init_context_mpeg4 (Drawable *node, GF_TraverseState *tr_state) |
DrawableContext * | drawable_init_context_svg (Drawable *drawable, GF_TraverseState *tr_state, SVG_ClipPath *clip_path) |
void | drawable_draw (Drawable *drawable, GF_TraverseState *tr_state) |
void | call_drawable_draw (DrawableContext *ctx, GF_TraverseState *tr_state, Bool set_cyclic) |
void | vrml_drawable_pick (Drawable *drawable, GF_TraverseState *tr_state) |
void | svg_drawable_pick (GF_Node *node, Drawable *drawable, GF_TraverseState *tr_state) |
void | delete_strikeinfo2d (StrikeInfo2D *info) |
StrikeInfo2D * | drawable_get_strikeinfo (GF_Compositor *compositor, Drawable *drawable, DrawAspect2D *asp, GF_Node *appear, GF_Path *path, u32 svg_flags, GF_TraverseState *tr_state) |
void | drawable_compute_line_scale (GF_TraverseState *tr_state, DrawAspect2D *asp) |
Bool | svg_drawable_is_over (Drawable *drawable, Fixed x, Fixed y, DrawAspect2D *asp, GF_TraverseState *tr_state, GF_Rect *glyph_rc) |
void | drawable_check_texture_dirty (DrawableContext *ctx, Drawable *drawable, GF_TraverseState *tr_state) |
struct BoundInfo |
struct DRInfo |
struct _drawable |
struct _draw_aspect_2d |
Data Fields | ||
---|---|---|
GF_Color | fill_color | |
GF_Color | line_color | |
Fixed | line_scale | |
GF_PenSettings | pen_props | |
struct _gf_sc_texture_handler * | fill_texture | |
struct _gf_sc_texture_handler * | line_texture |
struct _drawable_context |
Data Fields | ||
---|---|---|
struct _drawable_context * | next | |
u16 | flags | |
s16 | sub_path_index | |
Drawable * | drawable | |
BoundInfo * | bi | |
DrawAspect2D | aspect | |
GF_Matrix2D | transform | |
GF_ColorMatrix * | col_mat | |
GF_Node * | appear | |
GF_Node * | cliper | |
Fixed | depth_gain | |
Fixed | depth_offset |
struct StrikeInfo2D |
#define CTX_3DTYPE_MASK 0x7800 |
#define CTX_REDRAW_MASK 0x00000003 |
anonymous enum |
anonymous enum |
Drawable* drawable_new | ( | ) |
void drawable_del | ( | Drawable * | dr | ) |
void drawable_del_ex | ( | Drawable * | dr, |
GF_Compositor * | compositor, | ||
Bool | no_free | ||
) |
void drawable_node_del | ( | GF_Node * | node | ) |
void drawable_init_ex | ( | Drawable * | tmp | ) |
void drawable_finalize_sort | ( | DrawableContext * | ctx, |
GF_TraverseState * | tr_state, | ||
GF_Rect * | orig_bounds | ||
) |
void drawable_finalize_sort_ex | ( | DrawableContext * | ctx, |
GF_TraverseState * | tr_state, | ||
GF_Rect * | orig_bounds, | ||
Bool | skip_focus | ||
) |
Drawable* drawable_stack_new | ( | GF_Compositor * | compositor, |
GF_Node * | node | ||
) |
void drawable_reset_path | ( | Drawable * | st | ) |
void drawable_reset_path_outline | ( | Drawable * | st | ) |
void drawable_mark_modified | ( | Drawable * | st, |
GF_TraverseState * | tr_state | ||
) |
void drawable_check_focus_highlight | ( | GF_Node * | node, |
GF_TraverseState * | tr_state, | ||
GF_Rect * | orig_bounds | ||
) |
void drawable_reset_group_highlight | ( | GF_TraverseState * | tr_state, |
GF_Node * | n | ||
) |
Bool drawable_has_same_bounds | ( | DrawableContext * | ctx, |
GF_VisualManager * | visual | ||
) |
void drawable_reset_bounds | ( | Drawable * | dr, |
GF_VisualManager * | visual | ||
) |
void drawable_check_bounds | ( | DrawableContext * | ctx, |
GF_VisualManager * | visual | ||
) |
u32 drawable_get_aspect_2d_mpeg4 | ( | GF_Node * | node, |
DrawAspect2D * | asp, | ||
GF_TraverseState * | tr_state | ||
) |
DrawableContext* NewDrawableContext | ( | ) |
void DeleteDrawableContext | ( | DrawableContext * | ctx | ) |
void drawctx_reset | ( | DrawableContext * | ctx | ) |
void drawctx_update_info | ( | DrawableContext * | ctx, |
GF_VisualManager * | visual | ||
) |
DrawableContext* drawable_init_context_mpeg4 | ( | Drawable * | node, |
GF_TraverseState * | tr_state | ||
) |
DrawableContext* drawable_init_context_svg | ( | Drawable * | drawable, |
GF_TraverseState * | tr_state, | ||
SVG_ClipPath * | clip_path | ||
) |
void drawable_draw | ( | Drawable * | drawable, |
GF_TraverseState * | tr_state | ||
) |
void call_drawable_draw | ( | DrawableContext * | ctx, |
GF_TraverseState * | tr_state, | ||
Bool | set_cyclic | ||
) |
void vrml_drawable_pick | ( | Drawable * | drawable, |
GF_TraverseState * | tr_state | ||
) |
void svg_drawable_pick | ( | GF_Node * | node, |
Drawable * | drawable, | ||
GF_TraverseState * | tr_state | ||
) |
void delete_strikeinfo2d | ( | StrikeInfo2D * | info | ) |
StrikeInfo2D* drawable_get_strikeinfo | ( | GF_Compositor * | compositor, |
Drawable * | drawable, | ||
DrawAspect2D * | asp, | ||
GF_Node * | appear, | ||
GF_Path * | path, | ||
u32 | svg_flags, | ||
GF_TraverseState * | tr_state | ||
) |
void drawable_compute_line_scale | ( | GF_TraverseState * | tr_state, |
DrawAspect2D * | asp | ||
) |
Bool svg_drawable_is_over | ( | Drawable * | drawable, |
Fixed | x, | ||
Fixed | y, | ||
DrawAspect2D * | asp, | ||
GF_TraverseState * | tr_state, | ||
GF_Rect * | glyph_rc | ||
) |
!watchout!! asp2D.width is 0 if stroke not visible due to painting properties - we must override this for picking
void drawable_check_texture_dirty | ( | DrawableContext * | ctx, |
Drawable * | drawable, | ||
GF_TraverseState * | tr_state | ||
) |