libgpac
Documentation of the core library of GPAC
loader_bt.c File Reference
#include <gpac/scene_manager.h>
#include <gpac/utf.h>
#include <gpac/constants.h>
#include <gpac/network.h>
#include <gpac/internal/bifs_dev.h>
#include <gpac/internal/scenegraph_dev.h>
#include <gpac/nodes_x3d.h>
#include <gpac/color.h>
#include <gpac/mpeg4_odf.h>
#include <zlib.h>
+ Include dependency graph for loader_bt.c:

Data Structures

struct  BTDefSymbol
 
struct  GF_BTParser
 

Macros

#define BT_LINE_SIZE   4000
 
#define BT_STR_CHECK_ALLOC
 

Functions

void gf_sm_update_bitwrapper_buffer (GF_Node *node, const char *fileName)
 
void load_bt_done (GF_SceneLoader *load)
 
GF_Err gf_bt_parse_bifs_command (GF_BTParser *parser, char *name, GF_List *cmdList)
 
GF_Route * gf_bt_parse_route (GF_BTParser *parser, Bool skip_def, Bool is_insert, GF_Command *com)
 
void gf_bt_resolve_routes (GF_BTParser *parser, Bool clean)
 
GF_Nodegf_bt_peek_node (GF_BTParser *parser, char *defID)
 
static GF_Err gf_bt_report (GF_BTParser *parser, GF_Err e, char *format,...)
 
void gf_bt_check_line (GF_BTParser *parser)
 
void gf_bt_force_line (GF_BTParser *parser)
 
Bool gf_bt_check_code (GF_BTParser *parser, char code)
 
char * gf_bt_get_next (GF_BTParser *parser, Bool point_break)
 
char * gf_bt_get_string (GF_BTParser *parser, u8 string_delim)
 
Bool gf_bt_check_externproto_field (GF_BTParser *parser, char *str)
 
static Bool check_keyword (GF_BTParser *parser, char *str, s32 *val)
 
GF_Err gf_bt_parse_float (GF_BTParser *parser, const char *name, Fixed *val)
 
GF_Err gf_bt_parse_double (GF_BTParser *parser, const char *name, SFDouble *val)
 
GF_Err gf_bt_parse_int (GF_BTParser *parser, const char *name, SFInt32 *val)
 
GF_Err gf_bt_parse_bool (GF_BTParser *parser, const char *name, SFBool *val)
 
GF_Err gf_bt_parse_color (GF_BTParser *parser, const char *name, SFColor *col)
 
GF_Err gf_bt_parse_colorRGBA (GF_BTParser *parser, const char *name, SFColorRGBA *col)
 
static void gf_bt_offset_time (GF_BTParser *parser, Double *time)
 
static void gf_bt_check_time_offset (GF_BTParser *parser, GF_Node *n, GF_FieldInfo *info)
 
static void gf_bt_update_timenode (GF_BTParser *parser, GF_Node *node)
 
void gf_bt_sffield (GF_BTParser *parser, GF_FieldInfo *info, GF_Node *n)
 
void gf_bt_mffield (GF_BTParser *parser, GF_FieldInfo *info, GF_Node *n)
 
Bool gf_bt_check_ndt (GF_BTParser *parser, GF_FieldInfo *info, GF_Node *node, GF_Node *parent)
 
u32 gf_bt_get_next_node_id (GF_BTParser *parser)
 
u32 gf_bt_get_next_route_id (GF_BTParser *parser)
 
u32 gf_bt_get_next_proto_id (GF_BTParser *parser)
 
u32 gf_bt_get_def_id (GF_BTParser *parser, char *defName)
 
Bool gf_bt_set_field_is (GF_BTParser *parser, GF_FieldInfo *info, GF_Node *n)
 
void gf_bt_check_unresolved_nodes (GF_BTParser *parser)
 
Bool gf_bt_has_been_def (GF_BTParser *parser, char *node_name)
 
u32 gf_bt_get_node_tag (GF_BTParser *parser, char *node_name)
 
GF_Nodegf_bt_sf_node (GF_BTParser *parser, char *node_name, GF_Node *parent, char *szDEFName)
 
u32 gf_bt_get_route (GF_BTParser *parser, char *name)
 
Bool gf_bt_route_id_used (GF_BTParser *parser, u32 ID)
 
static u32 get_evt_type (char *eventName)
 
GF_Err gf_bt_parse_proto (GF_BTParser *parser, char *proto_code, GF_List *proto_list)
 
static void bd_set_com_node (GF_Command *com, GF_Node *node)
 
GF_Descriptorgf_bt_parse_descriptor (GF_BTParser *parser, char *name)
 
GF_IPMPX_Data * gf_bt_parse_ipmpx (GF_BTParser *parser, char *name)
 
static void gf_bt_add_desc (GF_BTParser *parser, GF_Descriptor *par, GF_Descriptor *child, char *fieldName)
 
void gf_bt_parse_od_command (GF_BTParser *parser, char *name)
 
GF_Err gf_bt_loader_run_intern (GF_BTParser *parser, GF_Command *init_com, Bool initial_run)
 
static GF_Err gf_sm_load_bt_initialize (GF_SceneLoader *load, const char *str, Bool input_only)
 
GF_Err load_bt_run (GF_SceneLoader *load)
 
GF_Err load_bt_parse_string (GF_SceneLoader *load, const char *str)
 
GF_Err load_bt_suspend (GF_SceneLoader *load, Bool suspend)
 
GF_Err gf_sm_load_init_bt (GF_SceneLoader *load)
 
GF_EXPORT GF_List * gf_sm_load_bt_from_string (GF_SceneGraph *in_scene, char *node_str, Bool force_wrl)
 

Data Structure Documentation

◆ BTDefSymbol

struct BTDefSymbol
Data Fields
char * name
char * value

◆ GF_BTParser

struct GF_BTParser
+ Collaboration diagram for GF_BTParser:
Data Fields
GF_SceneLoader * load
Bool initialized
gzFile gz_in
u32 file_size
u32 file_pos
GF_List * top_nodes
GF_Err last_error
u32 line
Bool done
Bool in_com
u32 is_wrl
u32 unicode_type
GF_List * def_symbols
GF_List * unresolved_routes
GF_List * inserted_routes
GF_List * peeked_nodes
GF_List * undef_nodes
GF_List * def_nodes
char * line_buffer
char cur_buffer[500]
s32 line_size
s32 line_pos
s32 line_start_pos
u32 block_comment
GF_Proto * parsing_proto
Bool is_extern_proto_field
u32 stream_id
u32 au_time
Bool au_is_rap
GF_StreamContext * bifs_es
GF_AUContext * bifs_au
u32 base_bifs_id
GF_Command * cur_com
GF_StreamContext * od_es
GF_AUContext * od_au
u32 base_od_id
GF_List * scripts
u32 def_w
u32 def_h
unsigned short line_cache[BT_LINE_SIZE]

Macro Definition Documentation

◆ BT_LINE_SIZE

#define BT_LINE_SIZE   4000

◆ BT_STR_CHECK_ALLOC

#define BT_STR_CHECK_ALLOC
Value:
if (i==size) { \
res = (char*)gf_realloc(res, sizeof(char) * (size+500+1)); \
size += 500; \
} \
void * gf_realloc(void *ptr, size_t size)
Definition: alloc.c:158

Function Documentation

◆ gf_sm_update_bitwrapper_buffer()

void gf_sm_update_bitwrapper_buffer ( GF_Node node,
const char *  fileName 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ load_bt_done()

void load_bt_done ( GF_SceneLoader load)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_bt_parse_bifs_command()

GF_Err gf_bt_parse_bifs_command ( GF_BTParser parser,
char *  name,
GF_List *  cmdList 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_bt_parse_route()

GF_Route * gf_bt_parse_route ( GF_BTParser parser,
Bool  skip_def,
Bool  is_insert,
GF_Command com 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_bt_resolve_routes()

void gf_bt_resolve_routes ( GF_BTParser parser,
Bool  clean 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_bt_peek_node()

GF_Node * gf_bt_peek_node ( GF_BTParser parser,
char *  defID 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_bt_report()

static GF_Err gf_bt_report ( GF_BTParser parser,
GF_Err  e,
char *  format,
  ... 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_bt_check_line()

void gf_bt_check_line ( GF_BTParser parser)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_bt_force_line()

void gf_bt_force_line ( GF_BTParser parser)
+ Here is the caller graph for this function:

◆ gf_bt_check_code()

Bool gf_bt_check_code ( GF_BTParser parser,
char  code 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_bt_get_next()

char* gf_bt_get_next ( GF_BTParser parser,
Bool  point_break 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_bt_get_string()

char* gf_bt_get_string ( GF_BTParser parser,
u8  string_delim 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_bt_check_externproto_field()

Bool gf_bt_check_externproto_field ( GF_BTParser parser,
char *  str 
)
+ Here is the caller graph for this function:

◆ check_keyword()

static Bool check_keyword ( GF_BTParser parser,
char *  str,
s32 val 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_bt_parse_float()

GF_Err gf_bt_parse_float ( GF_BTParser parser,
const char *  name,
Fixed val 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_bt_parse_double()

GF_Err gf_bt_parse_double ( GF_BTParser parser,
const char *  name,
SFDouble val 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_bt_parse_int()

GF_Err gf_bt_parse_int ( GF_BTParser parser,
const char *  name,
SFInt32 val 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_bt_parse_bool()

GF_Err gf_bt_parse_bool ( GF_BTParser parser,
const char *  name,
SFBool val 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_bt_parse_color()

GF_Err gf_bt_parse_color ( GF_BTParser parser,
const char *  name,
SFColor col 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_bt_parse_colorRGBA()

GF_Err gf_bt_parse_colorRGBA ( GF_BTParser parser,
const char *  name,
SFColorRGBA col 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_bt_offset_time()

static void gf_bt_offset_time ( GF_BTParser parser,
Double time 
)
static
+ Here is the caller graph for this function:

◆ gf_bt_check_time_offset()

static void gf_bt_check_time_offset ( GF_BTParser parser,
GF_Node n,
GF_FieldInfo info 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_bt_update_timenode()

static void gf_bt_update_timenode ( GF_BTParser parser,
GF_Node node 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_bt_sffield()

void gf_bt_sffield ( GF_BTParser parser,
GF_FieldInfo info,
GF_Node n 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_bt_mffield()

void gf_bt_mffield ( GF_BTParser parser,
GF_FieldInfo info,
GF_Node n 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_bt_check_ndt()

Bool gf_bt_check_ndt ( GF_BTParser parser,
GF_FieldInfo info,
GF_Node node,
GF_Node parent 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_bt_get_next_node_id()

u32 gf_bt_get_next_node_id ( GF_BTParser parser)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_bt_get_next_route_id()

u32 gf_bt_get_next_route_id ( GF_BTParser parser)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_bt_get_next_proto_id()

u32 gf_bt_get_next_proto_id ( GF_BTParser parser)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_bt_get_def_id()

u32 gf_bt_get_def_id ( GF_BTParser parser,
char *  defName 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_bt_set_field_is()

Bool gf_bt_set_field_is ( GF_BTParser parser,
GF_FieldInfo info,
GF_Node n 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_bt_check_unresolved_nodes()

void gf_bt_check_unresolved_nodes ( GF_BTParser parser)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_bt_has_been_def()

Bool gf_bt_has_been_def ( GF_BTParser parser,
char *  node_name 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_bt_get_node_tag()

u32 gf_bt_get_node_tag ( GF_BTParser parser,
char *  node_name 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_bt_sf_node()

GF_Node* gf_bt_sf_node ( GF_BTParser parser,
char *  node_name,
GF_Node parent,
char *  szDEFName 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_bt_get_route()

u32 gf_bt_get_route ( GF_BTParser parser,
char *  name 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_bt_route_id_used()

Bool gf_bt_route_id_used ( GF_BTParser parser,
u32  ID 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ get_evt_type()

static u32 get_evt_type ( char *  eventName)
static
+ Here is the caller graph for this function:

◆ gf_bt_parse_proto()

GF_Err gf_bt_parse_proto ( GF_BTParser parser,
char *  proto_code,
GF_List *  proto_list 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ bd_set_com_node()

static void bd_set_com_node ( GF_Command com,
GF_Node node 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_bt_parse_descriptor()

GF_Descriptor * gf_bt_parse_descriptor ( GF_BTParser parser,
char *  name 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_bt_parse_ipmpx()

GF_IPMPX_Data* gf_bt_parse_ipmpx ( GF_BTParser parser,
char *  name 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_bt_add_desc()

static void gf_bt_add_desc ( GF_BTParser parser,
GF_Descriptor par,
GF_Descriptor child,
char *  fieldName 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_bt_parse_od_command()

void gf_bt_parse_od_command ( GF_BTParser parser,
char *  name 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_bt_loader_run_intern()

GF_Err gf_bt_loader_run_intern ( GF_BTParser parser,
GF_Command init_com,
Bool  initial_run 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_sm_load_bt_initialize()

static GF_Err gf_sm_load_bt_initialize ( GF_SceneLoader load,
const char *  str,
Bool  input_only 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ load_bt_run()

GF_Err load_bt_run ( GF_SceneLoader load)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ load_bt_parse_string()

GF_Err load_bt_parse_string ( GF_SceneLoader load,
const char *  str 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ load_bt_suspend()

GF_Err load_bt_suspend ( GF_SceneLoader load,
Bool  suspend 
)
+ Here is the caller graph for this function:

◆ gf_sm_load_init_bt()

GF_Err gf_sm_load_init_bt ( GF_SceneLoader load)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_sm_load_bt_from_string()

GF_EXPORT GF_List* gf_sm_load_bt_from_string ( GF_SceneGraph *  in_scene,
char *  node_str,
Bool  force_wrl 
)
+ Here is the call graph for this function: