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
base_scenegraph.c File Reference
+ Include dependency graph for base_scenegraph.c:

Functions

static void ReplaceDEFNode (GF_Node *FromNode, GF_Node *node, GF_Node *newNode, Bool updateOrderedGroup)
 
static void ReplaceIRINode (GF_Node *FromNode, GF_Node *oldNode, GF_Node *newNode)
 
static void node_modif_stub (GF_SceneGraph *sg, GF_Node *node, GF_FieldInfo *info, GF_Node *script)
 
GF_SceneGraph * gf_sg_new ()
 
GF_SceneGraph * gf_sg_new_subscene (GF_SceneGraph *scene)
 
void gf_sg_set_node_callback (GF_SceneGraph *sg, void(*NodeCallback)(void *user_priv, u32 type, GF_Node *node, void *ctxdata))
 
void gf_sg_set_scene_time_callback (GF_SceneGraph *sg, Double(*GetSceneTime)(void *user_priv))
 
Double gf_node_get_scene_time (GF_Node *node)
 
void gf_sg_del (GF_SceneGraph *sg)
 
void SG_GraphRemoved (GF_Node *node, GF_SceneGraph *sg)
 
GF_NodeSG_SearchForNode (GF_SceneGraph *sg, GF_Node *node)
 
static u32 get_num_id_nodes (GF_SceneGraph *sg)
 
void gf_sg_reset (GF_SceneGraph *sg)
 
GF_NodeSG_SearchForDuplicateNodeID (GF_SceneGraph *sg, u32 nodeID, GF_Node *toExclude)
 
void * gf_node_get_name_address (GF_Node *node)
 
void gf_sg_set_private (GF_SceneGraph *sg, void *ptr)
 
void * gf_sg_get_private (GF_SceneGraph *sg)
 
void gf_sg_set_scene_size_info (GF_SceneGraph *sg, u32 width, u32 height, Bool usePixelMetrics)
 
Bool gf_sg_use_pixel_metrics (GF_SceneGraph *sg)
 
Bool gf_sg_get_scene_size_info (GF_SceneGraph *sg, u32 *width, u32 *height)
 
GF_Nodegf_sg_get_root_node (GF_SceneGraph *sg)
 
void gf_sg_set_root_node (GF_SceneGraph *sg, GF_Node *node)
 
void remove_node_id (GF_SceneGraph *sg, GF_Node *node)
 
GF_Err gf_node_try_destroy (GF_SceneGraph *sg, GF_Node *pNode, GF_Node *parentNode)
 
GF_Err gf_node_unregister (GF_Node *pNode, GF_Node *parentNode)
 
GF_Err gf_node_register (GF_Node *node, GF_Node *parentNode)
 
static void Replace_IRI (GF_SceneGraph *sg, GF_Node *old_node, GF_Node *newNode)
 
GF_Err gf_node_replace (GF_Node *node, GF_Node *new_node, Bool updateOrderedGroup)
 
static void insert_node_def (GF_SceneGraph *sg, GF_Node *def, u32 ID, const char *name)
 
GF_Err gf_node_set_id (GF_Node *p, u32 ID, const char *name)
 
GF_Err gf_node_remove_id (GF_Node *p)
 
void gf_node_traverse (GF_Node *node, void *renderStack)
 
void gf_node_allow_cyclic_traverse (GF_Node *node)
 
Bool gf_node_set_cyclic_traverse_flag (GF_Node *node, Bool on)
 
void gf_node_traverse_children (GF_Node *node, void *renderStack)
 
GF_SceneGraph * gf_node_get_graph (GF_Node *node)
 
GF_Nodegf_sg_find_node (GF_SceneGraph *sg, u32 nodeID)
 
GF_Nodegf_sg_find_node_by_name (GF_SceneGraph *sg, char *name)
 
u32 gf_sg_get_next_available_node_id (GF_SceneGraph *sg)
 
u32 gf_sg_get_max_node_id (GF_SceneGraph *sg)
 
void gf_node_setup (GF_Node *p, u32 tag)
 
GF_Nodegf_sg_new_base_node ()
 
u32 gf_node_get_tag (GF_Node *p)
 
u32 gf_node_get_id (GF_Node *p)
 
const char * gf_node_get_name (GF_Node *p)
 
const char * gf_node_get_name_and_id (GF_Node *p, u32 *id)
 
void * gf_node_get_private (GF_Node *p)
 
void gf_node_set_private (GF_Node *p, void *pr)
 
GF_Err gf_node_set_callback_function (GF_Node *p, void(*TraverseNode)(GF_Node *node, void *render_stack, Bool is_destroy))
 
void gf_sg_parent_setup (GF_Node *node)
 
void gf_node_unregister_children (GF_Node *container, GF_ChildNodeItem *child)
 
GF_Err gf_node_list_insert_child (GF_ChildNodeItem **list, GF_Node *n, u32 pos)
 
GF_Nodegf_node_list_get_child (GF_ChildNodeItem *list, s32 pos)
 
s32 gf_node_list_find_child (GF_ChildNodeItem *list, GF_Node *n)
 
GF_Err gf_node_list_add_child (GF_ChildNodeItem **list, GF_Node *n)
 
GF_Err gf_node_list_add_child_last (GF_ChildNodeItem **list, GF_Node *n, GF_ChildNodeItem **last_child)
 
Bool gf_node_list_del_child (GF_ChildNodeItem **list, GF_Node *n)
 
GF_Nodegf_node_list_del_child_idx (GF_ChildNodeItem **list, u32 pos)
 
u32 gf_node_list_get_count (GF_ChildNodeItem *list)
 
void gf_sg_parent_reset (GF_Node *node)
 
void gf_node_free (GF_Node *node)
 
u32 gf_node_get_parent_count (GF_Node *node)
 
GF_Nodegf_node_get_parent (GF_Node *node, u32 idx)
 
static void dirty_children (GF_Node *node)
 
static void dirty_parents (GF_Node *node)
 
void gf_node_dirty_parent_graph (GF_Node *node)
 
void gf_node_dirty_set (GF_Node *node, u32 flags, Bool and_dirty_parents)
 
void gf_node_dirty_parents (GF_Node *node)
 
void gf_node_dirty_clear (GF_Node *node, u32 flag_to_remove)
 
u32 gf_node_dirty_get (GF_Node *node)
 
void gf_node_dirty_reset (GF_Node *node, Bool reset_children)
 
void gf_node_init (GF_Node *node)
 
void gf_node_changed_internal (GF_Node *node, GF_FieldInfo *field, Bool notify_scripts)
 
void gf_node_changed (GF_Node *node, GF_FieldInfo *field)
 
void gf_node_del (GF_Node *node)
 
u32 gf_node_get_field_count (GF_Node *node)
 
const char * gf_node_get_class_name (GF_Node *node)
 
u32 gf_sg_node_get_tag_by_class_name (const char *name, u32 ns)
 
GF_Nodegf_node_new (GF_SceneGraph *inScene, u32 tag)
 
GF_Err gf_node_get_field (GF_Node *node, u32 FieldIndex, GF_FieldInfo *info)
 
u32 gf_node_get_num_instances (GF_Node *node)
 
static GF_Err gf_node_get_field_by_name_enum (GF_Node *node, char *name, GF_FieldInfo *field)
 
GF_Err gf_node_get_field_by_name (GF_Node *node, char *name, GF_FieldInfo *field)
 
const char * gf_node_get_log_name (GF_Node *anim)
 
static GF_Err gf_node_deactivate_ex (GF_Node *node)
 
GF_Err gf_node_deactivate (GF_Node *node)
 
static u32 gf_node_activate_ex (GF_Node *node)
 
GF_Err gf_node_activate (GF_Node *node)
 
GF_Nodegf_node_clone (GF_SceneGraph *inScene, GF_Node *orig, GF_Node *cloned_parent, char *id, Bool deep)
 
u32 gf_xml_get_namespace_id (char *name)
 
GF_Err gf_sg_add_namespace (GF_SceneGraph *sg, char *name, char *qname)
 
GF_Err gf_sg_remove_namespace (GF_SceneGraph *sg, char *ns_name, char *q_name)
 
u32 gf_sg_get_namespace_code (GF_SceneGraph *sg, char *qname)
 
u32 gf_sg_get_namespace_code_from_name (GF_SceneGraph *sg, char *name)
 
const char * gf_sg_get_namespace_qname (GF_SceneGraph *sg, u32 xmlns_id)
 
const char * gf_sg_get_namespace (GF_SceneGraph *sg, u32 xmlns_id)
 
char * gf_node_dump_attribute (GF_Node *n, GF_FieldInfo *info)
 
GF_Err gf_node_replace_child (GF_Node *node, GF_ChildNodeItem **container, s32 pos, GF_Node *newNode)
 
Bool gf_node_parent_of (GF_Node *node, GF_Node *target)
 

Variables

static char log_node_name [2+16+1]
 

Function Documentation

static void ReplaceDEFNode ( GF_Node FromNode,
GF_Node node,
GF_Node newNode,
Bool  updateOrderedGroup 
)
static

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static void ReplaceIRINode ( GF_Node FromNode,
GF_Node oldNode,
GF_Node newNode 
)
static

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static void node_modif_stub ( GF_SceneGraph *  sg,
GF_Node node,
GF_FieldInfo info,
GF_Node script 
)
static

+ Here is the caller graph for this function:

GF_SceneGraph* gf_sg_new ( )

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

GF_SceneGraph* gf_sg_new_subscene ( GF_SceneGraph *  scene)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void gf_sg_set_node_callback ( GF_SceneGraph *  sg,
void(*)(void *user_priv, u32 type, GF_Node *node, void *ctxdata)  NodeCallback 
)

+ Here is the caller graph for this function:

void gf_sg_set_scene_time_callback ( GF_SceneGraph *  sg,
Double(*)(void *user_priv)  GetSceneTime 
)

+ Here is the caller graph for this function:

Double gf_node_get_scene_time ( GF_Node node)

+ Here is the caller graph for this function:

void gf_sg_del ( GF_SceneGraph *  sg)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void SG_GraphRemoved ( GF_Node node,
GF_SceneGraph *  sg 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

GF_Node* SG_SearchForNode ( GF_SceneGraph *  sg,
GF_Node node 
)

+ Here is the caller graph for this function:

static u32 get_num_id_nodes ( GF_SceneGraph *  sg)
static

+ Here is the caller graph for this function:

void gf_sg_reset ( GF_SceneGraph *  sg)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

GF_Node* SG_SearchForDuplicateNodeID ( GF_SceneGraph *  sg,
u32  nodeID,
GF_Node toExclude 
)
void* gf_node_get_name_address ( GF_Node node)
void gf_sg_set_private ( GF_SceneGraph *  sg,
void *  ptr 
)

+ Here is the caller graph for this function:

void* gf_sg_get_private ( GF_SceneGraph *  sg)

+ Here is the caller graph for this function:

void gf_sg_set_scene_size_info ( GF_SceneGraph *  sg,
u32  width,
u32  height,
Bool  usePixelMetrics 
)

+ Here is the caller graph for this function:

Bool gf_sg_use_pixel_metrics ( GF_SceneGraph *  sg)

+ Here is the caller graph for this function:

Bool gf_sg_get_scene_size_info ( GF_SceneGraph *  sg,
u32 width,
u32 height 
)

+ Here is the caller graph for this function:

GF_Node* gf_sg_get_root_node ( GF_SceneGraph *  sg)

+ Here is the caller graph for this function:

void gf_sg_set_root_node ( GF_SceneGraph *  sg,
GF_Node node 
)

+ Here is the caller graph for this function:

void remove_node_id ( GF_SceneGraph *  sg,
GF_Node node 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

GF_Err gf_node_try_destroy ( GF_SceneGraph *  sg,
GF_Node pNode,
GF_Node parentNode 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

GF_Err gf_node_unregister ( GF_Node pNode,
GF_Node parentNode 
)

+ Here is the call graph for this function:

GF_Err gf_node_register ( GF_Node node,
GF_Node parentNode 
)

+ Here is the call graph for this function:

static void Replace_IRI ( GF_SceneGraph *  sg,
GF_Node old_node,
GF_Node newNode 
)
static

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

GF_Err gf_node_replace ( GF_Node node,
GF_Node new_node,
Bool  updateOrderedGroup 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static void insert_node_def ( GF_SceneGraph *  sg,
GF_Node def,
u32  ID,
const char *  name 
)
static

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

GF_Err gf_node_set_id ( GF_Node p,
u32  ID,
const char *  name 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

GF_Err gf_node_remove_id ( GF_Node p)

+ Here is the call graph for this function:

void gf_node_traverse ( GF_Node node,
void *  renderStack 
)

+ Here is the call graph for this function:

void gf_node_allow_cyclic_traverse ( GF_Node node)

+ Here is the caller graph for this function:

Bool gf_node_set_cyclic_traverse_flag ( GF_Node node,
Bool  on 
)

+ Here is the caller graph for this function:

void gf_node_traverse_children ( GF_Node node,
void *  renderStack 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

GF_SceneGraph* gf_node_get_graph ( GF_Node node)
GF_Node* gf_sg_find_node ( GF_SceneGraph *  sg,
u32  nodeID 
)

+ Here is the caller graph for this function:

GF_Node* gf_sg_find_node_by_name ( GF_SceneGraph *  sg,
char *  name 
)
u32 gf_sg_get_next_available_node_id ( GF_SceneGraph *  sg)

+ Here is the caller graph for this function:

u32 gf_sg_get_max_node_id ( GF_SceneGraph *  sg)

+ Here is the caller graph for this function:

void gf_node_setup ( GF_Node p,
u32  tag 
)
GF_Node* gf_sg_new_base_node ( )

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

u32 gf_node_get_tag ( GF_Node p)
u32 gf_node_get_id ( GF_Node p)

+ Here is the caller graph for this function:

const char* gf_node_get_name ( GF_Node p)

+ Here is the caller graph for this function:

const char* gf_node_get_name_and_id ( GF_Node p,
u32 id 
)

+ Here is the caller graph for this function:

void* gf_node_get_private ( GF_Node p)
void gf_node_set_private ( GF_Node p,
void *  pr 
)
GF_Err gf_node_set_callback_function ( GF_Node p,
void(*)(GF_Node *node, void *render_stack, Bool is_destroy)  TraverseNode 
)
void gf_sg_parent_setup ( GF_Node node)

+ Here is the caller graph for this function:

void gf_node_unregister_children ( GF_Node container,
GF_ChildNodeItem child 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

GF_Err gf_node_list_insert_child ( GF_ChildNodeItem **  list,
GF_Node n,
u32  pos 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

GF_Node* gf_node_list_get_child ( GF_ChildNodeItem list,
s32  pos 
)

+ Here is the caller graph for this function:

s32 gf_node_list_find_child ( GF_ChildNodeItem list,
GF_Node n 
)

+ Here is the caller graph for this function:

GF_Err gf_node_list_add_child ( GF_ChildNodeItem **  list,
GF_Node n 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

GF_Err gf_node_list_add_child_last ( GF_ChildNodeItem **  list,
GF_Node n,
GF_ChildNodeItem **  last_child 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

Bool gf_node_list_del_child ( GF_ChildNodeItem **  list,
GF_Node n 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

GF_Node* gf_node_list_del_child_idx ( GF_ChildNodeItem **  list,
u32  pos 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

u32 gf_node_list_get_count ( GF_ChildNodeItem list)

+ Here is the caller graph for this function:

void gf_sg_parent_reset ( GF_Node node)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void gf_node_free ( GF_Node node)

+ Here is the call graph for this function:

u32 gf_node_get_parent_count ( GF_Node node)

+ Here is the caller graph for this function:

GF_Node* gf_node_get_parent ( GF_Node node,
u32  idx 
)

+ Here is the caller graph for this function:

static void dirty_children ( GF_Node node)
static

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static void dirty_parents ( GF_Node node)
static

+ Here is the caller graph for this function:

void gf_node_dirty_parent_graph ( GF_Node node)

+ Here is the caller graph for this function:

void gf_node_dirty_set ( GF_Node node,
u32  flags,
Bool  and_dirty_parents 
)

+ Here is the call graph for this function:

void gf_node_dirty_parents ( GF_Node node)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void gf_node_dirty_clear ( GF_Node node,
u32  flag_to_remove 
)
u32 gf_node_dirty_get ( GF_Node node)
void gf_node_dirty_reset ( GF_Node node,
Bool  reset_children 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void gf_node_init ( GF_Node node)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void gf_node_changed_internal ( GF_Node node,
GF_FieldInfo field,
Bool  notify_scripts 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void gf_node_changed ( GF_Node node,
GF_FieldInfo field 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void gf_node_del ( GF_Node node)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

u32 gf_node_get_field_count ( GF_Node node)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

const char* gf_node_get_class_name ( GF_Node node)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

u32 gf_sg_node_get_tag_by_class_name ( const char *  name,
u32  ns 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

GF_Node* gf_node_new ( GF_SceneGraph *  inScene,
u32  tag 
)

+ Here is the call graph for this function:

GF_Err gf_node_get_field ( GF_Node node,
u32  FieldIndex,
GF_FieldInfo info 
)

+ Here is the call graph for this function:

u32 gf_node_get_num_instances ( GF_Node node)

+ Here is the caller graph for this function:

static GF_Err gf_node_get_field_by_name_enum ( GF_Node node,
char *  name,
GF_FieldInfo field 
)
static

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

GF_Err gf_node_get_field_by_name ( GF_Node node,
char *  name,
GF_FieldInfo field 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

const char* gf_node_get_log_name ( GF_Node anim)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static GF_Err gf_node_deactivate_ex ( GF_Node node)
static

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

GF_Err gf_node_deactivate ( GF_Node node)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static u32 gf_node_activate_ex ( GF_Node node)
static

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

GF_Err gf_node_activate ( GF_Node node)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

GF_Node* gf_node_clone ( GF_SceneGraph *  inScene,
GF_Node orig,
GF_Node cloned_parent,
char *  id,
Bool  deep 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

u32 gf_xml_get_namespace_id ( char *  name)

+ Here is the caller graph for this function:

GF_Err gf_sg_add_namespace ( GF_SceneGraph *  sg,
char *  name,
char *  qname 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

GF_Err gf_sg_remove_namespace ( GF_SceneGraph *  sg,
char *  ns_name,
char *  q_name 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

u32 gf_sg_get_namespace_code ( GF_SceneGraph *  sg,
char *  qname 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

u32 gf_sg_get_namespace_code_from_name ( GF_SceneGraph *  sg,
char *  name 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

const char* gf_sg_get_namespace_qname ( GF_SceneGraph *  sg,
u32  xmlns_id 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

const char* gf_sg_get_namespace ( GF_SceneGraph *  sg,
u32  xmlns_id 
)

+ Here is the call graph for this function:

char* gf_node_dump_attribute ( GF_Node n,
GF_FieldInfo info 
)

+ Here is the call graph for this function:

GF_Err gf_node_replace_child ( GF_Node node,
GF_ChildNodeItem **  container,
s32  pos,
GF_Node newNode 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

Bool gf_node_parent_of ( GF_Node node,
GF_Node target 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

Variable Documentation

char log_node_name[2+16+1]
static