GPAC
Open Source Multimedia Framework. For more information, check out http://gpac.wp.mines-telecom.fr
|
#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 } |
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 } |
Functions | |
Drawable * | drawable_new () |
void | drawable_del (Drawable *dr) |
void | drawable_del_ex (Drawable *dr, GF_Compositor *compositor) |
void | drawable_node_del (GF_Node *node) |
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 draw_mode) |
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) |
void | drawable_draw (Drawable *drawable, GF_TraverseState *tr_state) |
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) |
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 | |
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 | ||
) |
void drawable_node_del | ( | GF_Node * | node | ) |
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 * | ) |
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 | ||
) |
void drawable_draw | ( | Drawable * | drawable, |
GF_TraverseState * | tr_state | ||
) |
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